From 57817b07cb31a3dd499d37ba3645fffb85ed2fd0 Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期五, 08 十一月 2024 11:06:47 +0800
Subject: [PATCH] 分享页面

---
 src/components/chat/chatComponents/summaryCom/components/deviceLastValue/DeviceLastValueCom.vue |   45 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 36 insertions(+), 9 deletions(-)

diff --git a/src/components/chat/chatComponents/summaryCom/components/deviceLastValue/DeviceLastValueCom.vue b/src/components/chat/chatComponents/summaryCom/components/deviceLastValue/DeviceLastValueCom.vue
index 405c5a7..cde1af7 100644
--- a/src/components/chat/chatComponents/summaryCom/components/deviceLastValue/DeviceLastValueCom.vue
+++ b/src/components/chat/chatComponents/summaryCom/components/deviceLastValue/DeviceLastValueCom.vue
@@ -1,4 +1,5 @@
 <template>
+	<!-- 瀹炴椂鐩戞祴鍒楄〃 -->
 	<div ref="containerRef" class="w-full flex justify-center" v-resize="resizeHandler">
 		<div class="inline-block">
 			<div
@@ -8,6 +9,9 @@
 					backgroundColor: BORDER_COLOR,
 				}"
 			>
+				<div class="flex-center font-bold text-base bg-[#8db4e2]" :style="{ height: `${CELL_HEIGHT}px` }">
+					{{ data.title }}
+				</div>
 				<div
 					v-for="(rowChunk, index) in currentRowChunkList"
 					:key="index"
@@ -50,6 +54,7 @@
 							:title="firstRow.title"
 							:type="firstRow.id"
 							:values="rowChunk"
+							@itemClick="valueClick"
 						/>
 					</div>
 					<!-- 鍓╀綑琛� -->
@@ -61,6 +66,7 @@
 						:title="row.title"
 						:type="row.id"
 						:values="rowChunk"
+						@itemClick="valueClick"
 					/>
 				</div>
 			</div>
@@ -75,6 +81,7 @@
 				@current-change="handleCurrentChange"
 			/>
 		</div>
+		<RecordSetDialog v-model="chartDlgIsShow" :otype="chartDlgMapRow?.OTYPE" :oname="chartDlgMapRow?.ONAME" :indexName="indexName" />
 	</div>
 </template>
 
@@ -97,10 +104,20 @@
 	THIN_BORDER_WIDTH,
 } from './constants';
 import type { Monitor, MonitorValue } from './types';
+import RecordSetDialog from '../recordSet/RecordSetDialog.vue';
+import { isSharePage } from '/@/stores/chatRoom';
 
 const props = defineProps(chatComProps) as {
 	data: Monitor;
 };
+if (!props.data?.rows || props.data?.rows?.length === 0) {
+	// 涓虹┖鏃讹紝闅忎究鍔犱竴鍒楋紝闃叉鍑虹幇 height 閫愭笎鍙樼煭鐨勯棶棰�
+	props.data.rows.push({
+		id: 'aaaaa',
+		title: '',
+	});
+}
+
 const total = props.data?.values?.length ?? 0;
 const pageIndex = ref(null);
 const pageSize = ref(null);
@@ -162,12 +179,15 @@
 const restColWidth = ref(colHeaderCellContentWidth.value);
 const calcMaxRowsNum = (groupCount: number, height, extraHeight = 0) => {
 	return Math.floor(
-		(height - THICK_BORDER_WIDTH - extraHeight) /
+		(height - 2 * THICK_BORDER_WIDTH - CELL_HEIGHT - extraHeight) /
 			(CELL_HEIGHT * groupCount + 2 * THICK_BORDER_WIDTH + THIN_BORDER_WIDTH * (groupCount - 2))
 	);
 };
 let maxColsNum = ref<number>(null);
 const resizeEvent = ({ width, height }) => {
+	if (width === 0 || height === 0) {
+		return;
+	}
 	// 鎸夋渶澶у搴︾畻鏈�澶у垪鏁�
 	maxColsNum.value = Math.floor(
 		(width - THICK_BORDER_WIDTH + colHeaderCellContentWidth.value - rowHeaderCellContentWidth.value) /
@@ -253,6 +273,20 @@
 	return chunkResult;
 });
 
+//#region ====================== 鐐瑰嚮鐪嬫洸绾� ======================
+
+const chartDlgIsShow = ref(false);
+const chartDlgMapRow = ref(null);
+/** @description 鎸囨爣鍚嶇О */
+const indexName = ref(null);
+const valueClick = (item, type) => {
+	if (isSharePage.value) return;
+	chartDlgMapRow.value = item;
+	chartDlgIsShow.value = true;
+	indexName.value = type;
+};
+//#endregion
+
 // 璁$畻鏈�澶у垪鏁�
 // (x-1)* cellWidth + rowHeaderCellContentWidth.value+thickBorderWidth*(x-1)+thickBorderWidth*2 <= width;
 
@@ -262,7 +296,7 @@
 // const groupCount = (TEST_DATA?.rows?.length ?? 0) + 1;
 // 璁$畻鏈�澶ц鏁�
 // y * (cellHeight * groupCount) +
-// 	(y - 1) * (2 * thickBorderWidth) +
+// 	(y - 1) * (2 * thickBorderWidth) +cellHeight+thickBorderWidth
 // 	thickBorderWidth +
 // 	thickBorderWidth * 2 +
 // 	y * (groupCount - 2) * thinBorderWidth <=
@@ -273,13 +307,6 @@
 // y<= (height-thickBorderWidth)/(cellHeight * groupCount + 2 * thickBorderWidth + thinBorderWidth(groupCount - 2) )
 
 onMounted(() => {
-	resizeEvent({
-		width: containerRef.value.clientWidth,
-		height: 0.7 * document.body.clientHeight,
-	});
-});
-
-onActivated(() => {
 	resizeEvent({
 		width: containerRef.value.clientWidth,
 		height: 0.7 * document.body.clientHeight,

--
Gitblit v1.9.3