From edb1a152251d4bef4add7a6f2567cbf6d6c9f017 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 03 Nov 2021 12:04:31 +0800
Subject: [PATCH] 制证申请新增

---
 vue.config.js                                        |    4 
 src/views/securityGuard/securityGuard.vue            |   71 ++++++++++++++++++++++-
 src/api/accreditationRecords/accreditationRecords.js |   49 ++++++++++++++++
 src/views/trainingRegistration/index.vue             |    1 
 4 files changed, 117 insertions(+), 8 deletions(-)

diff --git a/src/api/accreditationRecords/accreditationRecords.js b/src/api/accreditationRecords/accreditationRecords.js
new file mode 100644
index 0000000..113bd65
--- /dev/null
+++ b/src/api/accreditationRecords/accreditationRecords.js
@@ -0,0 +1,49 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params, deptId) => {
+    return request({
+        url: '/api/accreditationRecords/page',
+        method: 'get',
+        params: {
+            ...params,
+            current,
+            size,
+            deptId,
+        }
+    })
+}
+
+export const remove = (ids) => {
+    return request({
+        url: '/api/accreditationRecords/remove',
+        method: 'post',
+        params: {
+            ids,
+        }
+    })
+}
+
+export const add = (row) => {
+    return request({
+        url: '/api/accreditationRecords/submit',
+        method: 'post',
+        data: row
+    })
+}
+
+export const update = (row) => {
+    return request({
+        url: '/api/accreditationRecords/update',
+        method: 'post',
+        data: row
+    })
+}
+
+
+export const securityApply = (row) => {
+    return request({
+        url: '/api/accreditationRecords/securityApply',
+        method: 'post',
+        data: row
+    })
+}
\ No newline at end of file
diff --git a/src/views/securityGuard/securityGuard.vue b/src/views/securityGuard/securityGuard.vue
index 56c52e5..77c8691 100644
--- a/src/views/securityGuard/securityGuard.vue
+++ b/src/views/securityGuard/securityGuard.vue
@@ -58,6 +58,16 @@
               >个人照片批量上传
             </el-button>
             <el-button
+              type="primary"
+              size="small"
+              plain
+              v-if="permission.securityGuard_security_apply"
+              icon="el-icon-s-promotion"
+              @click="handleSecurityApply"
+              >制证申请
+            </el-button>
+            
+            <el-button
               type="danger"
               style="display: none"
               size="small"
@@ -299,6 +309,7 @@
   getUserPractitionersInfo,
   saveOrUpdateUserPractitionersInfo,
 } from "@/api/system/user";
+import {securityApply} from '@/api/accreditationRecords/accreditationRecords'
 import { getList } from "@/api/securityGuard/securityGuard";
 import { getDeptLazyTree } from "@/api/system/dept";
 import { getRoleTree, getRoleDetail } from "@/api/system/role";
@@ -505,12 +516,20 @@
           children: "children",
         },
       },
+      choiceList: [],
       option: {
         height: "auto",
         calcHeight: 80,
-        tip: false,
+        tip: true,
         searchShow: true,
-
+        reserveSelection:true,
+        selectable: (row) => {
+          if (row.hold!=="1") {
+            return false;
+          } else {
+            return true;
+          }
+        },
         indexWidth: 55,
         searchMenuSpan: 6,
         stripe: true,
@@ -1101,6 +1120,42 @@
         this.onLoad(this.page);
       });
     },
+    //制证申请
+    handleSecurityApply(){
+      if (this.choiceList.length === 0) {
+        this.$message.warning("请勾选至少一位持证保安员");
+        return;
+      }
+        this.$confirm("共选择制证申请人数"+this.choiceList.length+"人,确定申请制证?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let cho = this.choiceList;
+          console.log(this.choiceList,14521);
+          let str = "";
+          for (let k in cho) {
+            str += cho[k].id;
+            if (k != cho.length - 1) {
+              str += ",";
+            }
+          }
+          console.log(str,1132);
+          const data = {
+            ids:str,
+            createUser:this.userInfo.user_id
+          }
+          return securityApply(data);
+        })
+        .then(() => {
+          // this.$refs.crud.toggleSelection();
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+        });
+    },
     rowSave(row, done, loading) {
       if (row.deptId) {
         row.deptId = row.deptId;
@@ -1266,11 +1321,17 @@
       done();
     },
     selectionChange(list) {
-      this.selectionList = list;
+      // this.selectionList = list;
+      this.choiceList = [];
+      for (let k in list) {
+        this.choiceList.push({
+          id: list[k].id,
+        });
+      }
     },
     selectionClear() {
-      this.selectionList = [];
-      this.$refs.crud.toggleSelection();
+      // this.selectionList = [];
+      // this.$refs.crud.toggleSelection();
     },
     handleDelete() {
       if (this.selectionList.length === 0) {
diff --git a/src/views/trainingRegistration/index.vue b/src/views/trainingRegistration/index.vue
index ad2c4bf..b288021 100644
--- a/src/views/trainingRegistration/index.vue
+++ b/src/views/trainingRegistration/index.vue
@@ -134,7 +134,6 @@
   data() {
     return {
       choiceName: [],
-
       loading: true,
       excelBox: false,
       dialogExamFormVisible: false,
diff --git a/vue.config.js b/vue.config.js
index 41bf142..aabc55c 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -27,8 +27,8 @@
         proxy: {
             '/api': {
                 // 本地服务接口地址
-                // target: 'http://localhost:81',
-                target: 'http://192.168.0.114:81',//钟日健W
+                target: 'http://localhost:81',
+                // target: 'http://192.168.0.114:81',//钟日健W
                 // target: 'http://localhost:81', //原W
                 // target: 'http://192.168.0.108:81',//原W
                 // target: 'http://192.168.0.107:81',//唐N

--
Gitblit v1.9.3