From a6cabbfd238128b89fe19ea6a2533335a4b56b5b Mon Sep 17 00:00:00 2001
From: Lou <luzhiping@qqyjz.com>
Date: Thu, 22 Feb 2024 18:24:09 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_web

---
 src/views/publicSecurity/keynotePlaceManage.vue           |  160 +++++++++++++++++++++++++---------------
 src/api/publicSecurity/keynoteManage.js                   |    9 ++
 src/views/publicSecurity/ninePlaceManage/patrolRecord.vue |   15 +++
 3 files changed, 124 insertions(+), 60 deletions(-)

diff --git a/src/api/publicSecurity/keynoteManage.js b/src/api/publicSecurity/keynoteManage.js
index 735e2af..18a2f32 100644
--- a/src/api/publicSecurity/keynoteManage.js
+++ b/src/api/publicSecurity/keynoteManage.js
@@ -6,4 +6,13 @@
         method: "post",
         data
     })
+}
+
+// 列表详情
+export const getTaskPlaceSelfCheckInfo = (params) => {
+    return request({
+        url: "/api/blade-taskPlaceSelfCheck/taskPlaceSelfCheck/getInfo",
+        method: "get",
+        params
+    })
 }
\ No newline at end of file
diff --git a/src/views/publicSecurity/keynotePlaceManage.vue b/src/views/publicSecurity/keynotePlaceManage.vue
index 6737da4..33ea191 100644
--- a/src/views/publicSecurity/keynotePlaceManage.vue
+++ b/src/views/publicSecurity/keynotePlaceManage.vue
@@ -49,7 +49,7 @@
             custom-class="flow-design-dialog" :before-close="handleClose">
             <audit-base @handleSubmit="submitAudit"></audit-base>
         </el-dialog>
-        <el-drawer title="巡查详情" :visible.sync="isDetail" :append-to-body="true" size="40%" direction="rtl">
+        <el-drawer title="消防自查详情" :visible.sync="isDetail" :append-to-body="true" size="40%" direction="rtl">
             <div class="title">
                 <div class="icon">{{ refreshNum }}</div>
                 基础信息
@@ -147,8 +147,12 @@
     mapGetters
 } from "vuex"
 import {
-    applyTaskExamine
+    applyTaskExamine,
+    getTaskPlaceSelfCheckInfo
 } from "@/api/publicSecurity/keynoteManage"
+import {
+    getPatrolGroupTree, getDictBizTree
+} from "@/api/publicSecurity/ninePlaceManage"
 import website from '@/config/website'
 import NProgress from 'nprogress'
 import 'nprogress/nprogress.css'
@@ -248,6 +252,20 @@
                         searchSpan: 4,
                         searchLabelWidth: 46,
                         overHidden: true,
+                        align: 'center'
+                    }, {
+                        label: "场所类别",
+                        prop: "nineType",
+                        align: 'center',
+                        dicUrl: "/api/blade-system/dict-biz/tree?code=nineType",
+                        props: {
+                            label: "title",
+                            value: "key",
+                        },
+                        type: 'select',
+                        search: true,
+                        searchSpan: 4,
+                        searchLabelWidth: 96,
                         align: 'center'
                     }, {
                         label: "所属街道",
@@ -355,6 +373,11 @@
 
     watch: {},
 
+    created () {
+        this.getPatrolGroupTree()
+        this.getDictBizTree()
+    },
+
     computed: {
         ...mapGetters(["permission", "userInfo"]),
         permissionList () {
@@ -430,75 +453,92 @@
             }, {})
         },
 
+        // 九小类型字典接口
+        getDictBizTree () {
+            getDictBizTree({ code: 'nineType' }).then(res => {
+                this.nineTypeList = res.data.data
+            })
+        },
+
         // 九小类型转换
         switchNineType (type) {
             return this.nineTypeList.find(item => item.key === type) ? this.nineTypeList.find(item => item.key === type).title : ''
         },
 
-        getDetail (row) {
-            if (row.patrolRecordVOList) {
-                row.patrolRecordVOList.forEach(item => {
-                    item.imageUrlsList = []
-                    item.rectificationImageUrlsList = []
-                    if (item.imageUrls) {
-                        item.imageUrlsList = item.imageUrls.split(',').map(ele => {
-                            return website.minioUrl + ele
-                        })
+        // 获取问题类型
+        getPatrolGroupTree () {
+            getPatrolGroupTree().then(res => {
+                this.questionTypeList = res.data.data
+            })
+        },
 
-                    }
-                    if (item.rectificationImageUrls) {
-                        item.rectificationImageUrlsList = item.rectificationImageUrls.split(',').map(ele => {
-                            return website.minioUrl + ele
-                        })
-                    }
-                    // 查询问题类型
-                    this.questionTypeList.forEach(qItem => {
-                        qItem.children.forEach(qChild => {
-                            if (qChild.id == item.itemId) {
-                                item.qType = qItem.title
-                                item.itemsNameTitle = qChild.title
-                            }
+        getDetail (rowData) {
+            getTaskPlaceSelfCheckInfo({ taskId: rowData.taskId }).then(res => {
+                let row = res.data.data
+                if (row.taskPlaceRecordVOList) {
+                    row.taskPlaceRecordVOList.forEach(item => {
+                        item.imageUrlsList = []
+                        item.rectificationImageUrlsList = []
+                        if (item.imageUrls) {
+                            item.imageUrlsList = item.imageUrls.split(',').map(ele => {
+                                return website.minioUrl + ele
+                            })
+
+                        }
+                        if (item.rectificationImageUrls) {
+                            item.rectificationImageUrlsList = item.rectificationImageUrls.split(',').map(ele => {
+                                return website.minioUrl + ele
+                            })
+                        }
+                        // 查询问题类型
+                        this.questionTypeList.forEach(qItem => {
+                            qItem.children.forEach(qChild => {
+                                if (qChild.id == item.itemId) {
+                                    item.qType = qItem.title
+                                    item.itemsNameTitle = qChild.title
+                                }
+                            })
                         })
                     })
-                })
-            }
-            if (row.patrolRecordVOList) {
-                // 把相同类型问题分组
-                let obj = this.groupBy(row.patrolRecordVOList, 'qType')
-                let arr = Object.entries(obj)
-                let newArr = []
-                arr.forEach(part => {
-                    newArr.push({ questionName: part[0], questionList: part[1], isShowQList: true })
-                })
-                row.qTypeList = newArr
-            }
-            // 九小类型转换
-            row.nineTypeName = this.switchNineType(row.nineType)
-            this.rowDetail = row
-            this.isDetail = true
+                }
+                if (row.taskPlaceRecordVOList) {
+                    // 把相同类型问题分组
+                    let obj = this.groupBy(row.taskPlaceRecordVOList, 'qType')
+                    let arr = Object.entries(obj)
+                    let newArr = []
+                    arr.forEach(part => {
+                        newArr.push({ questionName: part[0], questionList: part[1], isShowQList: true })
+                    })
+                    row.qTypeList = newArr
+                }
+                // 九小类型转换
+                row.nineTypeName = this.switchNineType(row.nineType)
+                this.rowDetail = row
+                this.isDetail = true
+            })
+
         },
 
         handleExport () {
-            this.$message.warning('正在开发中..')
-            // this.$confirm("是否导出场所检查数据?", "提示", {
-            //     confirmButtonText: "确定",
-            //     cancelButtonText: "取消",
-            //     type: "warning"
-            // }).then(() => {
-            //     NProgress.start()
-            //     var data = {
-            //         ...this.query
-            //     }
-            //     // data.isNine = 1
-            //     data = Qs.stringify(data)
-            //     exportBlob(
-            //         `/api/blade-placeCheck/placeCheck/export-placeCheck?${this.website.tokenHeader}=${getToken()}&` + data
-            //     ).then(res => {
-            //         console.log('exportBlob', res)
-            //         downloadXls(res.data, `场所检查${dateNow()}.xlsx`)
-            //         NProgress.done()
-            //     })
-            // })
+            this.$confirm("是否导出场所检查数据?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+            }).then(() => {
+                NProgress.start()
+                var data = {
+                    ...this.query
+                }
+                // data.isNine = 1
+                data = Qs.stringify(data)
+                exportBlob(
+                    `/api/blade-taskPlaceSelfCheck/taskPlaceSelfCheck/export-taskPlaceSelfCheck?${this.website.tokenHeader}=${getToken()}&` + data
+                ).then(res => {
+                    console.log('exportBlob', res)
+                    downloadXls(res.data, `消防自查${dateNow()}.xlsx`)
+                    NProgress.done()
+                })
+            })
         },
 
         showStringDispose (row, type) {
diff --git a/src/views/publicSecurity/ninePlaceManage/patrolRecord.vue b/src/views/publicSecurity/ninePlaceManage/patrolRecord.vue
index aad41de..f350c39 100644
--- a/src/views/publicSecurity/ninePlaceManage/patrolRecord.vue
+++ b/src/views/publicSecurity/ninePlaceManage/patrolRecord.vue
@@ -204,6 +204,21 @@
                         searchLabelWidth: 46,
                         overHidden: true,
                         align: 'center'
+                    },
+                    {
+                        label: "场所类别",
+                        prop: "nineType",
+                        align: 'center',
+                        dicUrl: "/api/blade-system/dict-biz/tree?code=nineType",
+                        props: {
+                            label: "title",
+                            value: "key",
+                        },
+                        type: 'select',
+                        search: true,
+                        searchSpan: 4,
+                        searchLabelWidth: 96,
+                        align: 'center'
                     }, {
                         label: "所属街道",
                         prop: "streetName",

--
Gitblit v1.9.3