From 4cbef9b2fbb2a50c312e4cebc38f56bd07af9cda Mon Sep 17 00:00:00 2001 From: guoyuepeng <770272267@qq.com> Date: Thu, 31 Oct 2024 16:08:29 +0800 Subject: [PATCH 1/6] =?UTF-8?q?1.=E6=B6=88=E9=98=B2=E7=82=B9=E4=BD=8D?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../firefighting/points/components/list.vue | 496 ++++++++++++++++-- 1 file changed, 450 insertions(+), 46 deletions(-) diff --git a/src/views/firefighting/points/components/list.vue b/src/views/firefighting/points/components/list.vue index decdf53..966cb81 100644 --- a/src/views/firefighting/points/components/list.vue +++ b/src/views/firefighting/points/components/list.vue @@ -29,7 +29,11 @@ - + @@ -67,16 +71,22 @@ - + + + + @@ -98,6 +124,7 @@
新增 批量删除 + 批量修改负责人
- -
-
-

消防点位信息

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
消防点位维护信息告知牌
+
+
+
+
消防点位
+
{{ qrInfo.FIRE_POINT_NAME }}
+
+
+
点位编号
+
{{ qrInfo.FIRE_POINT_CODE }}
+
+
+
+
+
检查码
+
+ +
+
查询码
+
+ +
+
+
- - - - - - - - - - - - - -
消防区域{{ qrInfo.FIRE_REGION_NAME }}消防点位{{ qrInfo.FIRE_POINT_NAME }}
负责部门{{ qrInfo.DEPARTMENT_NAME }}负责人{{ qrInfo.USERNAME }}
-
- +
+
+
+
消防点位
+
{{ qrInfo.FIRE_POINT_NAME }}
+
+
+
点位编号
+
{{ qrInfo.FIRE_POINT_CODE }}
+
+
+
+
+
检查码
+
+ +
+
+
+
查询码
+
+ +
+
+
+ + +
+
+

检查记录二维码

+
+
+ +
+
+ +
+ + + + + + + + + + + + +
@@ -148,9 +278,7 @@ import waves from '@/directive/waves' // waves directive import SelectTree from '@/components/SelectTree' export default { - components: { Pagination, SelectTree, vueQr }, - directives: { waves }, data() { return { @@ -158,7 +286,11 @@ export default { addBtnType: true, listLoading: true, dialogFormShow: false, - qrcodeStr: '', + dialogRecordFormShow: false, + qrcodeStr_jianchama: '', + qrcodeStr_chaxunma: '', + tabsActive: 'horizontal', + recordQrcodeStr: '', qrInfo: {}, add: false, del: false, @@ -173,6 +305,9 @@ export default { KEYWORDS: '', FIRE_POINT_NAME: '', FIRE_POINT_CODE: '', + selectForm: { + DEPARTMENT_ID: '' + }, // 树形菜单 filterText: '', varList: [], @@ -181,7 +316,28 @@ export default { value: 'id', children: 'nodes', label: 'name' - } + }, + editDataIds: [], + dialogEditUser: false, + dialogEditUserForm: { + USER_ID: '' + }, + dialogEditUserRules: { + USER_ID: [{ required: true, message: '请选择负责人', trigger: 'change' }] + }, + deptTreeData: [], + userList: [], + punctuationStatusList: [ + { + value: 0, + label: '是' + }, + { + value: 1, + label: '否' + } + ], + IS_PUNCTUATION: '' } }, watch: { @@ -193,36 +349,44 @@ export default { created() { this.getList() this.hasButton() + this.getTreeData() }, methods: { - handleShowQr(ROW) { + handleShowNotificationCard(ROW) { this.dialogFormShow = true this.qrInfo = ROW - this.qrcodeStr = this.config.weburlWaiwang + 'static/qrcode/views/bsbw/point_list.html?id=' + ROW.FIRE_POINT_ID + // 检查码 + this.qrcodeStr_chaxunma = JSON.stringify({ + MANAGER_TYPE: 'checkRecordManager', + USER_ID: ROW.USER_ID, + DEPARTMENT_ID: ROW.DEPARTMENT_ID, + FIRE_POINT_ID: ROW.FIRE_POINT_ID + }) + // 查询码 + this.qrcodeStr_jianchama = JSON.stringify({ + MANAGER_TYPE: 'fireListManager', + FIRE_POINT_ID: ROW.FIRE_POINT_ID + }) }, handleEdit(FIRE_POINT_ID) { this.$parent.FIRE_POINT_ID = FIRE_POINT_ID this.$parent.activeName = 'Edit' }, selectable(row, index) { - return row.DEVICE_COUNT == 0 + return true }, getRowKey(row) { return row.FIRE_POINT_ID }, - // 添加 handleAdd() { this.$parent.activeName = 'Edit' this.$parent.FIRE_POINT_ID = '' this.$parent.FIRE_POINT_CODE = '' this.$parent.FIRE_POINT_NAME = '' }, - // 搜索 getQuery() { - // this.$refs.multipleTable.clearSelection() this.getList() }, - // 获取列表 getList(pid) { this.listLoading = true this.varList = [] @@ -231,7 +395,9 @@ export default { '/firePoint/list?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page, { FIRE_POINT_NAME: this.FIRE_POINT_NAME, - FIRE_POINT_CODE: this.FIRE_POINT_CODE + FIRE_POINT_CODE: this.FIRE_POINT_CODE, + DEPARTMENT_ID: this.selectForm.DEPARTMENT_ID, + IS_PUNCTUATION: this.IS_PUNCTUATION } ).then((data) => { this.listLoading = false @@ -241,9 +407,14 @@ export default { }).catch((e) => { this.listLoading = false }) - }, goKeyReset() { + }, + goKeyReset() { this.FIRE_POINT_NAME = '' this.FIRE_POINT_CODE = '' + this.IS_PUNCTUATION = '' + this.selectForm = { + DEPARTMENT_ID: '' + } this.getList() }, getDict() { @@ -283,6 +454,88 @@ export default { this.listLoading = false }) }, + getTreeData() { + requestFN( + '/department/listTreeV2', + {} + ).then((data) => { + this.deptTreeData = JSON.parse(data.zTreeNodes) + }).catch((e) => { + }) + }, + handleEditUser(row) { + this.editDataIds = [] + if (row.FIRE_POINT_ID) { + this.editDataIds.push(row.FIRE_POINT_ID) + } else { + const selection = this.$refs.multipleTable.selection + if (!selection.length > 0) { + this.$message({ + type: 'warning', + message: '请选择要修改的数据' + }) + return + } + selection.forEach(item => { + this.editDataIds.push(item.FIRE_POINT_ID) + }) + } + const selection = this.$refs.multipleTable.selection + const DEPARTMENT_ID = selection[0].DEPARTMENT_ID + if (selection.length > 1) { + let flag = false + selection.forEach(item => { + if (DEPARTMENT_ID !== item.DEPARTMENT_ID) { + this.$message({ + type: 'warning', + message: '只能选择同一部门下的数据' + }) + flag = true + } + }) + if (flag) { + return + } + } + this.getUserList(DEPARTMENT_ID) + this.dialogEditUserForm = { + USER_ID: '' + } + this.dialogEditUser = true + }, + getUserList(DEPARTMENT_ID) { + requestFN( + '/user/listAll', + { + DEPARTMENT_ID: DEPARTMENT_ID + } + ).then((data) => { + this.userList = data.userList + }).catch((e) => { + }) + }, + dialogEditUserConfirm() { + this.$refs.firefightingBatchEditDept.validate((valid) => { + if (valid) { + this.listLoading = true + requestFN( + '/firePoint/batchEditFirePointUser', + { + DATA_IDS: this.editDataIds.join(','), + USER_ID: this.dialogEditUserForm.USER_ID + } + ).then(() => { + this.$message({ + message: '修改成功', + type: 'success' + }) + this.dialogEditUser = false + this.getList() + }).catch(() => { + }) + } + }) + }, handleDelete(row) { const DATA_IDS = [] if (row.FIRE_POINT_ID) { @@ -296,6 +549,19 @@ export default { }) return } + var flag = true + selection.forEach(item => { + if (item.DEVICE_COUNT > 0) { + flag = false + } + }) + if (!flag) { + this.$message({ + type: 'warning', + message: '选择的点位中有子数据,不能删除' + }) + return + } selection.forEach(item => { DATA_IDS.push(item.FIRE_POINT_ID) }) @@ -347,15 +613,17 @@ export default { } - + + From 11fd98003aa9fb424b3d7af24d3a5971de8762e6 Mon Sep 17 00:00:00 2001 From: liujun Date: Fri, 1 Nov 2024 17:50:30 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E4=BC=81=E4=B8=9A=E7=AB=AF=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E5=AE=9A=E4=BD=8D=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/map/index.vue | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/views/map/index.vue b/src/views/map/index.vue index fbe95de..7115566 100644 --- a/src/views/map/index.vue +++ b/src/views/map/index.vue @@ -1289,7 +1289,7 @@ export default { const collection = new Cesium.CustomDataSource('trajectoryEntityCollection') collection.entities.add(entity) viewer.dataSources.add(collection) - this.trajectoryEntityCollection = collection + this.trajectoryEntityCollection = Object.freeze(collection) } }) }, @@ -2450,8 +2450,8 @@ export default { const wsUrl = config.NoDwSysUrl + '/ltLocation/DW_' + new Date().getTime() + '_98' _this.fwebsocket = new WebSocket(encodeURI(wsUrl)) _this.fwebsocket.onmessage = function(message) { - console.info('接收消息') const peopleList = JSON.parse(message.data) + viewer.entities.suspendEvents() for (let i = 0; i < peopleList.length; i++) { const item = peopleList[i] if ((!item)) continue @@ -2484,6 +2484,7 @@ export default { _this.mqttPoint[_this.subscription.topic.substring(0, _this.subscription.topic.lastIndexOf('+')) + item.id] = item.id } } + viewer.entities.resumeEvents() } } }, From ccfd19804129517cb37064a8fe404232a7360b65 Mon Sep 17 00:00:00 2001 From: shanao Date: Tue, 5 Nov 2024 09:16:59 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AE=89=E5=85=A8?= =?UTF-8?q?=E7=8E=AF=E4=BF=9D=E6=A3=80=E6=9F=A5=E6=9A=82=E5=AD=98=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8A=A8=E7=81=AB=E5=BC=BA=E5=88=B6=E7=BB=93?= =?UTF-8?q?=E6=9D=9F=E5=90=8E=E6=9F=A5=E8=AF=A2=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../forcedRollback/components/delayed.vue | 148 +++++ .../forcedRollback/components/detail.vue | 570 ++++++++++++++++++ .../forcedRollback/components/list.vue | 279 +++++++++ src/views/hotwork/forcedRollback/index.vue | 37 ++ .../inspection/components/add.vue | 87 +++ 5 files changed, 1121 insertions(+) create mode 100644 src/views/hotwork/forcedRollback/components/delayed.vue create mode 100644 src/views/hotwork/forcedRollback/components/detail.vue create mode 100644 src/views/hotwork/forcedRollback/components/list.vue create mode 100644 src/views/hotwork/forcedRollback/index.vue diff --git a/src/views/hotwork/forcedRollback/components/delayed.vue b/src/views/hotwork/forcedRollback/components/delayed.vue new file mode 100644 index 0000000..89df947 --- /dev/null +++ b/src/views/hotwork/forcedRollback/components/delayed.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/src/views/hotwork/forcedRollback/components/detail.vue b/src/views/hotwork/forcedRollback/components/detail.vue new file mode 100644 index 0000000..8840236 --- /dev/null +++ b/src/views/hotwork/forcedRollback/components/detail.vue @@ -0,0 +1,570 @@ + + + + + diff --git a/src/views/hotwork/forcedRollback/components/list.vue b/src/views/hotwork/forcedRollback/components/list.vue new file mode 100644 index 0000000..8a2dabc --- /dev/null +++ b/src/views/hotwork/forcedRollback/components/list.vue @@ -0,0 +1,279 @@ + + diff --git a/src/views/hotwork/forcedRollback/index.vue b/src/views/hotwork/forcedRollback/index.vue new file mode 100644 index 0000000..1167274 --- /dev/null +++ b/src/views/hotwork/forcedRollback/index.vue @@ -0,0 +1,37 @@ + + + + + diff --git a/src/views/safetyenvironmental/inspection/components/add.vue b/src/views/safetyenvironmental/inspection/components/add.vue index d4d2ab5..c7f6b64 100644 --- a/src/views/safetyenvironmental/inspection/components/add.vue +++ b/src/views/safetyenvironmental/inspection/components/add.vue @@ -376,6 +376,7 @@
确 定 + 暂 存 取 消
@@ -1173,6 +1174,92 @@ export default { this.form.CONFIRM_MESSAGE_SIGN = information.INSPECTION_USER_SIGN_IMG this.form.CONFIRM_MESSAGE_TIME = information.INSPECTION_USER_SIGN_TIME this.$forceUpdate() + }, + /** + * 暂存 也就是采用分开提交的策略 + * 先提交外部表单 + * 然后每确定一条隐患就上传一条隐患 + * 避免一次性提交造成接口超时 + */ + staging() { + let flag = false + this.form.situationList.forEach(item => { + if (!this.validStr(item.SITUATION)) { + flag = true + return + } + }) + if (flag) { + this.$message({ + message: '检查情况不能为空', + type: 'warning' + }) + return false + } + flag = false + this.form.inspectorList.forEach(item => { + if (!this.validStr(item.INSPECTION_USER_ID)) { + flag = true + return + } + }) + if (flag) { + this.$message({ + message: '检查人员不能为空', + type: 'warning' + }) + return false + } + + this.$refs.form.validate(valid => { + if (valid) { + const loading = this.$loading({ + lock: true, + text: '数据保存中...', + spinner: 'el-icon-loading', + background: 'rgba(0, 0, 0, 0.7)' + }) + for (var x in this.form.inspectorList) { + var vector = 0 + for (var y in this.form.inspectorList) { + if (this.form.inspectorList[y].INSPECTION_USER_ID === this.form.inspectorList[x].INSPECTION_USER_ID) vector++ + } + if (vector > 1) { + this.$message.error('检查人重复!请检查相关数据') + return + } + } + const index = this.form.inspectorList.findIndex(item => item.INSPECTION_USER_ID === JSON.parse(sessionStorage.getItem('user')).USER_ID) + if (index < 0) { + this.form.inspectorList.push({ INSPECTION_INSPECTOR_ID: '', INSPECTION_DEPARTMENT_ID: JSON.parse(sessionStorage.getItem('user')).DEPARTMENT_ID, INSPECTION_USER_ID: JSON.parse(sessionStorage.getItem('user')).USER_ID }) + } + this.$set(this.form, 'INSPECTORJSON', JSON.stringify(this.form.inspectorList)) + this.$set(this.form, 'SITUATIONJSON', JSON.stringify(this.form.situationList)) + this.$set(this.form, 'HIDDENJSON', JSON.stringify(this.form.hiddenList)) + this.listLoading = true + requestFN( + '/safetyenvironmental/staging', + { ...this.form } + ).then((data) => { + for (let i = 0; i < data.pd.hiddenList.length; i++) { + this.uploadImg(this.hdFile[i]['fileHdImgList'], data.pd.hiddenList[i].HIDDEN_ID) + this.uploadVideo(this.hdFile[i]['fileVideoList'], data.pd.hiddenList[i].HIDDEN_ID) + } + this.$message({ + message: '保存成功', + type: 'success' + }) + this.listLoading = false + loading.close() + this.goBack() + }).catch((e) => { + this.listLoading = false + loading.close() + }) + } else { + return false + } + }) } } } From dc18edd445bd39fc0ffd1faf1647bfa7ec7d8b57 Mon Sep 17 00:00:00 2001 From: shanao Date: Tue, 5 Nov 2024 10:49:05 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E5=AE=89=E5=85=A8=E7=8E=AF=E4=BF=9D?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E6=9A=82=E5=AD=98=E7=AC=AC=E4=BA=8C=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../safetyenvironmental/inspection/components/add.vue | 9 +++------ .../safetyenvironmental/inspection/components/list.vue | 5 +++-- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/views/safetyenvironmental/inspection/components/add.vue b/src/views/safetyenvironmental/inspection/components/add.vue index c7f6b64..f359e13 100644 --- a/src/views/safetyenvironmental/inspection/components/add.vue +++ b/src/views/safetyenvironmental/inspection/components/add.vue @@ -1176,10 +1176,7 @@ export default { this.$forceUpdate() }, /** - * 暂存 也就是采用分开提交的策略 - * 先提交外部表单 - * 然后每确定一条隐患就上传一条隐患 - * 避免一次性提交造成接口超时 + * 先缓存 */ staging() { let flag = false @@ -1238,8 +1235,8 @@ export default { this.$set(this.form, 'HIDDENJSON', JSON.stringify(this.form.hiddenList)) this.listLoading = true requestFN( - '/safetyenvironmental/staging', - { ...this.form } + '/safetyenvironmental/' + this.dialogType, + { ...this.form, INSPECTION_STATUS: '99' } ).then((data) => { for (let i = 0; i < data.pd.hiddenList.length; i++) { this.uploadImg(this.hdFile[i]['fileHdImgList'], data.pd.hiddenList[i].HIDDEN_ID) diff --git a/src/views/safetyenvironmental/inspection/components/list.vue b/src/views/safetyenvironmental/inspection/components/list.vue index 507fb54..d43c87d 100644 --- a/src/views/safetyenvironmental/inspection/components/list.vue +++ b/src/views/safetyenvironmental/inspection/components/list.vue @@ -164,7 +164,7 @@ 查看 流程图 Date: Tue, 5 Nov 2024 16:27:55 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E4=B8=80=E8=88=AC?= =?UTF-8?q?=E9=9A=90=E6=82=A3=E6=8E=92=E6=9F=A5=E6=90=9C=E7=B4=A2=E9=A1=B9?= =?UTF-8?q?=20=E6=95=B4=E6=94=B9=E9=83=A8=E9=97=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/hiddenApi/publicMethod/list.vue | 24 ++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/src/views/hiddenApi/publicMethod/list.vue b/src/views/hiddenApi/publicMethod/list.vue index 3252e46..e180521 100644 --- a/src/views/hiddenApi/publicMethod/list.vue +++ b/src/views/hiddenApi/publicMethod/list.vue @@ -81,13 +81,23 @@ + + + + + + + - - 0) { + reorganizeDept.forEach(item => { deptIds = deptIds + ',' + item }) + } requestFN( '/hiddenApi/getList?showCount=' + this.listQuery.limit + '¤tPage=' + this.listQuery.page, { ...this.condform, hiddenVueType: this.hiddenVueType, + reorganizeDept: deptIds, STARTTIME: this.condform.creatTime[0], ENDTIME: this.condform.creatTime[1] } From e55843229522499ed62043c65e9333e6b14f3755 Mon Sep 17 00:00:00 2001 From: shanao Date: Wed, 6 Nov 2024 14:59:48 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E6=B6=88=E9=98=B2?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E8=AE=B0=E5=BD=95=E6=89=93=E5=9B=9E=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../record/components/recordInfo.vue | 56 ++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/src/views/firefighting/record/components/recordInfo.vue b/src/views/firefighting/record/components/recordInfo.vue index d87f668..69cc356 100644 --- a/src/views/firefighting/record/components/recordInfo.vue +++ b/src/views/firefighting/record/components/recordInfo.vue @@ -77,6 +77,7 @@ 检查情况 点位检查照片 + 操作 + @@ -201,6 +206,18 @@ 取 消
+ + + + + + + + +
@@ -228,6 +245,12 @@ export default { qualifiedImgs: [], qualifiedFiles: [], dialogImgVisible: false, + // 打回判断 + hitBack: false, + // 详情id + EQUIPMENT_POINT_ID: '', + // 打回说明 + hitBackReason: '', defaultProps: { value: 'id', children: 'nodes', @@ -349,8 +372,39 @@ export default { }).catch((e) => { this.listLoading = false }) + }, + hitBackFunction(id) { + console.log(id) + this.EQUIPMENT_POINT_ID = id + this.hitBack = true + }, + hitBackOK() { + this.$confirm('确定要打回吗?', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + requestFN( + '/fireRecord/cancel', + { + id: this.EQUIPMENT_POINT_ID, + reason: this.hitBackReason + } + ).then((data) => { + this.listLoading = false + // 隐患待添加 + }).catch((e) => { + this.listLoading = false + }) + this.FIRE_CHECK_ID = this.$parent.FIRE_CHECK_ID + this.FIRE_RECORD_ID = this.$parent.FIRE_RECORD_ID + this.SHOW_OR_EDIT = this.$parent.SHOW_OR_EDIT + this.recordBase = Object.assign({}, this.$parent.row) + this.getData() + this.getSignImgs(this.FIRE_RECORD_ID) + }) + this.hitBack = false } - } }