From e8a7beb5455d0c9f50f93004b600dd2781ad6bfd Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期一, 30 六月 2025 09:36:56 +0800 Subject: [PATCH] feat(空调控制): 实现空调控制功能并优化 SVG 数据加载- 新增 AirCondConstants 类,定义空调控制常量 - 修改 AirConditionerServiceImpl,使用常量替代硬编码值 - 更新 MQTT 消息发送逻辑,使用常量定义主题 - 优化 SVG 数据加载和处理逻辑,改进标签值更新方式 - 调整域名地址配置,支持生产环境 API --- zhitan-vue/src/views/svg/components/configureView.vue | 46 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 34 insertions(+), 12 deletions(-) diff --git a/zhitan-vue/src/views/svg/components/configureView.vue b/zhitan-vue/src/views/svg/components/configureView.vue index 46eed3f..7ea5f49 100644 --- a/zhitan-vue/src/views/svg/components/configureView.vue +++ b/zhitan-vue/src/views/svg/components/configureView.vue @@ -45,10 +45,12 @@ } function refresh() { + //console.log("refresh", tagCodes.value) if (tagCodes.value.length === 0) { return } getLiveData(tagCodes.value).then((response) => { + // console.log("tagCodes:::", tagCodes.value) if (response.code === 200) { if (response.data) { response.data.forEach((tagValue) => { @@ -58,20 +60,39 @@ } else { value = "0" } - + // console.log("tagValue::",tagValue) let el = document.getElementById(tagValue.tagCode) if (el) { - el.textContent = value + // 鍒ゆ柇tagValue.tagCode鏄笉鏄互old鎴杝even鎴杘ut寮�澶� + if (tagValue.tagCode.startsWith("old") || tagValue.tagCode.startsWith("seven") || tagValue.tagCode.startsWith("out")) { + // 鑾峰彇 el涓嬬殑g鏍囩涓嬬殑text鏍囩锛岃祴鍊间负value + let svgTextElement = el.querySelector("g").querySelector("text"); + console.log("svgTextElement::",svgTextElement) + svgTextElement.textContent = value; + }else { + if (parseFloat(value) > 0) { + el.setAttribute("fill", "rgb(0,234,136)") + }else { + el.setAttribute("fill", "rgb(255,82,96)") + } + } + + // console.log("el::",el) + // 灏唀l鐨刦ill灞炴�ц缃负23 + + + + } }) //杩欏潡鏄崟鐙姞鐨� 鐢ㄦ潵澶勭悊 娌℃湁鎸囨爣鎴栬�呮寚鏍囨病鏈夌粨鏋滅殑 閮借缃�0 - let allText = document.getElementsByTagName("text") - for (let i = 0; i < allText.length; i++) { - // console.log(i + "textContent=" + allText[i].textContent); - if (allText[i].textContent == null || allText[i].textContent == "") { - allText[i].textContent = "0" - } - } + // let allText = document.getElementsByTagName("g") + // for (let i = 0; i < allText.length; i++) { + // // console.log(i + "textContent=" + allText[i].textContent); + // if (allText[i].textContent == null || allText[i].textContent == "") { + // allText[i].textContent = "0" + // } + // } } } }) @@ -101,12 +122,13 @@ xhr.addEventListener("load", () => { const resXML = xhr.responseXML let svgDom = resXML.documentElement.cloneNode(true) - let values = svgDom.getElementsByTagName("text") + let values = svgDom.getElementsByTagName("g") for (let i = 0; i < values.length; i++) { - let tag = tags.value.filter((f) => f.param === values[i].textContent) + let tag_id = values[i].getAttribute("id"); + let tag = tags.value.filter((f) => f.param === values[i].id.split("_")[0]) if (tag && tag.length > 0) { let tagCode = tag[0].tag - values[i].textContent = "" + if (tagCode) { values[i].setAttribute("id", tagCode) tagCodes.value.push(tagCode) -- Gitblit v1.9.3