From a7bea838a0a8a0cff5db3f53ecd832f0b0b1b2db Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sun, 25 Apr 2021 11:12:46 +0800
Subject: [PATCH] 设备管理编辑页面坐标地址栏合并,经纬度栏调整位置

---
 src/views/clientManagement/clientManagement.vue |  254 ++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 211 insertions(+), 43 deletions(-)

diff --git a/src/views/clientManagement/clientManagement.vue b/src/views/clientManagement/clientManagement.vue
index 3463c20..39418a2 100644
--- a/src/views/clientManagement/clientManagement.vue
+++ b/src/views/clientManagement/clientManagement.vue
@@ -140,6 +140,7 @@
             </el-form-item>
           </el-col>
         </el-form>
+        
       </el-dialog>
 
 
@@ -265,8 +266,8 @@
           height: 'auto',
           indexLabel: '序号',
           calcHeight: 80,
-          labelWidth: '100',
-          dialogWidth: 950,
+          labelWidth: '125',
+          dialogWidth: 960,
           menuWidth: 150,
           align:"center",
           size: "mini",
@@ -289,6 +290,11 @@
               searchPlaceholder: "设备名称/编号",
               search: true,
               sortable:true,
+              rules: [{
+                required: true,
+                message: "请输入设备名称",
+                trigger: "blur"
+              }],
             },
             {
               label: "到期时间",
@@ -318,7 +324,7 @@
               width: 130,
               rules: [
                 {
-                  required: false,
+                  required: true,
                   message: "请输入设备编号",
                   trigger: "click"
                 }
@@ -330,17 +336,39 @@
               width: 200,
               type: "tree",
               dicUrl: "/api/blade-system/dept/trees",
+              multiple: true,
+              dicData: [],
+              checkStrictly:true,
               props: {
                 label: "title"
               },
               rules: [
                 {
-                  required: false,
+                  required: true,
                   message: "请选择使用方",
                   trigger: "click"
                 }
               ]
             },
+            // {
+            //   label: "使用方",
+            //   prop: "deptId",
+            //   width: 200,
+            //   type: "cascader",
+            //   dicUrl: "/api/blade-system/dept/trees",
+            //   multiple: true,
+            //   dicData: [],
+            //   props: {
+            //     label: "title"
+            //   },
+            //   rules: [
+            //     {
+            //       required: true,
+            //       message: "请选择使用方",
+            //       trigger: "click"
+            //     }
+            //   ]
+            // },
             {
               label: "序列号",
               prop: "serialNumber",
@@ -348,6 +376,11 @@
               addDisplay: true,
               editDisplay: true,
               viewDisplay: true,
+              rules: [{
+                required: true,
+                message: "请输入序列号",
+                trigger: "blur"
+              }],
             },
             {
               label: "通道号",
@@ -356,6 +389,11 @@
               addDisplay: true,
               editDisplay: true,
               viewDisplay: true,
+              rules: [{
+                required: true,
+                message: "请输入通道号",
+                trigger: "blur"
+              }],
             }, {
               label: "缴费状态",
               prop: "jfzt",
@@ -408,7 +446,8 @@
               label: "省份",
               prop: "province",
               search: true,
-              searchSpan: 3,
+              searchSpan: 2,
+              labelWidth: '112',
               searchLabelWidth: 45,
               placeholder: "省份",
               type: "select",
@@ -421,7 +460,6 @@
               span: 6,
               className: "city1",
               hide: true,
-              // width: 10,
               addDisplay: true,
               editDisplay: true,
               viewDisplay: true,
@@ -470,34 +508,92 @@
               editDisplay: true,
               viewDisplay: true,
             }, {
-              label: "街道",
+              label: "地址",
               prop: "street",
-              width: 200,
+              // type:"map",
+              span:10,
+              labelWidth: '142',
+              width:100,
+              hide: true,
+            },
+            {
+              label: null,
+              prop: "map",
+              labelWidth: "0",
+              searchSpan:0,
+              maxlength:0,
+              hide: true,
+              span: 2,
+              // display:false,
+              component: "AvueMap"
+            },
+            {
+              label: "经度",
+              hide: true,
+              prop: "jd",
+              searchSpan:2,
+              formatter: (row,value,label,column)=>{
+                  return value = value.substring(0,11);
+              },
+              span:7,
+            },
+            {
+              label: "纬度",
+              labelWidth:50,
+              hide: true,
+              prop: "wd",
+              formatter: (row,value,label,column) => {
+                return value = value.substring(0,10);
+              },
+              span:5,
+            },
+             {
+              label: "心跳时间",
+              prop: "heartbeat",
+              type: "datetime",
+              format: "yyyy-MM-dd",
+              valueFormat: "yyyy-MM-dd HH:mm:ss",
+              width: 130,
               hide: true,
               addDisplay: true,
               editDisplay: true,
               viewDisplay: true,
             },
             {
-              label: "地址",
-              prop: "map",
-              hide: true,
-              span: 24,
-              component: "AvueMap",
-            },
-            {
-              label: "经度",
-              hide: true,
-              prop: "jd",
-            },
-            {
-              label: "纬度",
-              hide: true,
-              prop: "wd",
-            },
-            {
-              label: "负责人",
+              label: "负责人1",
               prop: "oneId",
+              type: "tree",
+              dicUrl: "/api/blade-system/dept/Batrees",
+              props: {
+                label: "title"
+              },
+              width: 72,
+              hide: true,
+              addDisplay: true,
+              editDisplay: true,
+              viewDisplay: true,
+              rules: [{
+                required: true,
+                message: "请选择负责人",
+                trigger: "blur"
+              }],
+            },
+            {
+              label: "负责人1电话",
+              prop: "onePhone",
+              width: 110,
+              hide: true,
+              addDisplay: true,
+              editDisplay: true,
+              viewDisplay: true,
+              rules: [{
+                required: true,
+                message: "请输入负责人电话",
+                trigger: "blur"
+              }],
+            }, {
+              label: "负责人2",
+              prop: "twoId",
               type: "tree",
               dicUrl: "/api/blade-system/dept/Batrees",
               props: {
@@ -510,8 +606,30 @@
               viewDisplay: true,
             },
             {
-              label: "负责人电话",
-              prop: "onePhone",
+              label: "负责人2电话",
+              prop: "twoPhone",
+              width: 110,
+              hide: true,
+              addDisplay: true,
+              editDisplay: true,
+              viewDisplay: true,
+            }, {
+              label: "负责人3",
+              prop: "threeId",
+              type: "tree",
+              dicUrl: "/api/blade-system/dept/Batrees",
+              props: {
+                label: "title"
+              },
+              width: 72,
+              hide: true,
+              addDisplay: true,
+              editDisplay: true,
+              viewDisplay: true,
+            },
+            {
+              label: "负责人3电话",
+              prop: "threePhone",
               width: 110,
               hide: true,
               addDisplay: true,
@@ -546,17 +664,6 @@
               addDisplay: true,
               editDisplay: true,
               viewDisplay: true,
-            }, {
-              label: "心跳时间",
-              prop: "heartbeat",
-              type: "datetime",
-              format: "yyyy-MM-dd",
-              valueFormat: "yyyy-MM-dd HH:mm:ss",
-              width: 130,
-              hide: true,
-              addDisplay: true,
-              editDisplay: true,
-              viewDisplay: true,
             },
 
           ]
@@ -568,11 +675,23 @@
       "form.map": {
         // form是表单或者表格绑定的数据集,v-model='form'
         handler(val) {
-
           if (val) {
-            this.form.wd = val.latitude;
-            this.form.jd = val.longitude;
-            this.form.street = val.formattedAddress;
+            console.log(val,111);
+            this.form.wd = val.latitude.toString().substring(0,10);
+            this.form.jd = val.longitude.toString().substring(0,11);
+            //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
+            var address = val.formattedAddress.toString();
+            if(address.search("县") != -1){
+                this.form.street = address.substring(address.indexOf("县")+1,address.length);
+            }
+            if(address.search("区") != -1){
+              this.form.street = address.substring(address.indexOf("区")+1,address.length);
+            }
+
+            // this.form.province = val.addressComponent.province;
+            // console.log( val.addressComponent.city,123456)
+            // this.form.city = val.addressComponent.city;
+            // this.form.district = val.addressComponent.district;
           }
         },
         immediate: true,
@@ -589,7 +708,34 @@
             });
           }
         },
+      },
+      "form.twoId":{
+        handler(val) {
+          var that = this;
+          if (val != null && val !=""){
+            getBaTree(val).then(res => {
+              if (res) {
+                that.form.twoPhone = res.data.data.records[0].phone;
+                that.form.twoContacts = res.data.data.records[0].name;
+              }
+            });
+          }
+        },
+      },
+      "form.threeId":{
+        handler(val) {
+          var that = this;
+          if (val != null && val !=""){
+            getBaTree(val).then(res => {
+              if (res) {
+                that.form.threePhone = res.data.data.records[0].phone;
+                that.form.threeContacts = res.data.data.records[0].name;
+              }
+            });
+          }
+        },
       }
+      
     },
     computed: {
       ...mapGetters(["permission"]),
@@ -623,6 +769,7 @@
           window.console.log(error);
         });
       },
+      
       handleClick(row) {
         this.form = row;
         this.dialogTableVisible = true;
@@ -648,6 +795,9 @@
         });
       },
       rowUpdate(row, index, done, loading) {
+        debugger;
+        row.jd=row.map.latitude;
+        row.wd=row.map.longitude;
         update(row).then(() => {
           this.onLoad(this.page);
           this.$message({
@@ -765,6 +915,7 @@
 
         this.loading = true;
         getList(page.currentPage, page.pageSize, values, this.treeDeptId).then(res => {
+          debugger;
           const data = res.data.data;
           this.page.total = data.total;
 
@@ -1017,4 +1168,21 @@
     padding-right: 5px;
   }
 
+
+
+</style>
+
+
+<style>
+  .avue-map input{
+    position: relative !important;
+    left: 30px !important;
+  }
+
+  .avue-map .el-input-group__append{
+    position: relative !important;
+    left: -51px !important;
+  }
+
+
 </style>

--
Gitblit v1.9.3