From 63ad2c3598400370dd7da5534659fd7e768a0a4a Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Mon, 16 May 2022 17:29:46 +0800
Subject: [PATCH] 地址替换

---
 src/views/activitys/real.vue |  357 +++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 223 insertions(+), 134 deletions(-)

diff --git a/src/views/activitys/real.vue b/src/views/activitys/real.vue
index 212a8f4..36a7c89 100644
--- a/src/views/activitys/real.vue
+++ b/src/views/activitys/real.vue
@@ -27,14 +27,13 @@
       <!-- @row-click="rowClick" -->
       <template slot="menuLeft">
         <el-button
-          type="danger"
           v-show="true"
           size="mini"
           icon="el-icon-delete"
           plain
           v-if="permission.real_delete"
           @click="handleDelete"
-        >删 除
+          >删 除
         </el-button>
       </template>
 
@@ -86,22 +85,22 @@
 
       <template slot-scope="{ row }" slot="jtype">
         <el-tag
-        >{{
+          >{{
             row.jtype == "0" || row.jtype == ""
               ? "未派发"
               : row.jtype == "1" &&
-              (row.securityId == null || row.securityId == "")
+                (row.securityId == null || row.securityId == "")
               ? "未接收"
               : row.jtype == "1" &&
-              (row.securityId != null || row.securityId != "")
-                ? "已接收"
-                : "已处置"
+                (row.securityId != null || row.securityId != "")
+              ? "已接收"
+              : "已处置"
           }}
         </el-tag>
       </template>
       <template slot-scope="{ row }" slot="cid">
         <el-tag
-        >{{
+          >{{
             row.cid == "1" ? "事件发生" : row.cid == "3" ? "是" : "事件恢复"
           }}
         </el-tag>
@@ -114,13 +113,13 @@
           :size="size"
           :type="type"
           @click.stop="PoliceTracking(row)"
-        >派发
+          >派发
         </el-button>
       </template>
 
       <template slot-scope="{ type, disabled }" slot="lineForm">
         <div class="mapClassMain" style="width: 860px; height: 400px">
-          <Map ref="modalForm"/>
+          <Map ref="modalForm" />
         </div>
       </template>
     </avue-crud>
@@ -147,7 +146,7 @@
   add,
   getclient,
 } from "@/api/activitys/activitys";
-import {mapGetters} from "vuex";
+import { mapGetters } from "vuex";
 import AvueMap from "avue-plugin-map";
 
 export default {
@@ -188,7 +187,7 @@
         dialogClickModal: false,
         column: [
           {
-            label: "任务标题",
+            label: "巡查标题",
             prop: "rname",
             search: true,
             searchSpan: 4,
@@ -201,25 +200,48 @@
               },
             ],
           },
-
           {
-            label: "下发时间",
+            label: "开始时间",
             type: "datetime",
             prop: "time",
             width: 160,
+            addDisplay: false,
+            viewDisplay: false,
+            editDisplay: false,
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },{
+            label: "结束时间",
+            type: "datetime",
+            prop: "endtime",
+            width: 160,
+            addDisplay: false,
+            viewDisplay: false,
+            editDisplay: false,
+            format: "yyyy-MM-dd HH:mm:ss",
+            valueFormat: "yyyy-MM-dd HH:mm:ss",
+          },
+          {
+            label: "开始时间",
+            type: 'datetimerange',
+            hide: true,
+            prop: "timeList",
+            width: 160,
             span: 12,
+            startPlaceholder: '任务开始时间',
+            endPlaceholder: '预估结束时间',
             format: "yyyy-MM-dd HH:mm:ss",
             valueFormat: "yyyy-MM-dd HH:mm:ss",
             rules: [
               {
                 required: true,
-                message: "请选择报警时间",
+                message: "请选择时间范围",
                 trigger: "blur",
               },
             ],
           },
           {
-            label: "任务封面",
+            label: "封面",
             prop: "url",
             // align:'center',
             width: 80,
@@ -256,7 +278,7 @@
           //   ],
           // },
           {
-            label: "任务内容",
+            label: "巡查内容",
             prop: "content",
             span: 24,
           },
@@ -306,90 +328,147 @@
           //   span: 5,
           // },
           {
-            label: "省份",
-            prop: "province",
-            // search: true,
-            width: 100,
-            searchSpan: 2,
-            searchLabelWidth: 45,
-            placeholder: "省份",
-            type: "select",
-            value: "36",
+            label: "所属辖区",
+            prop: "jurisdiction",
+            searchLabelWidth: 80,
+            search: true,
+            searchSpan: 4,
+            overHidden: true,
+            parent: false,
+            type: "tree",
+            dicUrl: "/api/jurisdiction/lazy-tree",
             props: {
-              label: "name",
-              value: "code",
+              label: "title",
+              value: "id",
             },
-            cascaderItem: ["city", "district"],
-            dicUrl: "/api/blade-system/region/select",
-            span: 6,
-            className: "cityreal1",
-            addDisplay: true,
-            editDisplay: true,
-            viewDisplay: true,
+            checkStrictly: true,
+            rules: [
+              {
+                required: true,
+                message: "请选择所属辖区",
+                trigger: "click",
+              },
+            ],
+          },
+          // {
+          //   label: "省份",
+          //   hide: true,
+          //   prop: "province",
+          //   // search: true,
+          //   width: 100,
+          //   searchSpan: 2,
+          //   searchLabelWidth: 45,
+          //   placeholder: "省份",
+          //   type: "select",
+          //   value: "36",
+          //   props: {
+          //     label: "name",
+          //     value: "code",
+          //   },
+          //   cascaderItem: ["city", "district"],
+          //   dicUrl: "/api/blade-system/region/select",
+          //   span: 6,
+          //   className: "cityreal1",
+          //   addDisplay: true,
+          //   editDisplay: true,
+          //   viewDisplay: true,
+          // },
+          // {
+          //   label: "地市",
+          //   hide: true,
+          //   prop: "city",
+          //   type: "select",
+          //   width: 100,
+          //   searchPlaceholder: "地市",
+          //   placeholder: "地市",
+          //   searchLabelWidth: 1,
+          //   value: "3601",
+          //   searchSpan: 2,
+          //   // search: true,
+          //   props: {
+          //     label: "name",
+          //     value: "code",
+          //   },
+          //   dicUrl: "/api/blade-system/region/select?code={{key}}",
+          //   span: 3,
+          //   labelWidth: "0",
+          //   className: "cityreal2",
+          //   addDisplay: true,
+          //   editDisplay: true,
+          //   viewDisplay: true,
+          // },
+          // {
+          //   label: "区县",
+          //   hide: true,
+          //   searchSpan: 2,
+          //   searchLabelWidth: 1,
+          //   width: 100,
+          //   searchPlaceholder: "区县",
+          //   placeholder: "区县",
+          //   // search: true,
+          //   prop: "district",
+          //   type: "select",
+          //   props: {
+          //     label: "name",
+          //     value: "code",
+          //   },
+          //   dicUrl: "/api/blade-system/region/select?code={{key}}",
+          //   span: 3,
+          //   labelWidth: "0",
+          //   className: "cityreal3",
+          //   addDisplay: true,
+          //   editDisplay: true,
+          //   viewDisplay: true,
+          // },
+          {
+            label: "集合点",
+            prop: "gathername",
+            labelWidth: 100,
+            span: 9,
+            overHidden: true,
+            rules: [
+              {
+                required: true,
+                message: "请选择地址",
+                trigger: "blur",
+              },
+            ],
           },
           {
-            label: "地市",
-            prop: "city",
-            type: "select",
-            width: 100,
-            searchPlaceholder: "地市",
-            placeholder: "地市",
-            searchLabelWidth: 1,
-            value: "3601",
-            searchSpan: 2,
-            // search: true,
-            props: {
-              label: "name",
-              value: "code",
-            },
-            dicUrl: "/api/blade-system/region/select?code={{key}}",
-            span: 3,
-            labelWidth: "0",
-            className: "cityreal2",
-            addDisplay: true,
-            editDisplay: true,
-            viewDisplay: true,
+            label: null,
+            prop: "map",
+            labelWidth: 10,
+            searchSpan: 0,
+            // maxlength: 5,
+            hide: true,
+            span: 2,
+            // display:false,
+            component: "AvueMap",
           },
           {
-            label: "区县",
-            searchSpan: 2,
-            searchLabelWidth: 1,
-            width: 100,
-            searchPlaceholder: "区县",
-            placeholder: "区县",
-            // search: true,
-            prop: "district",
-            type: "select",
-            props: {
-              label: "name",
-              value: "code",
-            },
-            dicUrl: "/api/blade-system/region/select?code={{key}}",
-            span: 3,
-            labelWidth: "0",
-            className: "cityreal3",
-            addDisplay: true,
-            editDisplay: true,
-            viewDisplay: true,
-          },
-          {
-            label: "任务状态",
+            label: "巡查状态",
             prop: "rtype",
             type: "select",
-            span: 6,
-            value: "0",
+            value: "2",
+            rules: [
+              {
+                required: true,
+                message: "请选择巡查状态",
+                trigger: "blur",
+              },
+            ],
             dicData: [
               {
                 label: "任务开始",
-                value: "0",
-              },
-              {
-                label: "正在进行",
-                value: "1",
+                value: "2",
               },
               {
                 label: "任务结束",
-                value: "2",
+                value: "1",
+              },
+              {
+                label: "正在进行",
+                value: "0",
               },
             ],
             // label: "任务状态",
@@ -424,6 +503,21 @@
           //   editDisplay: false,
           // },
           {
+            label: "发布人",
+            prop: "fname",
+            // multiple: true,
+            // dicUrl: "/api/catalogs/catalogs/getBigTree",
+            // props: {
+            //   label: "title",
+            // },
+            width: 72,
+            // hide: true,
+            // leafOnly: "",
+            addDisplay: false,
+            editDisplay: false,
+            viewDisplay: false,
+          },
+          {
             label: "积分数值",
             prop: "integral",
             type: "number",
@@ -432,12 +526,12 @@
             // props: {
             //   label: "title",
             // },
-            span: 6,
             width: 72,
             // hide: true,
             minRows: 1,
-            value: 1,
+            value: 5,
             // leafOnly: "",
+            disabled: true,
             addDisplay: true,
             editDisplay: true,
             viewDisplay: true,
@@ -451,7 +545,6 @@
             // props: {
             //   label: "title",
             // },
-            span: 6,
             width: 72,
             // hide: true,
             minRows: 1,
@@ -460,33 +553,13 @@
             addDisplay: true,
             editDisplay: true,
             viewDisplay: true,
-          },
-          {
-            label: "所属辖区",
-            prop: "jurisdiction",
-            hide: true,
-            searchLabelWidth: 80,
-            search: true,
-            searchSpan: 4,
-            overHidden: true,
-            span: 9,
-            width: 72,
-            parent: false,
-            type: "tree",
-            dicUrl: "/api/jurisdiction/lazy-tree",
-            props: {
-              label: "title",
-              value: "id"
-            },
-            checkStrictly: true,
-            slot: true,
             rules: [
               {
-                required: false,
-                message: "请选择所属辖区",
-                trigger: "click"
-              }
-            ]
+                required: true,
+                message: "请输入接收人数",
+                trigger: "blur",
+              },
+            ],
           },
           // {
           //   label: "巡逻路线",
@@ -502,9 +575,8 @@
           // },
           {
             label: "请在下方地图中,建立路径!",
-            labelWidth: "0",
+            labelWidth: 0,
             className: "mapClass",
-            span: 8,
             prop: "haveMap",
             hide: true,
             display: true,
@@ -568,15 +640,17 @@
           this.form.wd = val.latitude;
           this.form.jd = val.longitude;
 
+          this.form.gather = val.latitude + "," + val.longitude;
+
           var address = val.formattedAddress.toString();
           if (address.search("县") != -1) {
-            this.form.place = address.substring(
+            this.form.gathername = address.substring(
               address.indexOf("县") + 1,
               address.length
             );
           }
           if (address.search("区") != -1) {
-            this.form.place = address.substring(
+            this.form.gathername = address.substring(
               address.indexOf("区") + 1,
               address.length
             );
@@ -677,14 +751,18 @@
   methods: {
     rowSave(row, done, loading) {
       // console.log(row);
+      // console.log(this.userInfo);
       // return;
       var userId1 = this.userInfo.user_id;
-      var username = this.userInfo.user_name;
+      var username = this.userInfo.nick_name;
+      var phone = this.userInfo.phone;
+      let latleng = row.map.latitude + "," + row.map.longitude;
       let d = {
         line: row.line, //路线
         rname: row.rname, //标题
         url: row.url, //封面
-        time: row.time, //下发时间
+        time: row.timeList[0], //下发时间
+        endtime: row.timeList[1], //结束时间
         province: row.$province, //省
         city: row.$city, //城市
         district: row.$district, //区县
@@ -692,8 +770,15 @@
         integral: row.integral + "", //积分
         content: row.content, //内容
         rtype: row.rtype, //任务状态
-        fid: userId1,//发起人id
-        fname: username //发起人id
+        fid: userId1, //发起人id
+        serid: userId1, //发起人id
+        fname: username, //发起人id
+        captain: username, //队长
+        phone: phone, //发起人电话
+        jurisdiction: row.jurisdiction,
+        gather: row.gather, //地址经纬度
+        gathername: row.map.formattedAddress, //地址经纬度
+        tasktype: "0", //任务类型0:治安巡查 1:治安义务宣传 2:治安防范培训
       };
       // console.log(d);
       // done();
@@ -720,18 +805,18 @@
         setTimeout(function () {
           try {
             that.$refs.modalForm.addLinesDraw(val);
-          } catch (error) {
-          }
+          } catch (error) {}
         }, 1500);
       } else {
         try {
           that.$refs.modalForm.addLinesDraw(val);
-        } catch (error) {
-        }
+        } catch (error) {}
       }
     },
     rowUpdate(row, index, done, loading) {
       let that = this;
+      row.time = row.timeList[0];
+      row.endtime = row.timeList[1];
       update(row).then(
         () => {
           this.onLoad(this.page);
@@ -768,12 +853,12 @@
       //清空搜索框中的内容
       this.query = {};
       //清空this.$route.query
-      this.$router.push({query: {}});
+      this.$router.push({ query: {} });
       this.onLoad(this.page);
     },
     searchChange(params, done) {
       //清空this.$route.query
-      this.$router.push({query: {}});
+      this.$router.push({ query: {} });
       this.query = params;
       this.page.currentPage = 1;
       this.onLoad(this.page, params);
@@ -809,6 +894,9 @@
         });
     },
     beforeOpen(done, type) {
+      this.form.timeList = [];
+      this.form["timeList"][0]= this.form["time"];
+      this.form["timeList"][1]= this.form["endtime"];
       // console.log(type, "this.formthis.formthis.form");
       // console.log(type);
       // if (["edit", "view"].includes(type)) {
@@ -839,7 +927,8 @@
       this.onLoad(this.page, this.query);
     },
     onLoad(page, params = {}) {
-      getList(page.currentPage, page.pageSize).then((res) => {
+      params["tasktype"] = "0"; // 治安巡查
+      getList(page.currentPage, page.pageSize, params).then((res) => {
         const data = res.data.data;
         this.page.total = data.total;
 
@@ -964,7 +1053,7 @@
     getBRdata(e) {
       this.activeClass = e;
       this.query = {};
-      this.$router.push({query: {}});
+      this.$router.push({ query: {} });
       var today = new Date();
       var params = {};
 
@@ -1080,7 +1169,7 @@
       this.page.currentPage = 1;
       this.onLoad(this.page, params);
     },
-    rowStyle({row, column, rowIndex}) {
+    rowStyle({ row, column, rowIndex }) {
       if (row.jtype == "0") {
         return {
           color: "#ff2727",
@@ -1116,7 +1205,7 @@
         }
       });
       this.$store.state.tags.tagList = arr;
-      this.$router.push({path: `/real/history/${row.deviceNumber}`});
+      this.$router.push({ path: `/real/history/${row.deviceNumber}` });
     },
     handleMap(row) {
       this.showMap = true;
@@ -1223,7 +1312,7 @@
       });
       this.$store.state.tags.tagList = arr;
       //警情追踪
-      this.$router.push({path: "/policeTracking/details", query: row});
+      this.$router.push({ path: "/policeTracking/details", query: row });
     },
     //打开新增窗体
     openAdd() {

--
Gitblit v1.9.3