From cf6b67bf5a0480b9cc3383a8fbd103c868e7eafb Mon Sep 17 00:00:00 2001 From: haha Date: Sat, 15 Mar 2025 00:12:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E5=85=A8=E9=9A=90=E6=82=A3=E5=A4=A7?= =?UTF-8?q?=E5=B1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../public/css/largeScreenStyle.css | 1 + yanzhu-bigscreen/src/views/safetyCheck.vue | 342 +++++++++++++++++- .../trouble/problemmodify/detailDrawer.vue | 4 +- .../src/views/trouble/problemmodify/index.vue | 4 +- 4 files changed, 338 insertions(+), 13 deletions(-) diff --git a/yanzhu-bigscreen/public/css/largeScreenStyle.css b/yanzhu-bigscreen/public/css/largeScreenStyle.css index aedda8a4..780881ef 100644 --- a/yanzhu-bigscreen/public/css/largeScreenStyle.css +++ b/yanzhu-bigscreen/public/css/largeScreenStyle.css @@ -60,6 +60,7 @@ body { height: 1080px; } .img-openwin { + cursor: pointer; width: 26px; height: 26px; } diff --git a/yanzhu-bigscreen/src/views/safetyCheck.vue b/yanzhu-bigscreen/src/views/safetyCheck.vue index 187685f0..002004cd 100644 --- a/yanzhu-bigscreen/src/views/safetyCheck.vue +++ b/yanzhu-bigscreen/src/views/safetyCheck.vue @@ -21,6 +21,7 @@ +
{{ item1Data.total }}
@@ -28,26 +29,237 @@
+ :render="o => renderDataItem(1)"> +
+
+
+ {{ it.name }} + + {{ it.value }} + {{ it.percent }}% +
+
+
+
+
最新提交
+
+
+ +
+
+ 提交人: + {{ it.createUser }} +
+
+ 整改人: + {{ it.lordSentUser }} +
+
+ 复检人: + {{ it.recheckSendUser }} +
+
+ 隐患描述: + {{ it.workParts }} +
+
+ 整改要求: + {{ it.changeInfo }} +
+
+ 状态: + {{ getStatus(it.checkState) }} +
+
+
- {{ item1Data.infos }}
+ - + + +
+
+
{{ item2Data.total }}
+ 问题总数 +
+
+ +
+
+
+ {{ it.name }} + + {{ it.value }} + {{ it.percent }}% +
+
+ +
+
+
最新提交
+
+
+ +
+
+ 提交人: + {{ it.createUser }} +
+
+ 整改人: + {{ it.lordSentUser }} +
+
+ 复检人: + {{ it.recheckSendUser }} +
+
+ 隐患描述: + {{ it.workParts }} +
+
+ 整改要求: + {{ it.changeInfo }} +
+
+ 状态: + {{ getStatus(it.checkState) }} +
+
+
+
+
+
- + + +
+
+
{{ item3Data.total }}
+ 问题总数 +
+
+ +
+
+
+ {{ it.name }} + + {{ it.value }} + {{ it.percent }}% +
+
+ +
+
+
最新提交
+
+
+ +
+
+ 提交人: + {{ it.createUser }} +
+
+ 整改人: + {{ it.lordSentUser }} +
+
+ 复检人: + {{ it.recheckSendUser }} +
+
+ 隐患描述: + {{ it.workParts }} +
+
+ 整改要求: + {{ it.changeInfo }} +
+
+ 状态: + {{ getStatus(it.checkState) }} +
+
+
+
+
+
- + + +
+
+
{{ item4Data.total }}
+ 问题总数 +
+
+ +
+
+
+ {{ it.name }} + + {{ it.value }} + {{ it.percent }}% +
+
+ +
+
+
最新提交
+
+
+ +
+
+ 提交人: + {{ it.createUser }} +
+
+ 整改人: + {{ it.lordSentUser }} +
+
+ 复检人: + {{ it.recheckSendUser }} +
+
+ 隐患描述: + {{ it.workParts }} +
+
+ 整改要求: + {{ it.changeInfo }} +
+
+ 状态: + {{ getStatus(it.checkState) }} +
+
+
+
+
+
@@ -85,21 +297,25 @@ export default { total: 0, datas: [], infos: [], + items: [], }, item2Data: { total: 0, datas: [], infos: [], + items: [], }, item3Data: { total: 0, datas: [], infos: [], + items: [], }, item4Data: { total: 0, datas: [], infos: [], + items: [], } } }, @@ -161,9 +377,13 @@ export default { this.showChart1();//安全隐患排查 this.showChart2();//隐患类别统计 this.makeItemData(this.item1Data, res[2].data) + this.item1Data.items = res[3].rows; this.makeItemData(this.item2Data, res[4].data) + this.item2Data.items = res[5].rows; this.makeItemData(this.item3Data, res[6].data) + this.item3Data.items = res[7].rows; this.makeItemData(this.item4Data, res[8].data) + this.item4Data.items = res[9].rows; this.itemChartKey1++; }); }, @@ -173,6 +393,13 @@ export default { showChart2() { this.chartKey2++; }, + getStatus(s) { + let checkStates = [{ value: "0", label: '待整改' }, { value: "1", label: '待复检' }, + { value: "3", label: '复检驳回' }, + { value: "4", label: '复检通过' }]; + let objs = checkStates.filter(it => it.value == s); + return objs.length > 0 ? objs[0].label : ''; + }, makeItemData(item, res) { let labels = ['问题总数', '待整改', '待复检', '复检驳回', '整改完成', '超时整改']; item.total = res[0].id; @@ -189,11 +416,13 @@ export default { item.infos.push({ name: labels[i], value: res[i].id, + type: res[i].projectName, percent: total == 0 ? 0 : (res[i].id / total * 100.0).toFixed(1) }); } }, - renderDataItem1() { + renderDataItem(n) { + let objs = this._data['item' + n + 'Data']; let option = { color: ["#71BCC4", "#EEBE47", "#5EA85D", "#5B84EB", "#E76168"], series: [ @@ -216,11 +445,10 @@ export default { labelLine: { show: false }, - data: this.item1Data.datas + data: objs.datas } ] }; - console.log("--->", this.item1Data.datas) return option; }, renderChart2(opt) { @@ -405,7 +633,8 @@ export default { height: 230px; width: 230px; display: inline-block; - position: relative; + position: absolute; + left: -30px; .total-info { position: absolute; @@ -430,6 +659,101 @@ export default { } } + .div-item-info { + display: inline-block; + width: calc(100% - 180px); + right: -0px; + top: 20px; + position: absolute; + + .item-info { + line-height: 30px; + + .sp-lend { + display: inline-block; + margin-left: 8px; + width: 10px; + height: 20px; + position: relative; + top: 4px; + + &.is-b { + background-color: #71BCC4; + } + + &.is-c { + background-color: #EEBE47; + } + + &.is-d { + background-color: #5EA85D; + } + + &.is-e { + background-color: #5B84EB; + } + } + + .sp-name { + display: inline-block; + text-align: right; + width: 70px; + } + + .sp-value { + margin-left: 8px; + font-size: 24px; + display: inline-block; + text-align: center; + min-width: 70px; + } + + .sp-percent { + margin-left: 8px; + color: #5B84EB; + } + } + } + } + + .div-item-data { + height: calc(100% - 230px); + + .div-item-list { + height: calc(100% - 20px); + overflow-y: auto; + + .list-item { + display: flex; + margin-top: 10px; + border-top: solid 1px #ccc; + padding-top: 10px; + + &:first-child { + margin-top: 0px; + border-top: none; + } + + .img-sm { + width: calc(100% - 200px); + height: 120px; + } + + .list-item-info { + width: 200px; + font-size: 12px; + padding-left: 10px; + + .item-row { + line-height: 24px; + + .sp-label { + color: #8BFFD2; + } + } + } + } + } } @media (min-width: 1921px) and (max-width: 2560px) { diff --git a/yanzhu-ui-vue3/src/views/trouble/problemmodify/detailDrawer.vue b/yanzhu-ui-vue3/src/views/trouble/problemmodify/detailDrawer.vue index 6cebd9dd..7831a5f1 100644 --- a/yanzhu-ui-vue3/src/views/trouble/problemmodify/detailDrawer.vue +++ b/yanzhu-ui-vue3/src/views/trouble/problemmodify/detailDrawer.vue @@ -253,8 +253,8 @@ let data = reactive({ ] }, checkStates: [{ value: "0", label: '待整改' }, { value: "1", label: '待复检' }, - { value: "2", label: '复检驳回' }, - { value: "3", label: '复检通过' }] + { value: "3", label: '复检驳回' }, + { value: "4", label: '复检通过' }] }); const { step2Form, step2Rules, step3Form, step3Rules } = toRefs(data); function validateStep2Images(rule, value, callback) { diff --git a/yanzhu-ui-vue3/src/views/trouble/problemmodify/index.vue b/yanzhu-ui-vue3/src/views/trouble/problemmodify/index.vue index 44cc0918..a65f70db 100644 --- a/yanzhu-ui-vue3/src/views/trouble/problemmodify/index.vue +++ b/yanzhu-ui-vue3/src/views/trouble/problemmodify/index.vue @@ -130,8 +130,8 @@ const data = reactive({ activeName: 'a', tabInfo: {}, checkStates: [{ value: "0", label: '待整改' }, { value: "1", label: '待复检' }, - { value: "2", label: '复检驳回' }, - { value: "3", label: '复检通过' }] + { value: "3", label: '复检驳回' }, + { value: "4", label: '复检通过' }] }); const { queryParams, form, rules } = toRefs(data);