From 667e1a5b49ffc2f7af9237b4542b1c2e4d00731f Mon Sep 17 00:00:00 2001
From: luobisheng <727299681@qq.com>
Date: 星期一, 28 十一月 2022 16:37:12 +0800
Subject: [PATCH] 趋势分析

---
 src/views/operate/fivepack/threepack/components/updateUser/index.vue               |    2 
 src/components/process/index.vue                                                   |    3 
 src/views/operate/viewEvent/index.vue                                              |    2 
 vue.config.js                                                                      |    8 
 src/api/operate/basecase.js                                                        |   57 +++++
 src/views/intelligentPatrol/studyJudge/index.vue                                   |   56 +++--
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue |    2 
 src/views/operate/message/myIndex/index.vue                                        |   12 -
 src/views/operate/disposal/casepool/dispatch/index.vue                             |    2 
 /dev/null                                                                          |   17 -
 src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue                       |   14 
 src/api/system/bayonet.js                                                          |    2 
 src/views/intelligentPatrol/illegalSearch/index.vue                                |  231 +++++++++++-----------
 src/views/intelligentPatrol/trendAnalysis/index.vue                                |  170 ++++++----------
 src/App.vue                                                                        |    3 
 src/views/systemSetting/device/bayonet/create/index.vue                            |    3 
 src/views/operate/sms/smsTemplate/createTemplate/index.vue                         |    1 
 17 files changed, 299 insertions(+), 286 deletions(-)

diff --git a/src/App.vue b/src/App.vue
index 5974d0d..d11fc9d 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -176,4 +176,7 @@
   -webkit-box-shadow: inset 0 0 6px rgba(145, 143, 0143, 0.3);
   background-color: rgb(145, 143, 143); /*婊氬姩鏉$殑鑳屾櫙棰滆壊*/
 }
+.el-range-input {
+  background-color: #09152f;
+}
 </style>
\ No newline at end of file
diff --git a/src/api/operate/basecase.js b/src/api/operate/basecase.js
new file mode 100644
index 0000000..434534e
--- /dev/null
+++ b/src/api/operate/basecase.js
@@ -0,0 +1,57 @@
+import http from "@/http";
+
+export default {
+    baseCaseQuery: (params) => {
+        return http.get('/sccg/base_case/query_case', params);
+    },
+
+    // 鑾峰彇澶勭疆缁撴灉璇︽儏
+    getBaseCaseDetail: (id) => {
+        return http.get('/sccg/base_case/baseCaseDetail/' + id);
+    },
+
+    // 涓婁紶澶勭疆缁撴灉
+    updateDisposeResult: (params) => {
+        return http.post('/sccg/dispatch_handle/addition_dispose_result', params);
+    },
+
+    // 杩濊妫�绱�
+    getViolationList: (params) => {
+        return http.get('/sccg/base_case/query_for_violation', params);
+    },
+
+    // 涓嬭浇杩濊妫�绱㈡暟鎹�
+    exportViolationData: (params) => {
+        return http.downloadFile('/sccg/base_case/query_for_violation/export', params);
+    },
+
+    // 棰勮鐮斿垽
+    getInspectionData: (params) => {
+        return http.get('/sccg/base_case/video_inspection', params);
+    },
+
+    // 棰勮鐮斿垽璁℃暟
+    getInspectionCountData: (params) => {
+        return http.get('/sccg/base_case/video_inspection/Count', params);
+    },
+
+    // 棰勮鐮斿垽纭畾
+    confirmInspection: (params) => {
+        return http.put('/sccg/base_case/video_inspection', params);
+    },
+
+    // 瓒嬪娍鍒嗘瀽
+    getTrendAnalysisData: (params) => {
+        return http.post('/sccg/trendAnalysis/info', params);
+    },
+
+    // 棣栨鎶ヨ鐐逛綅鏁版嵁鏌ヨ
+    getFirstTrendAnalysisData: (params) => {
+        return http.post('/sccg/trendAnalysis/firstInfo', params);
+    },
+
+    getPointTrendAnalysisData: (params) => {
+        return http.post('/sccg/trendAnalysis/pointInfo', params);
+    }
+
+}
\ No newline at end of file
diff --git a/src/api/operate/casequery.js b/src/api/operate/casequery.js
deleted file mode 100644
index 263e33b..0000000
--- a/src/api/operate/casequery.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import http from "@/http";
-
-export default {
-    baseCaseQuery: (params) => {
-        return http.get('/sccg/base_case/query_case', params);
-    },
-
-    // 鑾峰彇澶勭疆缁撴灉璇︽儏
-    getBaseCaseDetail: (id) => {
-        return http.get('/sccg/base_case/baseCaseDetail/' + id);
-    },
-
-    // 涓婁紶澶勭疆缁撴灉
-    updateDisposeResult: (params) => {
-        return http.post('/sccg/dispatch_handle/addition_dispose_result', params);
-    }
-}
\ No newline at end of file
diff --git a/src/api/system/bayonet.js b/src/api/system/bayonet.js
index df08a0a..cf40d8b 100644
--- a/src/api/system/bayonet.js
+++ b/src/api/system/bayonet.js
@@ -4,7 +4,7 @@
         return http.get('/sccg/equipment_bayonet/query', params);
     },
     exportBayonetList: (params) => {
-        return http.get('/sccg/equipment_bayonet/export', params);
+        return http.downloadFile('/sccg/equipment_bayonet/export', params);
     },
     addBayonet: (params) => {
         return http.post('/sccg/equipment_bayonet/addition', params);
diff --git a/src/components/process/index.vue b/src/components/process/index.vue
index 0f18d78..6702405 100644
--- a/src/components/process/index.vue
+++ b/src/components/process/index.vue
@@ -111,9 +111,6 @@
       handlePassVo: { workflowConfigSteps: mylist },
       baseCase: { state: mystate },
     } = this;
-    // console.log(this.handlePassVo.workflowConfigSteps[0].name);
-    // console.log(mylist);
-    console.log(mystate);
     if (mystate === 6) {
       this.active = 1;
     } else if (mystate === 7) {
diff --git a/src/views/intelligentPatrol/illegalSearch/index.vue b/src/views/intelligentPatrol/illegalSearch/index.vue
index deaf20d..463c5e2 100644
--- a/src/views/intelligentPatrol/illegalSearch/index.vue
+++ b/src/views/intelligentPatrol/illegalSearch/index.vue
@@ -4,8 +4,16 @@
       <div class="headerContent">
         <!-- 鏉′欢绛涢�� -->
         <el-form ref="condition" :model="form" label-width="100px">
-          <el-form-item :label=item.label :key=item.id v-for="item in headerList">
-            <el-input v-model="item.value" :placeholder="item.placeholder"></el-input>
+          <el-form-item :label=item.label :key=item.id v-for="item in headerList" :prop="item.prop">
+            <el-input v-if="item.type === 'input'" v-model="form[item.prop]" :placeholder="item.placeholder"></el-input>
+            <el-cascader v-if="item.type === 'cascader'" :options="item.options" :props="{ value: 'id', label: 'regionName' }"
+                         v-model="form[item.prop]" :placeholder="item.placeholder"></el-cascader>
+            <el-select v-if="item.type === 'select'" v-model="form[item.prop]" :placeholder="item.placeholder">
+              <el-option v-for="option in item.options" :value="option.id" :key="option.id" :label="option.name"></el-option>
+            </el-select>
+            <el-date-picker v-if="item.type === 'timepick'" type="datetimerange" v-model="form[item.prop]" start-placeholder="寮�濮嬫棩鏈�"
+                            end-placeholder="缁撴潫鏃ユ湡" value-format="yyyy-MM-dd HH:mm:ss"
+            ></el-date-picker>
           </el-form-item>
         </el-form>
       </div>
@@ -16,10 +24,10 @@
         <div class="main-btns">
           <div class="main-btns-left">
             <el-button icon="el-icon-download">涓嬭浇鍥剧墖</el-button>
-            <el-button icon="el-icon-folder">瀵煎嚭</el-button>
+            <el-button icon="el-icon-folder" @click="exportTableData">瀵煎嚭</el-button>
           </div>
           <div class="main-btns-right">
-            <el-button icon="el-icon-search">鏌ヨ</el-button>
+            <el-button icon="el-icon-search" @click="searchTableData">鏌ヨ</el-button>
             <el-button icon="el-icon-delete-solid" @click="handleReset">閲嶇疆</el-button>
           </div>
         </div>
@@ -29,17 +37,17 @@
           :data="tableData" style="width: 100%" :row-class-name="tableRowClassName">
           <el-table-column type="selection" min-width="5">
           </el-table-column>
-          <el-table-column prop="number" label="浜嬩欢缂栧彿" min-width="10">
+          <el-table-column prop="code" label="浜嬩欢缂栧彿" min-width="10">
           </el-table-column>
-          <el-table-column prop="type" label="杩濊绫诲瀷" min-width="10">
+          <el-table-column prop="typeName" label="杩濊绫诲瀷" min-width="10">
           </el-table-column>
-          <el-table-column prop="source" label="浜嬩欢鏉ユ簮" min-width="10">
+          <el-table-column prop="eventSource" label="浜嬩欢鏉ユ簮" min-width="10">
           </el-table-column>
-          <el-table-column prop="level" label="浜嬩欢绛夌骇" min-width="10">
+          <el-table-column prop="gradeName" label="浜嬩欢绛夌骇" min-width="10">
           </el-table-column>
-          <el-table-column prop="point" label="鎶ヨ鐐逛綅" min-width="10">
+          <el-table-column prop="streetName" label="鎶ヨ鐐逛綅" min-width="10">
           </el-table-column>
-          <el-table-column prop="org" label="鎵�灞炵粍缁�" min-width="10">
+          <el-table-column prop="site" label="鎵�灞炵粍缁�" min-width="10">
           </el-table-column>
           <el-table-column prop="alarmTime" label="鎶ヨ鏃堕棿" min-width="12">
           </el-table-column>
@@ -49,7 +57,7 @@
           </el-table-column>
           <el-table-column prop="state" label="瀹℃牳鐘舵��" min-width="10">
           </el-table-column>
-          <el-table-column prop="advice" label="澶勭悊鎰忚" min-width="10">
+          <el-table-column prop="handlingOpinion" label="澶勭悊鎰忚" min-width="10">
           </el-table-column>
           <el-table-column prop="operation" label="鎿嶄綔" min-width="15">
             <template slot-scope="scope">
@@ -63,7 +71,7 @@
     </main>
     <footer>
       <!-- 鏌ョ湅鍏蜂綋淇℃伅 -->
-      <el-dialog title="浜嬩欢璇︽儏" :visible.sync="dialogView" width="45%" :before-close="handleClose">
+      <el-dialog title="浜嬩欢璇︽儏" destroy-on-close :visible.sync="dialogView" width="45%" :before-close="handleClose">
         <ViewInfo :info="info"></ViewInfo>
       </el-dialog>
     </footer>
@@ -71,163 +79,166 @@
 </template>
 
 <script>
-import helper from "@/utils/mydate.js"
-import ViewInfo from './viewInfo'
+import helper from "@/utils/mydate.js";
+import ViewInfo from './viewInfo';
+import basecase from "@/api/operate/basecase";
+import department from "@/api/system/department";
+import { getVideoPoint } from "@/api/operate/storeManagement";
+
 export default {
   components: {
     ViewInfo
   },
+
+  created() {
+    this.getTableData();
+
+    // 鑾峰彇缁勭粐鍒楄〃
+    department.getDepartmentList()
+        .then(res => {
+          this.headerList[0].options = res;
+        })
+        .catch(err => this.$message.error(err))
+
+    getVideoPoint({ current: 1, size: 100 })
+        .then(({ records }) => {
+          this.headerList[4].options = records;
+        })
+        .catch(err => this.$message.error(err))
+  },
+
   data() {
     return {
-      tableData: [
-        {
-          number: '123456',
-          type: '浜烘皯璺彸浜�',
-          source: '瑙嗛涓婃姤',
-          level: '涓�鑸簨浠�',
-          point: '123.123,123.233',
-          org: '浜烘皯閮�',
-          alarmTime: '2022-02-12 12:00:00',
-          continueTime: '2灏忔椂30鍒嗛挓06绉�',
-          carNumber: '娴橞245CM',
-          state: '寰呭鏍�',
-          advice: '闇�鍙婃椂澶勭悊'
-        },
-        {
-          number: '123457',
-          type: '浜烘皯璺乏浜�',
-          source: '瑙嗛涓婃姤',
-          level: '楂樺彂浜嬩欢',
-          point: '123.123,123.233',
-          org: '浜烘皯閮�',
-          alarmTime: '2022-02-12 12:00:00',
-          continueTime: '2灏忔椂30鍒嗛挓06绉�',
-          carNumber: '娴橞245CM',
-          state: '寰呭鏍�',
-          advice: '闇�鍙婃椂澶勭悊'
-        },
-        {
-          number: '123458',
-          type: '浜哄璺彸浜�',
-          source: '瑙嗛涓婃姤',
-          level: '涓�鑸簨浠�',
-          point: '123.123,123.233',
-          org: '浜烘皯閮�',
-          alarmTime: '2022-02-12 12:00:00',
-          continueTime: '2灏忔椂30鍒嗛挓06绉�',
-          carNumber: '娴橞245CM',
-          state: '寰呭鏍�',
-          advice: '闇�鍙婃椂澶勭悊'
-        },
-        {
-          number: '123459',
-          type: '浜烘皯璺彸浜�',
-          source: '瑙嗛涓婃姤',
-          level: '涓�鑸簨浠�',
-          point: '123.123,123.233',
-          org: '浜烘皯閮�',
-          alarmTime: '2022-02-12 12:00:00',
-          continueTime: '2灏忔椂30鍒嗛挓06绉�',
-          carNumber: '娴橞245CM',
-          state: '寰呭鏍�',
-          advice: '闇�鍙婃椂澶勭悊'
-        },
-        {
-          number: '123460',
-          type: '浜烘皯璺彸浜�',
-          source: '瑙嗛涓婃姤',
-          level: '涓�鑸簨浠�',
-          point: '123.123,123.233',
-          org: '浜烘皯閮�',
-          alarmTime: '2022-02-12 12:00:00',
-          continueTime: '2灏忔椂30鍒嗛挓06绉�',
-          carNumber: '娴橞245CM',
-          state: '寰呭鏍�',
-          advice: '闇�鍙婃椂澶勭悊'
-        }
-      ],
-      context: "",
+      tableData: [],
       dialogView: false,
-      info: '',
+      info: null,
+      currentPage: 1,
+      pageSize: 10,
       headerList: [
         {
           id: 1,
           label: '鎵�灞炵粍缁�:',
           value: '',
-          placeholder: '璇疯緭鍏ユ墍灞炵粍缁�'
+          placeholder: '璇疯緭鍏ユ墍灞炵粍缁�',
+          prop: 'organization',
+          type: 'cascader',
+          options: []
         },
         {
           id: 2,
           label: '鎶ヨ鏃堕棿:',
           value: '',
-          placeholder: '璇疯緭鍏ユ姤璀︽椂闂�'
+          placeholder: '璇疯緭鍏ユ姤璀︽椂闂�',
+          prop: 'alarmTime',
+          type: 'timepick'
         },
         {
           id: 3,
           label: '杩濊绫诲瀷:',
           value: '',
-          placeholder: '璇疯緭鍏ヨ繚瑙勭被鍨�'
+          placeholder: '璇疯緭鍏ヨ繚瑙勭被鍨�',
+          prop: 'typeId',
+          type: 'input'
         },
         {
           id: 4,
           label: '浜嬩欢缂栧彿:',
           value: '',
-          placeholder: '璇疯緭鍏ヤ簨浠剁紪鍙�'
+          placeholder: '璇疯緭鍏ヤ簨浠剁紪鍙�',
+          prop: 'code',
+          type: 'input'
         },
         {
           id: 5,
           label: '鐩戞帶鐐瑰悕绉�:',
           value: '',
-          placeholder: '璇疯緭鍏ョ洃鎺х偣鍚嶇О'
+          placeholder: '璇疯緭鍏ョ洃鎺х偣鍚嶇О',
+          prop: 'videoPointId',
+          type: 'select',
+          options: []
         },
         {
           id: 6,
           label: '瀹℃牳鐘舵��:',
           value: '',
-          placeholder: '璇疯緭鍏ュ鏍哥姸鎬�'
+          placeholder: '璇疯緭鍏ュ鏍哥姸鎬�',
+          type: 'select',
+          options: [{ id: 7, name: '鏈鏍�' }, { id: 8, name: '宸茬粡瀹℃牳' }, { id: 9, name: '缁撴' }]
         },
         {
           id: 7,
           label: '杞︾墝鍙�:',
           value: '',
-          placeholder: '璇疯緭鍏ヨ溅鐗屽彿'
+          placeholder: '璇疯緭鍏ヨ溅鐗屽彿',
+          prop: 'carNumber',
+          type: 'input'
         },
         {
           id: 8,
           label: '澶勭悊鎰忚:',
           value: '',
-          placeholder: '璇疯緭鍏ヤ簨浠剁瓑绾�'
+          placeholder: '璇疯緭鍏ヤ簨浠剁瓑绾�',
+          prop: 'handlingOpinion',
+          type: 'input'
         },
         {
           id: 9,
-          label: '鎶ヨ鏃堕棿:',
+          label: '浜嬩欢绛夌骇:',
           value: '',
-          placeholder: '璇疯緭鍏ユ墍灞炵粍缁�'
+          placeholder: '璇疯緭鍏ヤ簨浠剁瓑绾�',
+          prop: 'gradeId',
+          type: 'input'
         },
       ],
       form: {
-
+        gradeId: null,
+        alarmTime: null,
+        handlingOpinion: null,
+        streetId: null,
+        typeId: null,
+        code: null,
+        carNumber: null,
+        state: null,
+        videoPointId: null,
+        organization: null
       }
     }
   },
+
   methods: {
+    getTableData(params) {
+      basecase.getViolationList({ current: this.currentPage, pageSize: this.pageSize, ...params })
+          .then(({ records }) => {
+            this.tableData = records;
+          })
+          .catch(err => this.$message.error(err))
+    },
+
+    searchTableData() {
+      const { alarmTime, organization } = this.form;
+      const [startTime, endTime] = alarmTime ?? [null, null];
+      const [communityId, streetId] = organization ?? [null, null];
+      const params = Object.assign({}, this.form);
+      delete params.alarmTime;
+      delete params.organization;
+      this.getTableData({ startTime, streetId, communityId, endTime, ...params });
+    },
+
     changeTime({ createTime }) {
       return helper(createTime);
     },
     // 璁剧疆琛ㄦ牸鏂戦┈绾�
     tableRowClassName({ row, rowIndex }) {
-      if ((rowIndex + 1) % 2 == 0) {
+      if ((rowIndex + 1) % 2 === 0) {
         return 'warning-row';
       } else {
         return 'success-row';
       }
-      return '';
     },
     // 琛ㄥ崟閲嶇疆
     handleReset() {
-      this.headerList.forEach(item => {
-        item.value = ''
-      })
+      this.$refs.condition.resetFields();
+      this.getTableData();
     },
     // 鍏抽棴寮圭獥
     handleClose(done) {
@@ -237,15 +248,15 @@
     handleView(data) {
       this.info = data
       this.dialogView = true
-      console.log(data)
     },
-    // 鑷畾涔夊叧闂脊绐�
-    // myCloseDialog({flag,str,index}){
-    //   console.log( this[str])
-    //   if(index === 0){
-       
-    //   }
-    // }
+
+    exportTableData() {
+      basecase.exportViolationData({ current: 1 })
+          .then(() => {
+            this.$message.success('鎿嶄綔鎴愬姛');
+          })
+          .catch(err => this.$message.error(err))
+    }
   }
 }
 </script>
@@ -257,7 +268,6 @@
 
   header {
     background-color: #09152f;
-    border: 1pox solid #fff;
 
     .headerContent {
       padding: 20px 40px;
@@ -285,7 +295,6 @@
     background-color: #09152f;
     margin-top: 20px;
     padding-bottom: 50px;
-    border: 1pox solid #fff;
 
     .mainTitle {
       line-height: 60px;
@@ -330,10 +339,6 @@
           .el-checkbox {
             width: 80px;
             padding: 0 10px;
-          }
-
-          .el-select {
-            width: 120px;
           }
 
           &::v-deep .el-input__inner {
diff --git a/src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue b/src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue
index 1c73af6..2bb2db5 100644
--- a/src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue
+++ b/src/views/intelligentPatrol/illegalSearch/viewInfo/index.vue
@@ -2,22 +2,22 @@
     <div id="view-info">
         <el-form ref="info" :model="myInfo" label-width="100px">
             <el-form-item label="浜嬩欢缂栧彿:">
-                <el-input v-model="myInfo.number" disabled></el-input>
+                <el-input v-model="myInfo.code" disabled></el-input>
             </el-form-item>
             <el-form-item label="杩濊绫诲瀷:">
-                <el-input v-model="myInfo.type" disabled></el-input>
+                <el-input v-model="myInfo.typeName" disabled></el-input>
             </el-form-item>
             <el-form-item label="浜嬩欢鏉ユ簮:">
-                <el-input v-model="myInfo.source" disabled></el-input>
+                <el-input v-model="myInfo.eventSource" disabled></el-input>
             </el-form-item>
             <el-form-item label="浜嬩欢绛夌骇:">
-                <el-input v-model="myInfo.level" disabled></el-input>
+                <el-input v-model="myInfo.gradeName" disabled></el-input>
             </el-form-item>
             <el-form-item label="鎶ヨ鐐逛綅:">
-                <el-input v-model="myInfo.point" disabled></el-input>
+                <el-input v-model="myInfo.streetName" disabled></el-input>
             </el-form-item>
             <el-form-item label="鎵�灞炵粍缁�:">
-                <el-input v-model="myInfo.org" disabled></el-input>
+                <el-input v-model="myInfo.site" disabled></el-input>
             </el-form-item>
             <el-form-item label="鎶ヨ鏃堕棿:">
                 <el-input v-model="myInfo.alarmTime" disabled></el-input>
@@ -32,7 +32,7 @@
                 <el-input v-model="myInfo.state" disabled></el-input>
             </el-form-item>
             <el-form-item label="澶勭悊鎰忚:">
-                <el-input v-model="myInfo.advice" disabled></el-input>
+                <el-input v-model="myInfo.handlingOpinion" disabled></el-input>
             </el-form-item>
         </el-form>
     </div>
diff --git a/src/views/intelligentPatrol/studyJudge/index.vue b/src/views/intelligentPatrol/studyJudge/index.vue
index e5fcded..29b44c5 100644
--- a/src/views/intelligentPatrol/studyJudge/index.vue
+++ b/src/views/intelligentPatrol/studyJudge/index.vue
@@ -1,14 +1,13 @@
 <template>
   <div class="study-judge">
     <div class="study-judge-header">
-      <span>鎮ㄦ湁1111鏉″緟瀹℃牳鎶ヨ淇℃伅,浠婃棩绔嬫0鏉�,鍐嶅涔�0鏉�</span>
+      <span>鎮ㄦ湁1111鏉″緟瀹℃牳鎶ヨ淇℃伅,浠婃棩绔嬫0鏉�,鍐嶅涔爗{ currentEvent.review }}鏉�</span>
     </div>
     <div class="study-judge-main">
-      <!-- sjm:study-judge-main -->
       <div class="sjm-header">
         <div class="sjm-header-left">
-          <span class="moni-name">鐩戞帶鐐逛綅鍚嶇О:涓崕璺疿X璺彛 </span>
-          <span class="moni-area">涓崕琛楅亾鍖哄煙</span>
+          <span class="moni-name">鐩戞帶鐐逛綅鍚嶇О: {{ currentEvent.name }} </span>
+          <span class="moni-area">{{ currentEvent.street }}</span>
         </div>
         <div class="sjm-header-right">
           <el-button size="small">瀹炴椂棰勮</el-button>
@@ -19,9 +18,7 @@
         <div class="sjm-content-left">
           <div class="img-item">
             <span>鎶ヨ鍥剧墖</span>
-            <img
-              src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__67d4d15bfc501319f8377f2ce37bf441.svg"
-              alt="">
+            <img :src="currentEvent.picData">
             <span>鎶ヨ鏃堕棿锛�2022-09-08 14:23:34</span>
           </div>
           <div class="img-item">
@@ -46,10 +43,10 @@
             </div>
             <el-form ref="currentEvent" label-width="120px" :model="currentEvent" :rules="rules">
               <el-form-item label="浜嬩欢缂栧彿:">
-                <span>{{ currentEvent.number }}</span>
+                <span>{{ currentEvent.code }}</span>
               </el-form-item>
               <el-form-item label="浜嬩欢绛夌骇:">
-                <span>{{ currentEvent.level }}</span>
+                <span>{{ currentEvent.grade }}</span>
               </el-form-item>
               <el-form-item label="棣栨鎶ヨ鏃堕棿:">
                 <span>{{ currentEvent.firstTime }}</span>
@@ -94,7 +91,27 @@
 </template>
 
 <script>
+import basecase from "@/api/operate/basecase";
+import { FILE_ORIGINAL_URL } from "@/utils";
+
 export default {
+  created() {
+    basecase.getInspectionData({ current: 1 })
+        .then(({ records }) => {
+          this.eventList = records;
+          this.currentEvent = this.eventList[0];
+          if (this.currentEvent.picData) {
+            this.currentEvent.picData = `${FILE_ORIGINAL_URL}${this.currentEvent.picData}`;
+          }
+        })
+        .catch(err => this.$message.error(err))
+
+    basecase.getInspectionCountData()
+        .then(res => {
+          this.currentEvent.review = res.review;
+        })
+        .catch(err => this.$message.error(err))
+  },
   data() {
     const validateAdvice = (rule,value,callback)=>{
       if(value){
@@ -133,18 +150,17 @@
       }
     }
     return {
+      eventList: [],
       currentEvent: {
-        number: '1233123414141414',
-        level: '涓�鑸簨浠�',
-        firstTime: '2022/09/23 12:00:00',
-        recentTime: '2022/09/23/ 12:00:00',
-        conntinueTime: '0灏忔椂10鍒嗛挓',
-        advice: null,
-        type: '',
-        bigKind: '',
-        smallKind: '',
-        carNumber: '',
-        tip: ''
+        code: null,
+        grade: null,
+        picData: null,
+        street: null,
+        urlAddress: null,
+        name: null,
+        latitude: null,
+        longitude: null,
+        review: 0
       },
       adviceList: [
         {
diff --git a/src/views/intelligentPatrol/trendAnalysis/index.vue b/src/views/intelligentPatrol/trendAnalysis/index.vue
index 8321844..1cadf21 100644
--- a/src/views/intelligentPatrol/trendAnalysis/index.vue
+++ b/src/views/intelligentPatrol/trendAnalysis/index.vue
@@ -7,10 +7,13 @@
         <span class="trend-title">瓒嬪娍鍒嗘瀽</span>
         <el-form ref="form" :model="search" label-width="6vw">
           <el-form-item label="绫诲瀷鏌ヨ">
-            <el-input v-model="search.type" placeholder="鍐呭淇℃伅"></el-input>
+            <el-select v-model="search.type" placeholder="鍐呭淇℃伅">
+              <el-option v-for="option in categoryOptions" :key="option.value" :value="option.value" :label="option.label" ></el-option>
+            </el-select>
           </el-form-item>
-          <el-form-item label="鏃堕棿鑼冨洿">
-            <el-input v-model="search.timeRange" suffix-icon="el-icon-date" placeholder="閫夋嫨鏃堕棿鑼冨洿"></el-input>
+          <el-form-item class="time-area" label="鏃堕棿鑼冨洿">
+            <el-date-picker v-model="search.timeRange" type="datetimerange" value-format="yyyy-MM-dd HH:mm:ss">
+            </el-date-picker>
           </el-form-item>
         </el-form>
       </div>
@@ -18,39 +21,21 @@
       <div class="trend-data-show">
         <!-- 鐐逛綅鍒囨崲 -->
         <div class="trend-data-header">
-          <el-button type="text" @click="highFlag = true">楂樺彂鐐逛綅</el-button>
-          <el-button type="text" @click="highFlag = false">棣栨杩濊鐐逛綅</el-button>
+          <el-button type="text" @click="tabChange(1)">楂樺彂鐐逛綅</el-button>
+          <el-button type="text" @click="tabChange(2)">棣栨杩濊鐐逛綅</el-button>
         </div>
         <!-- 瀵瑰簲鏁版嵁 -->
         <div class="trend-data-main">
-          <!--  -->
-          <div class="high-point" v-if="highFlag">
-            <div class="point-item" v-for="item in highList" :key="item.id">
-              <span>{{ item.pointName }}</span>
-              <span>{{ item.count }}</span>
-            </div>
-          </div>
-          <!-- 棣栨杩濊 -->
-          <div class="first-point" v-else>
-            <div class="point-item" v-for="item in fisrtList" :key="item.id">
-              <span>{{ item.pointName }}</span>
-              <span>{{ item.count }}</span>
-            </div>
+          <div class="point-item" v-for="item in trendAnalysisList" :key="item.id" @click="pointClick(item)">
+            <span>{{ item.name }}</span>
+            <span>{{ item.count }}</span>
           </div>
         </div>
       </div>
     </div>
     <div class="trend-main">
-      <div class="trend-main-echarts" id="myRef">
+      <div class="trend-main-echarts" id="echarts">
 
-      </div>
-    </div>
-    <div class="trend-footer" v-if="timeRangeFlag">
-      <!-- 閫夋嫨鏃堕棿鑼冨洿 -->
-      <div class="time-area">
-        <el-date-picker v-model="search.timeRange" type="datetimerange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
-          end-placeholder="缁撴潫鏃ユ湡">
-        </el-date-picker>
       </div>
     </div>
   </div>
@@ -58,78 +43,44 @@
 
 <script>
 import * as echarts from 'echarts'
-import { transform } from 'echarts-stat';
+import basecase from "@/api/operate/basecase";
+import { CATEGOTY } from "@/utils/helper";
+
 export default {
+  created() {
+    this.searchList()
+  },
+
+  mounted() {
+    this.renderEchart();
+  },
+
+  computed: {
+    categoryOptions() {
+      return CATEGOTY;
+    }
+  },
+
   data() {
     return {
       search: {
-        type: '',
-        timeRange: ''
+        type: null,
+        timeRange: null
       },
       timeRangeFlag: false,
-      highList: [
-        {
-          id: 1,
-          pointName: '鍚庡簡璺�200鍙�-鐞�',
-          count: '100娆�',
-        },
-        {
-          id: 2,
-          pointName: '鍚庡簡璺�200鍙�-鐞�',
-          count: '100娆�',
-        },
-        {
-          id: 3,
-          pointName: '鍚庡簡璺�200鍙�-鐞�',
-          count: '100娆�',
-        },
-        {
-          id: 4,
-          pointName: '鍚庡簡璺�200鍙�-鐞�',
-          count: '100娆�',
-        },
-        {
-          id: 5,
-          pointName: '鍚庡簡璺�200鍙�-鐞�',
-          count: '100娆�',
-        },
-      ],
-      fisrtList: [
-        {
-          id: 1,
-          pointName: '鍚庡簡璺�205鍙�-鐞�',
-          count: '1娆�',
-        },
-        {
-          id: 2,
-          pointName: '鍚庡簡璺�204鍙�-鐞�',
-          count: '1娆�',
-        },
-        {
-          id: 3,
-          pointName: '鍚庡簡璺�203鍙�-鐞�',
-          count: '1娆�',
-        },
-        {
-          id: 4,
-          pointName: '鍚庡簡璺�202鍙�-鐞�',
-          count: '1娆�',
-        },
-        {
-          id: 5,
-          pointName: '鍚庡簡璺�201鍙�-鐞�',
-          count: '1娆�',
-        },
-      ],
+      trendAnalysisList: [],
       highFlag: true,
+      echarts: null,
+      pointName: null
     }
   },
   methods: {
-    renderEchart() {
-      // echarts.registerTransform(transform.regression);
-      const myChart = echarts.init(document.getElementById('myRef'));
+    renderEchart(dataList) {
+      if (!this.echarts) {
+        this.echarts = echarts.init(document.getElementById('echarts'));
+      }
       // 缁樺埗鍥捐〃
-      myChart.setOption({
+      this.echarts.setOption({
         xAxis: {
           name: '鏃�/鍛�',
         },
@@ -138,17 +89,38 @@
         },
         series: [
           {
-            data: [10, 22, 28, 23, 19],
+            data: dataList,
             type: 'line',
             smooth: true
           }
         ]
       });
+    },
+    async searchList() {
+      const [startTime, endTime] = this.search.timeRange ?? [null, null];
+      const trendAnalysisParam = {
+        startTime,
+        endTime,
+        type: this.search.type
+      }
+      this.trendAnalysisList = this.highFlag ? await basecase.getTrendAnalysisData(trendAnalysisParam)
+          : await basecase.getFirstTrendAnalysisData(trendAnalysisParam);
+    },
+    tabChange(params) {
+      this.highFlag = params === 1;
+      this.searchList();
+    },
+
+    pointClick(data) {
+      this.pointName = data.name;
+      basecase.getPointTrendAnalysisData({ id: data.id })
+          .then(res => {
+            const countList = res.map(item => +item.count);
+            this.renderEchart(countList);
+          })
+          .catch(err => this.$message.error(err))
     }
   },
-  mounted() {
-    this.renderEchart()
-  }
 }
 </script>
 
@@ -160,7 +132,7 @@
   display: flex;
 
   .trend-side {
-    width: 20vw;
+    width: 30vw;
     text-align: left;
     height: 100%;
     border: 1px solid #09152f;
@@ -199,14 +171,10 @@
       }
 
       .trend-data-main {
-
-        .high-point,
-        .first-point {
-          .point-item {
-            display: flex;
-            padding: 0 2vw;
-            justify-content: space-between;
-          }
+        .point-item {
+          display: flex;
+          padding: 0 2vw;
+          justify-content: space-between;
         }
       }
     }
diff --git a/src/views/operate/disposal/casepool/dispatch/index.vue b/src/views/operate/disposal/casepool/dispatch/index.vue
index 0105df6..c3dec03 100644
--- a/src/views/operate/disposal/casepool/dispatch/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/index.vue
@@ -122,7 +122,7 @@
 import uploadIll from "./updateUser/uploadResult/ill"
 import MyDetail from '@/components/detail'
 import MyIllDetail from '@/components/illdetail'
-import casequery from "@/api/operate/casequery";
+import casequery from "@/api/operate/basecase";
 import helper from '@/utils/mydate'
 export default {
     components: {
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
index ac96037..fe069fd 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -14,7 +14,7 @@
 <script>
 import MyArrive from '../components/arrive'
 import MyEvidence from "../components/evidence"
-import casequery from "@/api/operate/casequery";
+import casequery from "@/api/operate/basecase";
 
 export default {
     components: {
diff --git a/src/views/operate/fivepack/threepack/components/updateUser/index.vue b/src/views/operate/fivepack/threepack/components/updateUser/index.vue
index 97d4bb2..e6948b7 100644
--- a/src/views/operate/fivepack/threepack/components/updateUser/index.vue
+++ b/src/views/operate/fivepack/threepack/components/updateUser/index.vue
@@ -100,7 +100,7 @@
     async created() {
       if (this.storeInfo) {
         this.$set(this, 'store', this.storeInfo);
-        const result = await getVideoPoint({ current: 1, size: 1 });
+        const result = await getVideoPoint({ current: 1, size: 100 });
         this.relationVideoList = result.records;
         if (this.storeInfo && this.isStorePage) {
           this.store.relationVideo = this.store.videoPoint.name;
diff --git a/src/views/operate/message/myIndex/index.vue b/src/views/operate/message/myIndex/index.vue
index 5f644da..d3364fa 100644
--- a/src/views/operate/message/myIndex/index.vue
+++ b/src/views/operate/message/myIndex/index.vue
@@ -3,7 +3,6 @@
         <header>
             <div class="header-nav">
                 <span class="nav-left">鏁版嵁绛涢��</span>
-                <span class="nav-right" @click="showMoreParamsDialog">楂樼骇鎼滅储</span>
             </div>
             <div class="header-content">
                 <div class="search">
@@ -102,12 +101,6 @@
                     </div>
                 </div>
             </div>
-
-            <el-dialog
-                title="楂樼骇鍙傛暟"
-                :visible.sync="isShowMoreParams"
-                width="30%">
-            </el-dialog>
         </main>
     </div>
 </template>
@@ -344,10 +337,6 @@
         changeCurrentPage(page) {
             this.currentPage = page;
             this.getMessageList();
-        },
-
-        showMoreParamsDialog() {
-          this.isShowMoreParams = true;
         },
 
         // 鑷畾涔夊叧闂脊绐�
@@ -595,7 +584,6 @@
     &::v-deep .el-dialog__close {
         width: 20px;
         height: 20px;
-        // color: #fff;
     }
 
     &::v-deep .el-dialog__body {
diff --git a/src/views/operate/sms/smsTemplate/createTemplate/index.vue b/src/views/operate/sms/smsTemplate/createTemplate/index.vue
index bbf7f60..61d5e5d 100644
--- a/src/views/operate/sms/smsTemplate/createTemplate/index.vue
+++ b/src/views/operate/sms/smsTemplate/createTemplate/index.vue
@@ -88,6 +88,7 @@
         // 鏂板缓/淇濆瓨娑堟伅(1:鏂板缓,0淇濆瓨娑堟伅)
         handleSubmit() {
             this.$refs.user.validate((valid) => {
+              this.role.body = this.$refs.edit.editor.txt.html();
                 if (valid) {
                   if (this.dialogType === 'create') {
                     SMS.addNewSMSTemplate(this.role)
diff --git a/src/views/operate/viewEvent/index.vue b/src/views/operate/viewEvent/index.vue
index 162b08a..f07ee50 100644
--- a/src/views/operate/viewEvent/index.vue
+++ b/src/views/operate/viewEvent/index.vue
@@ -148,7 +148,7 @@
 import MyDetail from '@/components/detail'
 import MyIllDetail from '@/components/illdetail'
 import helper from '@/utils/mydate'
-import casequery from "@/api/operate/casequery";
+import casequery from "@/api/operate/basecase";
 
 export default {
     components: {
diff --git a/src/views/systemSetting/device/bayonet/create/index.vue b/src/views/systemSetting/device/bayonet/create/index.vue
index 921e3b4..31c6da0 100644
--- a/src/views/systemSetting/device/bayonet/create/index.vue
+++ b/src/views/systemSetting/device/bayonet/create/index.vue
@@ -129,6 +129,9 @@
 
   created() {
     this.bayonet = deepClone(this.originalBayonet);
+    if (this.originalBayonet) {
+      this.bayonet.bayonetName = this.originalBayonet.name;
+    }
   },
 
   methods: {
diff --git a/vue.config.js b/vue.config.js
index 156bf9d..d97f668 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -95,14 +95,6 @@
     config
       .when(process.env.NODE_ENV !== 'development',
         config => {
-          // config
-          //   .plugin('ScriptExtHtmlWebpackPlugin')
-          //   .after('html')
-          //   .use('script-ext-html-webpack-plugin', [{
-          //   // `runtime` must same as runtimeChunk name. default is `runtime`
-          //     inline: /runtime\..*\.js$/
-          //   }])
-          //   .end()
           config
             .optimization.splitChunks({
               chunks: 'all',

--
Gitblit v1.8.0