From f1fbe8049ba01186f033037e6ae36d51915c7418 Mon Sep 17 00:00:00 2001 From: guonan <guonan201020@163.com> Date: 星期二, 20 五月 2025 15:09:59 +0800 Subject: [PATCH] 调用求解器 --- src/components/monifangzhen/schemeInfo.vue | 77 +++++++++++++++++++++++++------------- 1 files changed, 51 insertions(+), 26 deletions(-) diff --git a/src/components/monifangzhen/schemeInfo.vue b/src/components/monifangzhen/schemeInfo.vue index df5c387..100d392 100644 --- a/src/components/monifangzhen/schemeInfo.vue +++ b/src/components/monifangzhen/schemeInfo.vue @@ -1,13 +1,18 @@ <template> <div class="listCard"> - <div class="top"><span>鏂规璇︽儏</span> - </div> + <div class="top"><span>鏂规璇︽儏</span></div> <div class="details"> <div v-if="formattedData.length" class="input-group"> - <div v-for="(item, index) in formattedData" :key="index" class="input-item"> + <div + v-for="(item, index) in formattedData" + :key="index" + class="input-item" + > <label>{{ item.name }}</label> - <span :class="{ 'clickable': item.isClickable }" - @click="item.isClickable ? openGaugeDialog(item.gauges) : null"> + <span + :class="{ clickable: item.isClickable }" + @click="item.isClickable ? openGaugeDialog(item.gauges) : null" + > {{ item.value }} </span> </div> @@ -16,14 +21,22 @@ <p style="text-align: center">鏆傛棤鏂规淇℃伅</p> </div> </div> - <div> - - </div> + <div></div> </div> - <Message @close="close" class="mess" v-show="messageShow" :mesData="mesData" /> + <Message + @close="close" + class="mess" + v-show="messageShow" + :mesData="mesData" + /> <!-- 娣诲姞闆ㄩ噺璁″脊绐� --> <div class="dialoog"> - <el-dialog v-model="dialogVisible" title="闆ㄩ噺璁¤鎯�" width="50%" :before-close="handleClose"> + <el-dialog + v-model="dialogVisible" + title="闆ㄩ噺璁¤鎯�" + width="50%" + :before-close="handleClose" + > <div class="table-container"> <el-table :data="gaugesData" border stripe height="100%"> <el-table-column prop="name" label="鍚嶇О"></el-table-column> @@ -39,12 +52,17 @@ </template> --> </el-dialog> </div> - </template> <script setup> import { defineProps, defineEmits, inject, ref, watch } from "vue"; -import { ElDialog, ElTable, ElTableColumn, ElButton ,ElMessage} from "element-plus"; +import { + ElDialog, + ElTable, + ElTableColumn, + ElButton, + ElMessage, +} from "element-plus"; import dayjs from "dayjs"; // 鍏叡渚濊禆 const props = defineProps({ selectedScheme: { type: Object, default: null } }); @@ -54,13 +72,12 @@ // 鐘舵�佺鐞� const formattedData = ref([]); - // 鏄犲皠琛� const areaTypeMap = { 0: "鑷畾涔夊尯鍩熶豢鐪�", 1: "琛屾斂鍖哄垝浠跨湡", 2: "閲嶇偣鍖哄煙浠跨湡", - 3: "閲嶇偣娌熶豢鐪�" + 3: "閲嶇偣娌熶豢鐪�", }; const statusMap = { @@ -68,17 +85,25 @@ 1: "棰勫鐞�", 2: "鍒嗘瀽涓�", 10: "瀹屾垚", - 20: "鍑洪敊" + 20: "鍑洪敊", }; const typeMap = { 1: "棰勬祴妯℃嫙", 2: "瀹炴椂妯℃嫙", - 3: "鍘嗗彶妯℃嫙" + 3: "鍘嗗彶妯℃嫙", }; // 璺宠繃瀛楁鍒楄〃 -const skipKeys = ["geom", "id", "serviceName", "updateTime", "updateUser", "createUser", "bak"]; +const skipKeys = [ + "geom", + "id", + "serviceName", + "updateTime", + "updateUser", + "createUser", + "bak", +]; // 澶勭悊 data 瀛楁瑙f瀽 function parseDataField(dataStr) { @@ -92,24 +117,24 @@ intensity: "闄嶉洦寮哄害锛坢m/灏忔椂锛夛細", prediction: "闄嶉洦鍦烘锛�", model: "闄嶉洦妯″紡锛�", - history: "鍘嗗彶闄嶉洦锛�" + history: "鍘嗗彶闄嶉洦锛�", }; const result = Object.entries(parsed) .filter(([k]) => fields[k]) .map(([k, v]) => ({ name: fields[k], - value: v || "鏃�" + value: v || "鏃�", })); // 澶勭悊闆ㄩ噺璁℃暟鎹� - if (parsed.gauges && Array.isArray(parsed.gauges)) { - const gaugeNames = parsed.gauges.map(g => g.name).join(", ") || "鏃�"; + if (parsed.type == 2 && parsed.gauges && Array.isArray(parsed.gauges)) { + const gaugeNames = parsed.gauges.map((g) => g.name).join(", ") || "鏃�"; result.push({ name: "闆ㄩ噺璁″垪琛細", - value: '鏌ョ湅闆ㄩ噺璁″垪琛�', + value: "鏌ョ湅闆ㄩ噺璁″垪琛�", isClickable: true, - gauges: parsed.gauges + gauges: parsed.gauges, }); } @@ -136,7 +161,7 @@ const entries = Object.entries(newScheme); const areaType = newScheme.areaType; - console.log(newScheme, 'news'); + // console.log(newScheme, "news"); const result = entries.reduce((acc, [key, value]) => { if (skipKeys.includes(key)) return acc; @@ -185,11 +210,11 @@ // 鎵撳紑闆ㄩ噺璁″脊绐� function openGaugeDialog(gauges) { if (Array.isArray(gauges) && gauges.length > 0) { - gaugesData.value = gauges.map(g => ({ + gaugesData.value = gauges.map((g) => ({ name: g.name || "鏈煡", x: g.x != null ? g.x.toFixed(2) : "-", y: g.y != null ? g.y.toFixed(2) : "-", - r: g.r || "-" + r: g.r || "-", })); dialogVisible.value = true; } else { -- Gitblit v1.9.3