From 2406ac9a70e51e76c6ba95efb69f641c7b22e8ea Mon Sep 17 00:00:00 2001
From: luobisheng <727299681@qq.com>
Date: 星期二, 08 十一月 2022 18:48:48 +0800
Subject: [PATCH] 队伍建设接口对接

---
 src/views/systemSetting/platform/cockpitManage/createUser/index.vue |  200 +++++++++++++++++++++++--------------------------
 1 files changed, 94 insertions(+), 106 deletions(-)

diff --git a/src/views/systemSetting/platform/cockpitManage/createUser/index.vue b/src/views/systemSetting/platform/cockpitManage/createUser/index.vue
index f92cbeb..d57c21e 100644
--- a/src/views/systemSetting/platform/cockpitManage/createUser/index.vue
+++ b/src/views/systemSetting/platform/cockpitManage/createUser/index.vue
@@ -7,114 +7,111 @@
           label-width="140px"
           autoComplete="on"
           :model="depart"
-          :rules="createDepartRules"
+          :rules="departRules"
           label-position="right"
         >
           <!-- 閮ㄩ棬鍚嶇О -->
           <span style="heght:18px;display:block;line-height: 14px;">
             鎵ф硶浜哄憳缁撴瀯
           </span>
-          <el-form-item class="optionItem" label="閮ㄩ棬鍚嶇О:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�"></el-input>
+          <el-form-item class="optionItem" label="閮ㄩ棬鍚嶇О:" prop="name">
+            <el-input v-model="depart.name" placeholder="璇疯緭鍏ラ儴闂ㄥ悕绉�"></el-input>
           </el-form-item>
           <!-- 涓婄骇閮ㄩ棬 -->
-          <el-form-item class="optionItem" label="閮ㄩ棬浜烘暟:" prop="departName">
-            <el-input v-model="depart.departNumber" placeholder="璇疯緭鍏ラ儴闂ㄤ汉鏁�"></el-input>
+          <el-form-item class="optionItem" label="閮ㄩ棬浜烘暟:" prop="peopleNumber">
+            <el-input v-model="depart.peopleNumber" placeholder="璇疯緭鍏ラ儴闂ㄤ汉鏁�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="杈栧尯绠$悊:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ヨ緰鍖虹鐞�"></el-input>
+          <el-form-item class="optionItem" label="杈栧尯绠$悊:" prop="regionIds">
+            <el-input v-model="depart.regionIds" placeholder="璇疯緭鍏ヨ緰鍖虹鐞�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="鏈瀛﹀巻浠ヤ笂浜烘暟:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ユ湰绉戝鍘嗕互涓婁汉鏁�"></el-input>
+          <el-form-item class="optionItem" label="鏈瀛﹀巻浠ヤ笂浜烘暟:" prop="upUndergraduatePeopleNumber">
+            <el-input v-model="depart.upUndergraduatePeopleNumber" placeholder="璇疯緭鍏ユ湰绉戝鍘嗕互涓婁汉鏁�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="鎸佽瘉浜哄憳鏁�:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ユ寔璇佷汉鍛樻暟"></el-input>
+          <el-form-item class="optionItem" label="鎸佽瘉浜哄憳鏁�:" prop="holderNumber">
+            <el-input v-model="depart.holderNumber" placeholder="璇疯緭鍏ユ寔璇佷汉鍛樻暟"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="45宀佷互涓嬩汉鏁�:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏�45宀佷互涓嬩汉鏁�"></el-input>
+          <el-form-item class="optionItem" label="45宀佷互涓嬩汉鏁�:" prop="underFortyFivePeopleNumber">
+            <el-input v-model="depart.underFortyFivePeopleNumber" placeholder="璇疯緭鍏�45宀佷互涓嬩汉鏁�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="鎸佹硶寰嬭亴涓氳祫鏍艰瘉涔︿汉鏁�:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ユ寔娉曞緥鑱屼笟璧勬牸璇佷功浜烘暟"></el-input>
+          <el-form-item class="optionItem" label="鎸佹硶寰嬭亴涓氳祫鏍艰瘉涔︿汉鏁�:" prop="legalProfessionalQualificationCertificatePeopleNumber">
+            <el-input v-model="depart.legalProfessionalQualificationCertificatePeopleNumber" placeholder="璇疯緭鍏ユ寔娉曞緥鑱屼笟璧勬牸璇佷功浜烘暟"></el-input>
           </el-form-item>
           <span>
             浣滈绾緥
           </span>
-          <el-form-item class="optionItem" label="閫氭姤鏁伴噺:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ラ�氭姤鏁伴噺"></el-input>
+          <el-form-item class="optionItem" label="閫氭姤鏁伴噺:" prop="reportNumber">
+            <el-input v-model="depart.reportNumber" placeholder="璇疯緭鍏ラ�氭姤鏁伴噺"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="杩濈邯琛屼负鏁伴噺:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ヨ繚绾涓烘暟閲�"></el-input>
+          <el-form-item class="optionItem" label="杩濈邯琛屼负鏁伴噺:" prop="disciplinaryOffenceNumber">
+            <el-input v-model="depart.disciplinaryOffenceNumber" placeholder="璇疯緭鍏ヨ繚绾涓烘暟閲�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="杩濇硶鐘姜琛屼负鏁伴噺:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ヨ繚娉曠姱缃涓烘暟閲�"></el-input>
+          <el-form-item class="optionItem" label="杩濇硶鐘姜琛屼负鏁伴噺:" prop="criminalOffenseNumber">
+            <el-input v-model="depart.criminalOffenseNumber" placeholder="璇疯緭鍏ヨ繚娉曠姱缃涓烘暟閲�"></el-input>
           </el-form-item>
           <span>妗堜欢鍔炵悊</span>
-          <el-form-item class="optionItem" label="姣忔湀妗堜欢鍔炵悊閲�:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ユ瘡鏈堟浠跺姙鐞嗛噺"></el-input>
+          <el-form-item class="optionItem" label="姣忔湀妗堜欢鍔炵悊閲�:" prop="monthCaseNumber">
+            <el-input v-model="depart.monthCaseNumber" placeholder="璇疯緭鍏ユ瘡鏈堟浠跺姙鐞嗛噺"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="鏈秴鏃舵浠堕噺:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ユ湭瓒呮椂妗堜欢閲�"></el-input>
+          <el-form-item class="optionItem" label="鏈秴鏃舵浠堕噺:" prop="noTimeoutCaseNumber">
+            <el-input v-model="depart.noTimeoutCaseNumber" placeholder="璇疯緭鍏ユ湭瓒呮椂妗堜欢閲�"></el-input>
           </el-form-item>
-          <el-form-item class="optionItem" label="澶嶈鎴栬瘔璁兼暟:" prop="departName">
-            <el-input v-model="depart.departName" placeholder="璇疯緭鍏ュ璁垨璇夎鏁�"></el-input>
+          <el-form-item class="optionItem" label="澶嶈鎴栬瘔璁兼暟:" prop="reviewOrLawsuitNumber">
+            <el-input v-model="depart.reviewOrLawsuitNumber" placeholder="璇疯緭鍏ュ璁垨璇夎鏁�"></el-input>
           </el-form-item>
-       
         </el-form>
       </div>
     </main>
     <footer>
       <div class="optionBtn">
         <el-button @click="handleClose">鍙栨秷</el-button>
-        <el-button type="primary" class="btn submit" @click="handleUser"
-          >纭畾</el-button
-        >
+        <el-button type="primary" class="btn submit" @click="handleUser()">纭畾</el-button>
       </div>
     </footer>
   </div>
 </template>
 <script>
 import { getTypeList } from "@/utils/helper";
+import { addTeam } from "@/api/system/portal/teamConstruction";
+import { SUCCESS_CODE } from "@/utils";
+
 export default {
   data() {
-    const validateNickname = (rule, value, callback) => {
-      if (!value) {
-        callback(new Error("璇峰~鍐欓儴闂ㄥ悕绉�"));
-      } else {
-        callback();
-      }
-    };
-    const validatePass = (rule, value, callback) => {
-      if (!value) {
-        callback();
-      } else {
-        callback();
-      }
-    };
-    const validatePhone = (rule, value, callback) => {
-      if (!value) {
-        callback();
-      } else {
-        callback();
-      }
-    };
     return {
       depart: {
-        departName: "",
-        parentId: "",
-        departType: "",
-        departDes: "",
+
+        // 鎵ф硶浜哄憳缁撴瀯
+        name: '',
+        peopleNumber: '',
+        regionIds: '',
+        upUndergraduatePeopleNumber: '',
+        holderNumber: '',
+        underFortyFivePeopleNumber: '',
+        legalProfessionalQualificationCertificatePeopleNumber: '',
+
+        // 浣滈绾緥
+        reportNumber: null,
+        disciplinaryOffenceNumber: null,
+        criminalOffenseNumber: null,
+
+        // 妗堜欢鍔炵悊
+        monthCaseNumber: null,
+        noTimeoutCaseNumber: null,
+        reviewOrLawsuitNumber: null
       },
-      createDepartRules: {
-        departName: [
-          { required: true, trigger: "blur", validator: validateNickname },
-        ],
-        parentId: [
-          { required: false, trigger: "blur", validator: validatePass },
-        ],
-        departType: [
-          { required: false, trigger: "blur", validator: validatePhone },
-        ],
-        departDes: [{ required: false, trigger: "blur" }],
+      departRules: {
+        name: [{ required: true, trigger: "blur", message: '閮ㄩ棬鍚嶇О蹇呭~'  }],
+        peopleNumber: [{ required: true, trigger: "blur", message: '閮ㄩ棬浜烘暟蹇呭~' }],
+        regionIds: [{ required: true, trigger: "blur", message: '杈栧尯绠$悊蹇呭~' }],
+        upUndergraduatePeopleNumber: [{ required: true, trigger: "blur", message: '鏈瀛﹀巻浠ヤ笂浜烘暟蹇呭~' }],
+        holderNumber: [{ required: true, trigger: "blur", message: '鎸佽瘉浜哄憳鏁板繀濉�' }],
+        underFortyFivePeopleNumber: [{ required: true, trigger: "blur", message: '45宀佷互涓嬩汉鏁板繀濉�' }],
+        legalProfessionalQualificationCertificatePeopleNumber: [{ required: true, trigger: "blur", message: '鎸佹硶寰嬭亴涓氳祫鏍艰瘉涔︿汉鏁板繀濉�' }],
+        reportNumber: [{ required: true, trigger: "blur", message: '閫氭姤鏁伴噺蹇呭~' }],
+        disciplinaryOffenceNumber: [{ required: true, trigger: "blur", message: '杩濈邯琛屼负鏁伴噺:蹇呭~' }],
+        criminalOffenseNumber: [{ required: true, trigger: "blur", message: '杩濇硶鐘姜琛屼负鏁伴噺蹇呭~' }],
+        monthCaseNumber: [{ required: true, trigger: "blur", message: '姣忔湀妗堜欢鍔炵悊閲忓繀濉�' }],
+        noTimeoutCaseNumber: [{ required: true, trigger: "blur", message: '鏈秴鏃舵浠堕噺蹇呭~' }],
+        reviewOrLawsuitNumber: [{ required: true, trigger: "blur", message: '澶嶈鎴栬瘔璁兼暟蹇呭~' }]
       },
       userList: [],
       departList: [],
@@ -128,16 +125,17 @@
       mylabel: "",
       defaultProps: {
         children: "children",
-        label: "departName",
+        label: "name",
       },
     };
   },
   created() {
-    const that = this;
     // 鑾峰彇閮ㄩ棬鏍戝舰缁撴瀯鍥�
     this.getDepartTree();
+
     // 鑾峰彇鐢ㄦ埛鍒楄〃
     this.getUserList();
+
     // 鑾峰彇閮ㄩ棬绫诲瀷鍒楄〃
     this.getDepartTypeList();
   },
@@ -145,55 +143,37 @@
     handleUser() {
       this.$refs.user.validate((valid) => {
         if (valid) {
-          const { depart, checkedList, selectOrg } = this;
-          const arr = [];
-          checkedList.forEach((item) => {
-            arr.push({ leader: item.leader, userId: item.id });
-          });
-          console.log(arr);
-          this.$axios({
-            method: "post",
-            url: "/sccg/depart/create",
-            data: {
-              departName: depart.departName,
-              parentId: selectOrg.orgsid[0],
-              departType: depart.departType,
-              departDes: depart.departDes,
-              departManagerList: arr,
-            },
-          }).then((res) => {
-            if (res.code === 200) {
-              this.$message({
-                message: res.message,
-                type: "success",
+          addTeam(this.depart)
+              .then(({ code, message }) => {
+                if (code === SUCCESS_CODE) {
+                  this.$message({ type: 'success', message });
+                  this.$emit('closeUpdateDialog');
+                } else {
+                  this.$message({ type: 'warning', message });
+                }
+              })
+              .catch(err => {
+                this.$message({ type: 'error', message: err });
               });
-              this.refresh();
-            } else if (res.code === 2001) {
-              this.$message({
-                message: res.message,
-                type: "error",
-              });
-              this.refresh();
-            }
-          });
         } else {
-          return false;
+          this.$message({ type: 'warning', message: '璇锋鏌ュ繀濉」' });
         }
       });
     },
+    
     // 鑾峰彇閮ㄩ棬鏍戝舰缁撴瀯鍥�
     getDepartTree() {
       this.$axios({
         method: "get",
         url: "sccg/depart/tree",
       }).then((res) => {
-        // console.log(res);
-        // res.data.unshift({ id: 0, departName: "椤剁骇鑿滃崟" });
         this.departList = res.data;
       });
     },
+
     // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
     getUserList() {
+
       // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�佺敤鎴锋煡璇�(鏆傛椂鏀寔鐢佃瘽鍙风爜)
       this.$axios.get(`/sccg/depart/query_surplus_user`).then((res) => {
         if (res.code === 200) {
@@ -201,13 +181,12 @@
         }
       });
     },
+
     addUser() {
-      console.log(this.checkedUser);
-      console.log(this.userList);
       this.checkedList = [];
       this.userList.forEach((item) => {
         this.checkedUser.forEach((child) => {
-          if (item.id == child) {
+          if (item.id === child) {
             this.checkedList.push({
               id: item.id,
               username: item.username,
@@ -219,17 +198,22 @@
       this.checkedList[0].leader = true;
       this.openUser = false;
     },
+
     handleClose() {
       this.$emit("changMyDialog", { flag: false });
     },
+
     // 鑾峰彇閮ㄩ棬绫诲瀷
     async getDepartTypeList() {
       this.departTypeList = await getTypeList(1, "08");
     },
+
     handleCheck(data, checked) {
-      this.depart.parentId = data.departName;
+      this.depart.parentId = data.name;
+
       // 鑾峰彇褰撳墠閫夋嫨鐨刬d鍦ㄦ暟缁勪腑鐨勭储寮�
       const indexs = this.selectOrg.orgsid.indexOf(data.id);
+
       // 濡傛灉涓嶅瓨鍦ㄦ暟缁勪腑锛屽苟涓旀暟缁勪腑宸茬粡鏈変竴涓猧d骞朵笖checked涓簍rue鐨勬椂鍊欙紝浠h〃涓嶈兘鍐嶆閫夋嫨銆�
       if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
         this.$message({
@@ -237,9 +221,11 @@
           type: "warning",
           showClose: true,
         });
+
         // 璁剧疆宸查�夋嫨鐨勮妭鐐逛负false 寰堥噸瑕�
         this.$refs.tree.setChecked(data, false);
       } else if (this.selectOrg.orgsid.length === 0 && checked) {
+
         // 鍙戠幇鏁扮粍涓虹┖ 骞朵笖鏄凡閫夋嫨
         // 闃叉鏁扮粍鏈夊�硷紝棣栧厛娓呯┖锛屽啀push
         this.selectOrg.orgsid = [];
@@ -249,11 +235,13 @@
         this.selectOrg.orgsid.length === 1 &&
         !checked
       ) {
+
         // 鍐嶆鐩存帴杩涜璧嬪�间负绌烘搷浣�
         this.selectOrg.orgsid = [];
         this.depart.parentId = "";
       }
     },
+
     // 璁剧疆棰嗗
     setLeader(idx) {
       this.checkedList.forEach((item, index) => {

--
Gitblit v1.8.0