From 124f80d24929c3be9444b1d28b02f1c93c6cd815 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sat, 05 Mar 2022 21:34:16 +0800
Subject: [PATCH] 电子围栏修改

---
 src/views/securityGuard/securityGuard.vue |   13 ---
 src/api/rail/rail.js                      |   11 ++
 src/views/rail/rail.vue                   |  180 +++++++++++++++++++++++++++++++--------------
 src/views/trainingRegistration/index.vue  |    1 
 4 files changed, 137 insertions(+), 68 deletions(-)

diff --git a/src/api/rail/rail.js b/src/api/rail/rail.js
index 1d2d63a..78ad9f3 100644
--- a/src/api/rail/rail.js
+++ b/src/api/rail/rail.js
@@ -36,4 +36,15 @@
             ids,
         }
     })
+}
+
+export const getRailTree = (type, deptId) => {
+    return request({
+        url: '/api/blade-system/dept/lazy-tree-rail',
+        method: 'get',
+        params: {
+            type,
+            deptId,
+        }
+    })
 }
\ No newline at end of file
diff --git a/src/views/rail/rail.vue b/src/views/rail/rail.vue
index 018add1..788f3aa 100644
--- a/src/views/rail/rail.vue
+++ b/src/views/rail/rail.vue
@@ -3,7 +3,7 @@
     :class="[
       'securityUnit',
       $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
-      $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : ''
+      $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : '',
     ]"
   >
     <avue-crud
@@ -11,6 +11,7 @@
       :option="option"
       :data="data"
       :page.sync="page"
+      v-model="form"
       ref="crud"
       :permission="permissionList"
       @on-load="onLoad"
@@ -66,12 +67,7 @@
 </template>
 
 <script>
-import {
-  getList,
-  add,
-  update,
-  remove
-} from "@/api/rail/rail";
+import { getList, add, update, remove, getRailTree } from "@/api/rail/rail";
 import { mapGetters } from "vuex";
 export default {
   data() {
@@ -82,13 +78,17 @@
         pageSize: 10,
         currentPage: 1,
         total: 0,
-        ...this.$store.state.control.changePageSize
+        ...this.$store.state.control.changePageSize,
       },
+      form: {},
       query: {},
       data: [],
+      dicData1: [],
+      dicData2: [],
+      dicData3: [],
       option: {
         index: true,
-        tip:false,
+        tip: false,
         addBtn: true,
         viewBtn: true,
         searchSize: "mini",
@@ -106,43 +106,81 @@
             searchSpan: 4,
             labelWidth: 145,
             minWidth: 160,
-            span:24,
+            span: 24,
             rules: [
               {
                 required: true,
                 message: "请输入围栏名称",
-                trigger: "click"
-              }
+                trigger: "click",
+              },
             ],
-            overHidden: true
+            overHidden: true,
           },
-          
           {
             label: "类型",
             prop: "type",
             span: 12,
             labelWidth: 145,
-            disabled: false,
+            search: true,
+            searchSpan: 4,
+            type: "select",
+            dicData: [
+              {
+                label: "本单位",
+                value: 1,
+              },
+              {
+                label: "分公司",
+                value: 2,
+              },
+              {
+                label: "服务单位",
+                value: 3,
+              },
+            ],
             rules: [
               {
                 required: true,
                 message: "请选择类型",
-                trigger: "blur"
-              }
-            ]
+                trigger: "blur",
+              },
+            ],
           },
           {
             label: "企业名称",
-            prop: "partyb",
-            span: 12,
-            labelWidth: 145,
-            disabled: false,
+            prop: "companyName",
+            display:false,
+            minWidth: 160,
+            span: 24,
             rules: [
               {
                 required: true,
                 message: "请输入企业名称",
-                trigger: "blur"
-              }
+                trigger: "click",
+              },
+            ],
+            overHidden: true,
+          },
+          {
+            label: "企业名称",
+            prop: "companyId",
+            span: 12,
+            labelWidth: 145,
+            type: "tree",
+            hide:true,
+            props: {
+              label: "title",
+              value: "id",
+            },
+            rules: [
+              {
+                required: true,
+                message: "请输入企业名称",
+                trigger: "blur",
+              },
+            ],
+            dicData: [
+              
             ]
           },
           {
@@ -152,15 +190,14 @@
             type: "date",
             format: "yyyy-MM-dd HH:mm:ss",
             valueFormat: "yyyy-MM-dd HH:mm:ss",
-            addDisabled:false,
-            addDisplay:false,
+            display:false,
             rules: [
               {
                 required: true,
                 message: "请选择创建日期",
-                trigger: "blur"
-              }
-            ]
+                trigger: "blur",
+              },
+            ],
           },
           {
             label: "路线展示",
@@ -172,13 +209,14 @@
             span: 24,
             formslot: true,
             addDisplay: true,
-          }
+          },
         ],
-        ...this.$store.state.control.clearOtherBut
-      }
+        ...this.$store.state.control.clearOtherBut,
+      },
     };
   },
   created() {
+    this.getRailLazyTree();
   },
   computed: {
     ...mapGetters(["userInfo", "permission"]),
@@ -187,21 +225,51 @@
         addBtn: this.vaildData(this.permission.rail_add, false),
         viewBtn: this.vaildData(this.permission.rail_view, false),
         delBtn: this.vaildData(this.permission.rail_delete, false),
-        editBtn: this.vaildData(this.permission.rail_edit, false)
+        editBtn: this.vaildData(this.permission.rail_edit, false),
       };
     },
     ids() {
       let ids = [];
-      this.selectionList.forEach(ele => {
+      this.selectionList.forEach((ele) => {
         ids.push(ele.id);
       });
       return ids.join(",");
+    },
+  },
+  watch: {
+    "form.type": {
+      handler(val) {
+        var companyIdcolumn = this.findObject(this.option.column, "companyId");
+        if(val==1){
+            companyIdcolumn.dicData = this.dicData1;
+        }
+        if(val==2){
+            companyIdcolumn.dicData = this.dicData2;
+        }
+        if(val==3){
+            companyIdcolumn.dicData = this.dicData3;
+        }
+      },
+      immediate: true,
     },
   },
   mounted() {
     this.$store.commit("setWindowSizeHeightAdd");
   },
   methods: {
+    //获取单位树数据
+    getRailLazyTree() {
+      let that = this;
+      getRailTree(1,this.userInfo.dept_id).then((res) => {
+        that.dicData1 = res.data.data;
+      });
+      getRailTree(2,this.userInfo.dept_id).then((res) => {
+        that.dicData2 = res.data.data;
+      });
+      getRailTree(3,this.userInfo.dept_id).then((res) => {
+        that.dicData3 = res.data.data;
+      });
+    },
     sizeChange(val) {
       this.page1.currentPage = 1;
       this.page1.pageSize = val;
@@ -213,18 +281,18 @@
       this.onLoad(this.page, this.query);
     },
     rowSave(form, done, loading) {
-      add(form).then(res => {
+      add(form).then((res) => {
         if (res.data.success) {
           this.$message({
             message: "操作成功",
-            type: "success"
+            type: "success",
           });
           this.refreshChange();
           done();
         } else {
           this.$message({
             message: "操作失败",
-            type: "warning"
+            type: "warning",
           });
           done();
         }
@@ -246,25 +314,22 @@
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           done();
         },
-        error => {
+        (error) => {
           window.console.log(error);
           loading();
         }
       );
     },
     rowDel(row) {
-      this.$confirm(
-        "确定删除当前合同信息数据?",
-        {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }
-      )
+      this.$confirm("确定删除当前合同信息数据?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
         .then(() => {
           console.log(row);
           return remove(row.id);
@@ -273,7 +338,7 @@
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
         });
     },
@@ -288,10 +353,10 @@
       this.$confirm("确定批量将选择数据删除?", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
-        type: "warning"
+        type: "warning",
       })
         .then(() => {
-          return remove(this.ids).then(res => {
+          return remove(this.ids).then((res) => {
             this.refreshChange();
           });
         })
@@ -299,17 +364,21 @@
           this.onLoad(this.page);
           this.$message({
             type: "success",
-            message: "操作成功!"
+            message: "操作成功!",
           });
           this.$refs.crudrec.toggleSelection();
         })
-        .catch(res => {});
+        .catch((res) => {});
     },
     refreshChange() {
       this.onLoad(this.page, this.query);
     },
     onLoad(page, params = {}) {
-      if(this.userInfo.role_name == "公安管理员" || this.userInfo.role_name == "民警" || this.userInfo.role_name == "administrator"){
+      if (
+        this.userInfo.role_name == "公安管理员" ||
+        this.userInfo.role_name == "民警" ||
+        this.userInfo.role_name == "administrator"
+      ) {
         params["jurisdiction"] = this.userInfo.jurisdiction;
       }
       this.loading = true;
@@ -317,7 +386,7 @@
         page.currentPage,
         page.pageSize,
         Object.assign(params, this.query)
-      ).then(res => {
+      ).then((res) => {
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
@@ -325,7 +394,7 @@
         this.$store.commit("setWindowSizeHeightAdd");
         this.loading = false;
       });
-    }
+    },
   },
 };
 </script>
@@ -337,7 +406,6 @@
   //   border: 1px solid #000;
   box-sizing: border-box;
 }
-
 
 .mapClass div label {
   display: none;
diff --git a/src/views/securityGuard/securityGuard.vue b/src/views/securityGuard/securityGuard.vue
index 36f9d2a..a3e53ef 100644
--- a/src/views/securityGuard/securityGuard.vue
+++ b/src/views/securityGuard/securityGuard.vue
@@ -1208,11 +1208,6 @@
               {
                 label: "是否持证",
                 prop: "hold",
-                // dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
-                // props: {
-                //   label: "dictValue",
-                //   value: "dictKey",
-                // },
                 type: "select",
                 dicData: [
                   {
@@ -1547,7 +1542,7 @@
           "securitynumber"
         );
         // var emailcolumn = this.findObject(this.option.group, "email");
-        // console.log(val,1234);
+        console.log(val,1234);
         if (val == 1) {
           securitynumbercolumn.display = true;
           securitynumbercolumn.rules = [
@@ -2238,12 +2233,6 @@
         cancelButtonText: "取消",
         type: "warning",
       }).then(() => {
-        //获取查询条件
-        // const { releaseTimeRange } = this.search;
-        // if (releaseTimeRange) {
-        //   this.search["startTime"] = releaseTimeRange[0];
-        //   this.search["endTime"] = releaseTimeRange[1];
-        // }
         var data = {
           cardid: this.search.cardid,
           deptId: this.search.deptId,
diff --git a/src/views/trainingRegistration/index.vue b/src/views/trainingRegistration/index.vue
index 25dfc37..6940595 100644
--- a/src/views/trainingRegistration/index.vue
+++ b/src/views/trainingRegistration/index.vue
@@ -70,6 +70,7 @@
           size="small"
           plain
           icon="el-icon-checked"
+          v-if="permission.batch_vip"
           @click="usesVipConfirmBatch"
           >批量缴费
         </el-button>

--
Gitblit v1.9.3