From 7e3f57bf11e409b4618a383bedac6928440e1a24 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 28 Jul 2021 20:51:45 +0800
Subject: [PATCH] 培训报名修改

---
 src/views/applyexam/index.vue                        |    3 
 src/views/trainingRegistration/data.js               |  357 ++++++++++++++-------------------------
 src/router/views/index.js                            |    2 
 src/api/trainingRegistration/trainingRegistration.js |   52 ++--
 src/views/trainingRegistration/index.vue             |   86 ++++++---
 src/views/startexam/index.vue                        |    2 
 6 files changed, 219 insertions(+), 283 deletions(-)

diff --git a/src/api/trainingRegistration/trainingRegistration.js b/src/api/trainingRegistration/trainingRegistration.js
index 6f49d3e..3bded6f 100644
--- a/src/api/trainingRegistration/trainingRegistration.js
+++ b/src/api/trainingRegistration/trainingRegistration.js
@@ -1,39 +1,39 @@
 import request from '@/router/axios';
 
 export const getdata = (current, size, params) => {
-  return request({
-    url: '/api/trainingRegistration/page',
-    method: 'get',
-    params: {
-      ...params,
-      current,
-      size,
-    }
-  })
+    return request({
+        url: '/api/trainingRegistration/page',
+        method: 'get',
+        params: {
+            ...params,
+            current,
+            size,
+        }
+    })
 }
 
 export const adddata = (row) => {
-  return request({
-    url: '/api/trainingRegistration/submit',
-    method: 'post',
-    data: row
-  })
+    return request({
+        url: '/api/trainingRegistration/submit',
+        method: 'post',
+        data: row
+    })
 }
 
 export const update = (row) => {
-  return request({
-    url: '/api/trainingRegistration/submit',
-    method: 'post',
-    data: row
-  })
+    return request({
+        url: '/api/trainingRegistration/update',
+        method: 'post',
+        data: row
+    })
 }
 
 export const remove = (ids) => {
-  return request({
-    url: '/api/trainingRegistration/remove',
-    method: 'post',
-    params: {
-      ids,
-    }
-  })
+    return request({
+        url: '/api/trainingRegistration/remove',
+        method: 'post',
+        params: {
+            ids,
+        }
+    })
 }
\ No newline at end of file
diff --git a/src/router/views/index.js b/src/router/views/index.js
index 62849a4..c142848 100644
--- a/src/router/views/index.js
+++ b/src/router/views/index.js
@@ -626,7 +626,7 @@
         redirect: '/trainingRegistration/index',
         children: [{
             path: 'index',
-            name: '保安培训报名管理',
+            name: '保安培训报名',
             meta: {
                 i18n: 'dict'
             },
diff --git a/src/views/applyexam/index.vue b/src/views/applyexam/index.vue
index e6819f1..a0eea0b 100644
--- a/src/views/applyexam/index.vue
+++ b/src/views/applyexam/index.vue
@@ -7,9 +7,8 @@
  */
 <template>
     <el-row class="morpheus-box">
-        <el-col :span="24">
+        <el-col :span="24" class="hasButOne">
             <el-card>
-
                 <div class="exam-card-body">
 
                     <avue-crud v-model="obj"
diff --git a/src/views/startexam/index.vue b/src/views/startexam/index.vue
index 4f446a8..baf14c7 100644
--- a/src/views/startexam/index.vue
+++ b/src/views/startexam/index.vue
@@ -448,7 +448,7 @@
             var obj = {
                 examName: this.$route.query.examName,
                 securityName: this.userInfo.user_name,
-                securityId: this.userInfo.user_id,
+                userId: this.userInfo.user_id,
                 allScore: this.$route.query.totalScore,
                 company: this.userInfo.dept_id,
                 examTime: this.$route.query.startTime,
diff --git a/src/views/trainingRegistration/data.js b/src/views/trainingRegistration/data.js
index f6c8d86..77c5cdb 100644
--- a/src/views/trainingRegistration/data.js
+++ b/src/views/trainingRegistration/data.js
@@ -1,163 +1,62 @@
-var DIC = [
-    {
-        label: '男',
-        value: 1,
-    }, {
-        label: '女',
-        value: 2,
-    }
-]
-var DIC1 = [
-    {
-        label: '未撤销',
-        value: 1,
-    }, {
-        label: '已撤销',
-        value: 2,
-    }
-]
+var DIC = [{
+    label: '男',
+    value: 1,
+}, {
+    label: '女',
+    value: 2,
+}]
+var DIC1 = [{
+    label: '已报名',
+    value: 1,
+}, {
+    label: '已撤销',
+    value: 2,
+}, {
+    label: '已确认',
+    value: 3,
+}]
 
-var w = 160
-    , s = 12;
-export var column = [
-    // {
-    //     label: "id",
-    //     prop: "id",
-    //     hide: true,
-    //     editDisplay: false,
-    //     addDisplay: false
-    // },
-    // {
-    //     label: "保安单位",
-    //     prop: "tenantName",
-    //     hide: true,
-    //     editDisplay: false,
-    //     addDisplay: false
-    // },
-    // {
-    //     label: "保安id",
-    //     prop: "deptId",
-    //     hide: true,
-    //     editDisplay: false,
-    //     addDisplay: false,
-    //     value: JSON.parse(window.localStorage.getItem("saber-userInfo")).content.dept_id
-    // },//上面不显示
-    {
-        label: "姓名",
-        prop: "name",
-        rules: [{
-            required: true,
-            message: "请输入姓名",
-            trigger: "blur"
-        }],
-        search: true,
-        searchSpan: 5,
-    },
-    {
-        label: "性别",
-        prop: "sex",
-        rules: [{
-            required: true,
-            message: "请输入性别",
-            trigger: "blur"
-        }],
-        width: 50,
-        dicData: DIC,
-        props: {
-            label: "label",
-            value: "value"
-        },
+var w = 160,
+    s = 12;
+export var column = [{
+        label: "单位名称",
+        prop: "deptId",
         // width: 70,
         // search: true,
-    },
-    {
-        label: "年龄",
-        prop: "age",
+        // searchSpan: 4,
+        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
+        cascaderItem: ["userId"],
+        props: {
+            label: "title",
+            value: "id"
+        },
+        // search: true,
+        type: "select",
+        // hide: true,
         rules: [{
             required: true,
-            message: "请输入年龄",
+            message: "请输入单位名称",
             trigger: "blur"
         }],
-        width: 50,
-        // addDisplay: true,
-        // editDisplay: true,
-        // viewDisplay: true,
-        // filter: false,
-        // type: 'tree',
-        // dicData: DIC1,
-        // searchSpan: 5,
-        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
-        // props: {
-        //     label: "dictValue",
-        //     value: "dictKey"
-        // },
-        // search: true,
-        // type: "select",
-    },
-    {
-        label: "身高",
-        prop: "height",
-        width: 50,
-        rules: [{
-            required: true,
-            message: "请输入身高",
-            trigger: "blur"
-        }]
-        // addDisplay: true,
-        // editDisplay: true,
-        // viewDisplay: true,
-        // searchSpan: 5,
-        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
-        // props: {
-        //     label: "dictValue",
-        //     value: "dictKey"
-        // },
-        // search: true,
-        // type: "select",
-        // rules: [{
-        //     required: true,
-        //     message: "请选择学历",
-        //     trigger: "blur"
-        // }],
-    },
-    {
-        label: "体重",
-        prop: "weight",
-        width: 50,
-        rules: [{
-            required: true,
-            message: "请输入体重",
-            trigger: "blur"
-        }]
-        // addDisplay: true,
-        // editDisplay: true,
-        // viewDisplay: true,
-        // searchSpan: 5,
-        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=experienceType",
-        // props: {
-        //     label: "dictValue",
-        //     value: "dictKey"
-        // },
-        // search: true,
-        // type: "select",
-        // rules: [{
-        //     required: true,
-        //     message: "请选择工作经验",
-        //     trigger: "blur"
-        // }],
-    },
-    {
-        label: "电话",
-        prop: "phone",
-        rules: [{
-            required: true,
-            message: "请输入电话",
-            trigger: "blur"
-        }],
-        width: 110,
-        // search: true,
-        // width: 110,
-        // overHidden: true
+        overHidden: true
+    }, {
+        label: "姓名",
+        prop: "userId",
+        type: "select",
+        hide: true,
+        dicUrl: "/api/blade-user/page-security-unit?deptId={{key}}",
+        props: {
+            label: "realName",
+            value: "id"
+        },
+        searchSpan: 5,
+    }, {
+        label: "姓名",
+        prop: "realName",
+        search: true,
+        editDisplay: false,
+        addDisplay: false,
+        searchSpan: 5,
     },
     {
         label: "身份证号",
@@ -167,103 +66,109 @@
             message: "请输入身份证号",
             trigger: "blur"
         }],
+        editDisplay: false,
+        addDisplay: false,
         width: 160
-        // search: true,
-        // searchSpan: 4,
-        // overHidden: true
     },
     {
-        label: "学历证书",
-        prop: "academicUrl",
+        label: "电话",
+        prop: "phone",
+        hide: true,
         rules: [{
             required: true,
-            message: "请输入学历证书",
+            message: "请输入电话",
             trigger: "blur"
         }],
-        overHidden: true
-        // width: 70,
-        // search: true,
-        // searchSpan: 4,
+        editDisplay: false,
+        addDisplay: false,
+        width: 110,
     },
     {
-        label: "组织机构",
-        prop: "deptId",
-        // width: 70,
-        // search: true,
-        // searchSpan: 4,
-        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
+        label: "培训公司名称",
+        prop: "trainingUnitId",
+        dicUrl: "/api/blade-system/dept/lazy-tree-type?parentId=1418458374477549569",
+        cascaderItem: ["trainExamId"],
         props: {
             label: "title",
             value: "id"
         },
-        // search: true,
         type: "select",
-        rules: [{
-            required: true,
-            message: "请输入组织机构",
-            trigger: "blur"
-        }],
-        overHidden: true
-    },
-    {
-        label: "培训公司名称",
-        prop: "trainingUnitName",
         rules: [{
             required: true,
             message: "请输入培训公司名称",
             trigger: "blur"
         }],
-        // width: 70,
-        // addDisplay: true,
-        // editDisplay: true,
-        // viewDisplay: true,
         searchSpan: 5,
         searchLabelWidth: 110,
-        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=unitsNatureType",
-        // props: {
-        //     label: "dictValue",
-        //     value: "dictKey"
-        // },
         search: true,
         overHidden: true
-        // type: "select",
-        // rules: [{
-        //     required: false,
-        //     message: "请选择单位规模",
-        //     trigger: "blur"
-        // }],
     },
     {
-        label: "培训时间",
-        prop: "trainingTime",
-        type: "date",
-        format: "yyyy-MM-dd",
-        valueFormat: "yyyy-MM-dd",
+        label: "考试名称",
+        prop: "trainExamId",
+        dicUrl: "/api/trainExam/page-tree?deptId={{key}}",
+        props: {
+            label: "trainExamName",
+            value: "id"
+        },
+        type: "select",
         rules: [{
             required: true,
-            message: "请输入培训时间",
+            message: "请输入考试名称",
             trigger: "blur"
         }],
-        width: 100,
-        // addDisplay: true,
-        // editDisplay: true,
-        // viewDisplay: true,
-        // searchSpan: 4,
-        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=unitsScaleType",
-        // props: {
-        //     label: "dictValue",
-        //     value: "dictKey"
-        // },
-        // // search: true,
-        // type: "select",
-        // rules: [{
-        //     required: true,
-        //     message: "请选择单位规模",
-        //     trigger: "blur"
-        // }],
+        hide: true,
+        searchSpan: 5,
+        searchLabelWidth: 110,
+        // search: true,
+        overHidden: true
     },
     {
-        label: "撤销状态",
+        label: "考试名称",
+        prop: "trainExamName",
+        rules: [{
+            required: true,
+            message: "请输入考试名称",
+            trigger: "blur"
+        }],
+        editDisplay: false,
+        addDisplay: false,
+        searchLabelWidth: 110,
+        // search: true,
+        overHidden: true
+    },
+    {
+        label: "报名时间",
+        prop: "trainingTime",
+        type: "date",
+        format: "yyyy-MM-dd HH:mm:ss",
+        valueFormat: "yyyy-MM-dd HH:mm:ss",
+        rules: [{
+            required: true,
+            message: "请输入报名时间",
+            trigger: "blur"
+        }],
+        editDisplay: false,
+        addDisplay: false,
+        width: 160
+    },
+    {
+        label: "培训考试时间",
+        prop: "trainExamTime",
+        type: "date",
+        format: "yyyy-MM-dd HH:mm:ss",
+        valueFormat: "yyyy-MM-dd HH:mm:ss",
+        rules: [{
+            required: true,
+            message: "请输入培训考试时间",
+            trigger: "blur"
+        }],
+        editDisplay: false,
+        addDisplay: false,
+        width: 160
+    },
+    {
+        label: "报名状态",
         prop: "cancel",
         // search: true,
         dicData: DIC1,
@@ -271,15 +176,15 @@
             label: "label",
             value: "value"
         },
-        // rules: [{
-        //     required: true,
-        //     message: "请选",
-        //     trigger: "blur"
-        // }]
-        // hide: false,
         editDisplay: false,
         addDisplay: false,
         searchSpan: 5,
         width: 70,
+    }, {
+        label: "确认截止时间",
+        prop: "remainingTime",
+        editDisplay: false,
+        addDisplay: false,
+        width: 160
     }
-]
+]
\ No newline at end of file
diff --git a/src/views/trainingRegistration/index.vue b/src/views/trainingRegistration/index.vue
index dddcc75..0c11297 100644
--- a/src/views/trainingRegistration/index.vue
+++ b/src/views/trainingRegistration/index.vue
@@ -1,19 +1,25 @@
 <template>
-  <div class="recruitmentManagement">
+  <basic-container class="recruitmentManagement">
     <avue-crud
       :option="option"
+      :table-loading="loading"
       :data="data"
       :page.sync="page"
-      ref="crudrec"
-      @on-load="onLoad"
-      :table-loading="loading"
+      ref="crud"
+      @row-del="rowDel"
+      v-model="form"
+      :permission="permissionList"
+      @row-update="rowUpdate"
       @row-save="rowSave"
+      :before-open="beforeOpen"
+      @filter="filterChange"
       @search-change="searchChange"
       @search-reset="searchReset"
-      @row-update="rowUpdate"
-      @row-del="rowDel"
       @selection-change="selectionChange"
+      @current-change="currentChange"
+      @size-change="sizeChange"
       @refresh-change="refreshChange"
+      @on-load="onLoad"
     >
       <template slot="menuLeft">
         <el-button
@@ -33,13 +39,20 @@
           :type="type"
           >撤销报名</el-button
         >
+        <el-button
+          icon="el-icon-folder-checked"
+          @click="affirmApply(row)"
+          :size="size"
+          :type="type"
+          >确认报名</el-button>
       </template>
     </avue-crud>
-  </div>
+
+  </basic-container>
 </template>
 
 <script>
-import { data, column } from "./data";
+import { column } from "./data";
 import {
   getdata,
   adddata,
@@ -66,7 +79,8 @@
         searchMenuSpan: 6,
         height: 693,
         index: true,
-        menuWidth: 290,
+        labelWidth: "120",
+        menuWidth: 230,
         align: "center",
         selection: true,
         column: column,
@@ -144,8 +158,38 @@
         }
       );
     },
-    revoke(row) {
-      // console.log(row);
+    //确认报名
+    affirmApply(row,done,loading){
+      this.$confirm("确认报名?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          row.cancel = 3;
+          update(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "确认报名成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+      })
+    },
+    revoke(row,done,loading) {
+      this.$confirm("确定撤销报名?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
       row.cancel = 2;
       update(row).then(
         () => {
@@ -161,6 +205,8 @@
           loading();
         }
       );
+      })
+      
     },
     rowDel(row) {
       this.$confirm("确定将选择数据删除?", {
@@ -234,19 +280,5 @@
 };
 </script>
 
-<style lang="scss">
-.recruitmentManagement {
-  width: 100%;
-  height: 100%;
-  //   border: 1px solid #000;
-  box-sizing: border-box;
-}
-// .el-card__body {
-//   padding-bottom: 5px !important;
-// }
-// .avue-crud__tip,
-// .el-tag,
-// .el-tag--light {
-//   padding: 0 !important;
-// }
-</style>
\ No newline at end of file
+<style>
+</style>

--
Gitblit v1.9.3