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

---
 src/utils/request.js                                                |   23 
 src/views/systemSetting/platform/cockpitManage/createUser/index.vue |  200 +++++------
 src/api/system/portal/teamConstruction.js                           |   62 +++
 src/views/systemSetting/platform/portalSetting/index.vue            |    2 
 src/views/systemSetting/platform/cockpitManage/detailUser/index.vue |   12 
 src/views/systemSetting/platform/cockpitManage/updateUser/index.vue |  232 +++++---------
 src/utils/index.js                                                  |    2 
 src/views/systemSetting/platform/cockpitManage/index.vue            |  387 +++++++++--------------
 src/App.vue                                                         |    2 
 9 files changed, 405 insertions(+), 517 deletions(-)

diff --git a/src/App.vue b/src/App.vue
index 91f0a7b..51fb81c 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -32,9 +32,7 @@
       const pic = JSON.parse(sessionStorage.getItem('pic'));
       if (pic) {
         result = pic;
-        // console.log('缂撳瓨')
       } else {
-        // console.log('璇锋眰');
         await this.$axios({
           method: 'get',
           url: 'sccg/system/portal/logo/search',
diff --git a/src/api/system/portal/teamConstruction.js b/src/api/system/portal/teamConstruction.js
new file mode 100644
index 0000000..b08c8fb
--- /dev/null
+++ b/src/api/system/portal/teamConstruction.js
@@ -0,0 +1,62 @@
+import { getToken } from "@/utils/helper";
+import request from "@/utils/request";
+
+const TEAM_CONSTRUCTION_URL = '/sccg/team_construction';
+const TOKEN = {
+    'Authorization': getToken()
+}
+
+export function addTeam(params) {
+    return request({
+        method: 'post',
+        url: TEAM_CONSTRUCTION_URL + '/addition',
+        headers: { ...TOKEN },
+        params
+    });
+}
+
+export function deleteTeam(params) {
+    return request({
+        method: 'delete',
+        url: TEAM_CONSTRUCTION_URL + '/deletion',
+        headers: { ...TOKEN },
+        params
+    });
+}
+
+export function exportTeamInfo(params) {
+    return request({
+        method: 'post',
+        url: TEAM_CONSTRUCTION_URL + '/export',
+        headers: { ...TOKEN },
+        params,
+        responseType: 'blob'
+    });
+}
+
+export function importTeamInfo(data) {
+    return request({
+        method: 'post',
+        url: TEAM_CONSTRUCTION_URL + '/import',
+        headers: { ...TOKEN, 'Content-Type': 'multipart/form-data' },
+        data: data,
+    });
+}
+
+export function updateTeamInfo(params) {
+    return request({
+        method: 'put',
+        url: TEAM_CONSTRUCTION_URL + '/modification',
+        headers: { ...TOKEN },
+        params
+    });
+}
+
+export function searchTeamInfo(params) {
+    return request({
+        method: 'get',
+        url: TEAM_CONSTRUCTION_URL + '/query',
+        headers: { ...TOKEN },
+        params
+    });
+}
\ No newline at end of file
diff --git a/src/utils/index.js b/src/utils/index.js
index 07de405..256fdb9 100644
--- a/src/utils/index.js
+++ b/src/utils/index.js
@@ -52,3 +52,5 @@
     return d.getMonth() + 1 + '鏈�' + d.getDate() + '鏃�' + d.getHours() + '鏃�' + d.getMinutes() + '鍒�'
   }
 }
+
+export const SUCCESS_CODE = 200;
diff --git a/src/utils/request.js b/src/utils/request.js
index c560504..8521a4b 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -22,27 +22,24 @@
 // 鍝嶅簲
 api.interceptors.response.use(
   (response) => {
-    const result = response.data;
-    // console.log(response);
+    let result = response.data;
+    if (response.headers['content-disposition']) {
+         result = {
+            contentDisposition: response.headers['content-disposition'],
+            data: response.data
+        }
+    }
     if (response.status === 200 && result.code === 200) {
       return result;
-    }
-    else if (response.status === 200 && result.code === 500) {
-      // tip.Message({
-      //   type: 'error',
-      //   message: '鏈嶅姟鍣ㄥ姫鍔涘姞杞戒腑',
-      // })
+    } else if (response.status === 200 && result.code === 500) {
       return result;
-    }
-    else if (response.status === 200 && result.code === 401) {
-      // console.log(result);
+    } else if (response.status === 200 && result.code === 401) {
       tip.Message({
         type: 'warning',
         message: '鐧诲綍韬唤宸茶繃鏈�',
       })
       router.push('/login');
-    }
-    else {
+    } else {
       return result;
     }
   },
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) => {
diff --git a/src/views/systemSetting/platform/cockpitManage/detailUser/index.vue b/src/views/systemSetting/platform/cockpitManage/detailUser/index.vue
index cde5599..74e5f29 100644
--- a/src/views/systemSetting/platform/cockpitManage/detailUser/index.vue
+++ b/src/views/systemSetting/platform/cockpitManage/detailUser/index.vue
@@ -21,22 +21,10 @@
           <el-form-item prop="questionType" label="鍥剧墖:" min-width="8">
             <img style="width: 180px;height: 120px;" :src=imagedata.imageUrl>
           </el-form-item>
-          <!-- <el-form-item prop="questionType" label="闂绫诲瀷" min-width="8" v-model="imagedata.questionType">
-          </el-form-item>
-          <el-form-item prop="bigType" label="澶х被鍚嶇О" min-width="8" v-model="imagedata.bigType">
-          </el-form-item>
-          <el-form-item prop="smallType" label="灏忕被鍚嶇О" min-width="8" v-model="imagedata.smallType">
-          </el-form-item>
-          <el-form-item prop="imagesId" label="鍥剧墖Id" min-width="8" v-model="imagedata.imagesId">
-          </el-form-item>
-          <el-form-item prop="uploadTime" label="涓婁紶鏃堕棿" min-width="15" v-model="imagedata.uploadTime"> -->
-          <!-- </el-form-item> -->
-          <!-- <el-form-item v-if="updateFlag"> -->
           <div class="optionBtn">
             <el-button type="primary" class="btn submit" @click.native.prevent="handleUser">鎻愪氦
             </el-button>
           </div>
-          <!-- </el-form-item> -->
         </el-form>
       </div>
     </main>
diff --git a/src/views/systemSetting/platform/cockpitManage/index.vue b/src/views/systemSetting/platform/cockpitManage/index.vue
index 86e4e2f..1777883 100644
--- a/src/views/systemSetting/platform/cockpitManage/index.vue
+++ b/src/views/systemSetting/platform/cockpitManage/index.vue
@@ -6,13 +6,13 @@
                     <div class="search-item">
                         <span>閮ㄩ棬鍚嶇О:</span>
                         <div class="option">
-                            <el-input v-model="info.type" placeholder="璇疯緭鍏ラ儴闂�"></el-input>
+                            <el-input v-model="searchDepartment" placeholder="璇疯緭鍏ラ儴闂�"></el-input>
                         </div>
                     </div>
                     <div class="search-item">
                         <span>鐘舵��:</span>
                         <div class="option">
-                            <el-input v-model="info.startTime" placeholder="閫夋嫨鐘舵��"></el-input>
+                            <el-input v-model="searchStatus" placeholder="閫夋嫨鐘舵��"></el-input>
                         </div>
                     </div>
                     <div class="findBtn">
@@ -24,49 +24,54 @@
         <main>
             <div class="mainContent">
                 <div class="type-nav">
-                    <el-button type="primary">瀵煎叆</el-button>
-                    <el-button type="primary">瀵煎嚭</el-button>
-                    <el-button type="primary" @click="addImages">娣诲姞</el-button>
+                    <el-upload
+                        class="upload-demo"
+                        action=""
+                        :http-request="importTable"
+                        :show-file-list="false"
+                        :auto-upload="true"
+                        multiple
+                        :limit="1">
+                      <el-button type="primary">瀵煎叆</el-button>
+                    </el-upload>
+                    <el-button type="primary" @click="exportTable">瀵煎嚭</el-button>
+                    <el-button type="primary" @click="showAddDialog">娣诲姞</el-button>
                 </div>
                 <!-- 鏁版嵁灞曠ず -->
                 <el-table ref="multipleTable"
                     :header-cell-style="{ background: '#06122c', 'font-size': '12px', color: '#4b9bb7', 'font-weight': '650', 'line-height': '45px' }"
                     :data="tableData" style="width: 100%" :row-class-name="tableRowClassName"
                     @selection-change="tableChange">
-                    <!-- <el-table-column type="selection" min-width="5">
-                    </el-table-column> -->
-                    <el-table-column prop="code" label="閮ㄩ棬鍚嶇О" min-width="8">
+                    <el-table-column prop="name" label="閮ㄩ棬鍚嶇О" min-width="8">
                     </el-table-column>
-                    <el-table-column prop="questionType" label="閮ㄩ棬浜烘暟" min-width="10">
+                    <el-table-column prop="peopleNumber" label="閮ㄩ棬浜烘暟" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="bigType" label="鏈瀛﹀巻鍙婁互涓婁汉鏁�" min-width="15">
+                    <el-table-column prop="upUndergraduatePeopleNumber" label="鏈瀛﹀巻鍙婁互涓婁汉鏁�" min-width="15">
                     </el-table-column>
-                    <el-table-column prop="smallType" label="鎸佽瘉浜哄憳鏁�" min-width="8">
+                    <el-table-column prop="holderNumber" label="鎸佽瘉浜哄憳鏁�" min-width="8">
                     </el-table-column>
-                    <el-table-column prop="imagesId" label="45鏁颁互涓嬩汉鏁�" min-width="8">
+                    <el-table-column prop="underFortyFivePeopleNumber" label="45鏁颁互涓嬩汉鏁�" min-width="8">
                     </el-table-column>
-                    <el-table-column prop="uploadTime" label="鎸佹硶寰嬭亴涓氳祫鏍艰瘉浜烘暟" min-width="15" v-if="mystatus === 1">
+                    <el-table-column prop="legalProfessionalQualificationCertificatePeopleNumber" label="鎸佹硶寰嬭亴涓氳祫鏍艰瘉浜烘暟" min-width="15" v-if="mystatus === 1">
                     </el-table-column>
-                    <el-table-column prop="imagesId" label="閫氭姤鏁伴噺" min-width="8">
+                    <el-table-column prop="reportNumber" label="閫氭姤鏁伴噺" min-width="8">
                     </el-table-column>
-                    <el-table-column prop="breakRuleActiveNumber" label="杩濈邯琛屼负鏁伴噺" min-width="15" v-if="mystatus === 1">
+                    <el-table-column prop="disciplinaryOffenceNumber" label="杩濈邯琛屼负鏁伴噺" min-width="15" v-if="mystatus === 1">
                     </el-table-column>
-                    <el-table-column prop="crimeActiveNumber" label="杩濇硶鐘姜琛屼负鏁伴噺" min-width="8">
+                    <el-table-column prop="criminalOffenseNumber" label="杩濇硶鐘姜琛屼负鏁伴噺" min-width="8">
                     </el-table-column>
                     <el-table-column prop="monthCaseNumber" label="姣忔湀妗堜欢妗�" min-width="15" v-if="mystatus === 1">
                     </el-table-column>
                     <el-table-column prop="noTimeoutCaseNumber" label="鏈秴鏃舵浠堕噺" min-width="8">
                     </el-table-column>
-                    <el-table-column prop="reViewNumber" label="澶嶈鎴栬瘔璁兼暟" min-width="15" v-if="mystatus === 1">
+                    <el-table-column prop="reviewOrLawsuitNumber" label="澶嶈鎴栬瘔璁兼暟" min-width="15" v-if="mystatus === 1">
                     </el-table-column>
                     <el-table-column prop="status" label="鐘舵��" min-width="15" v-if="mystatus === 1">
                     </el-table-column>
                     <el-table-column prop="operation" label="鎿嶄綔" min-width="15">
                         <template slot-scope="scope">
                             <div class="operation">
-                                <!-- <span @click="handleFind(scope.row)">鏌ョ湅</span>
-                                <span class="line">|</span> -->
-                                <span @click="handleUpdate(scope.row)">淇敼</span>
+                                <span @click="showUpdateDialog(scope.row)">淇敼</span>
                                 <span class="line">|</span>
                                 <span @click="handleDelete(scope.row)">鍒犻櫎</span>
                             </div>
@@ -76,41 +81,23 @@
                 <!-- 璇︽儏椤靛睍绀� -->
                 <el-dialog :visible.sync="dialogView" width="80%" title="鍩虹淇℃伅(浜哄伐)" v-if="dialogView"
                     :before-close="handleClose">
-                    <MyDetail :info=info v-if="mystatus == 1 ? true : false"></MyDetail>
+                    <MyDetail :info=info v-if="mystatus === 1"></MyDetail>
                     <MyIllDetail :info=info v-else></MyIllDetail>
                 </el-dialog>
-                <!-- 涓婁紶椤甸潰 -->
-                <!-- <el-dialog :visible.sync="dialogUpload" width="80%" title="涓婁紶澶勭疆缁撴灉" v-if="dialogUpload"
-                    :before-close="handleClose"> -->
-                <!-- <uploadVio v-if="mystatus === 1" :caseId="caseId" :mycode="caseCode"  @closeDialog="closeDialog"></uploadVio>
-                    <uploadIll v-else :caseId="caseId" :mycode="caseCode" @closeDialog="closeDialog"></uploadIll> -->
-                <!-- </el-dialog> -->
-                <!-- tools -->
-                <!-- 鏌ョ湅淇敼椤甸潰 -->
+
                 <el-dialog :visible.sync="dialogUpdate" width="40%" title="淇敼閮ㄩ棬" v-if="dialogUpdate"
                     :before-close="handleClose">
-                    <updateUser />
-                    <!-- :updateFlag="updateFlag"
-            :userInfo="userInfo"
-            :getDepartList="context === '' ? getUserList : search"
-            @changeDialog="changMyDialog" -->
+                    <updateUser @closeUpdateDialog="closeUpdateDialog()" :updateDepartmentData="updateDepartmentData" />
+
                 </el-dialog>
                 <el-dialog :visible.sync="dialogcheck" width="40%" title="鏌ョ湅" v-if="dialogcheck"
-                    :before-close="handleClose">
+                    :before-close="handleClose" >
                     <detailUser />
-                    <!-- :updateFlag="updateFlag"
-            :userInfo="userInfo"
-            :getDepartList="context === '' ? getUserList : search"
-            @changeDialog="changMyDialog" -->
                 </el-dialog>
 
                 <el-dialog :visible.sync="dialogAdd" width="40%" title="娣诲姞閮ㄩ棬" v-if="dialogAdd"
                     :before-close="handleClose">
-                    <createUser />
-                    <!-- :updateFlag="updateFlag"
-            :userInfo="userInfo"
-            :getDepartList="context === '' ? getUserList : search"
-            @changeDialog="changMyDialog" -->
+                    <createUser @closeUpdateDialog="closeUpdateDialog()" />
                 </el-dialog>
 
                 <div class="tools">
@@ -141,138 +128,28 @@
     </div>
 </template>
 <script>
-// import uploadVio from './updateUser/uploadResult/vio'
-// import uploadIll from "./updateUser/uploadResult/ill"
 import createUser from "./createUser";
 import updateUser from "./updateUser";
 import detailUser from "./detailUser";
+import { deleteTeam, exportTeamInfo, importTeamInfo, searchTeamInfo } from "@/api/system/portal/teamConstruction";
+import {SUCCESS_CODE} from "@/utils";
+
 export default {
     components: {
-        // updateUser,
-        // uploadVio, uploadIll,
         updateUser, createUser, detailUser
     },
+
     data() {
         return {
+            updateDepartmentData: null,
+            searchDepartment: '',
+            searchStatus: '',
+            tableFile: null,
             dialogUpdate: false,
             dialogcheck: false,
-            tableData: [
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-                {
-                    code: "琛楅亾1",
-                    questionType: "34",
-                    bigType: "20",
-                    smallType: "16",
-                    imagesId: "26",
-                    uploadTime: "8",
-                    breakRuleActiveNumber: "2",
-                    crimeActiveNumber: "1",
-                    monthCaseNumber: "0",
-                    noTimeoutCaseNumber: "145",
-                    reViewNumber: "100",
-                    status: "23",
-                },
-            ],
+            tableData: [],
             context: "",
             dialogUpload: false,
-            // dialogUpdate: false,
             dialogView: false,
             updateFlag: false,
             userInfo: {},
@@ -323,6 +200,7 @@
             dialogAdd: false,
         }
     },
+
     created() {
         this.statusArr[0] = 6;
         this.typeList.forEach(item => {
@@ -332,25 +210,80 @@
         })
         this.getUserList();
     },
+
     methods: {
+
         //淇敼
-        handleUpdate() {
+        showUpdateDialog(data) {
             this.dialogUpdate = true;
+            this.updateDepartmentData = data;
         },
+
         // 鏌ョ湅
-        handleFind() {
+        showViewDialog() {
             this.dialogcheck = true;
         },
+
+        // 娣诲姞鐣岄潰
+        showAddDialog() {
+          this.dialogAdd = true;
+        },
+
+        // 瀵煎嚭
+        exportTable() {
+          exportTeamInfo({ current: this.currentPage, size: this.pageSize, departName: this.searchDepartment, status: this.searchStatus })
+              .then(res => {
+                const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' });
+                const fileName = res.contentDisposition.split('=')[1];
+                if (window.navigator && window.navigator.msSaveBlob) {
+                  navigator.msSaveBlob(blob, fileName);
+                } else {
+                  const link = document.createElement('a');
+                  link.style.display = 'none';
+                  link.href = URL.createObjectURL(blob);
+                  link.setAttribute('download', decodeURI(fileName));
+                  document.body.appendChild(link);
+                  link.click();
+                  URL.revokeObjectURL(link.href);
+                  document.body.removeChild(link);
+                }
+              })
+              .catch(err => {
+                this.$message({ type: 'error', message: err });
+              });
+        },
+
+        // 瀵煎叆
+        importTable(file) {
+          importTeamInfo({'multipartFile': file.file})
+              .then(({ code, message }) => {
+                if (code === SUCCESS_CODE) {
+                  this.$message({ type: 'success', message });
+                  this.getUserList();
+                } else {
+                  this.$message({ type: 'error', message });
+                }
+              })
+              .catch(err => {
+                this.$message({ type: 'error', message: err });
+              });
+        },
+
+        closeUpdateDialog() {
+          this.dialogAdd = false;
+          this.dialogUpdate = false;
+          this.getUserList();
+        },
+
         // 椤堕儴涓嬫媺妗�
         setMystatus(value) {
-            console.log(value);
             this.statusArr[1] = value;
             this.changeTypeChecked(value - 1);
             this.getUserList();
         },
+
         // 鎵归噺鍒犻櫎
         mulDelete(idArr) {
-            console.log(idArr);
             this.$axios({
                 method: 'delete',
                 url: 'sccg/violations/batch_delete?ids=' + idArr,
@@ -362,9 +295,9 @@
                 })
             })
         },
+
         // 鎵ц涓嬫媺妗嗘搷浣�
         selectChange(list) {
-            console.log(this.tempList);
             if (this.tempList.length !== 0) {
                 if (list === 3) {
                     this.preMyIdx = list;
@@ -378,125 +311,112 @@
                 })
             }
         },
+
         // 鐩戝惉琛ㄦ牸
         tableChange(list) {
             this.tempList = [];
             list.forEach(item => {
                 this.tempList.push(item.code);
             })
-            if (list.length === this.tableData.length) {
-                this.all = true;
-            } else {
-                this.all = false
-            }
+            this.all = list.length === this.tableData.length;
         },
+
         // 鍏ㄩ��
         selectAll() {
             this.$refs.multipleTable.toggleAllSelection();
         },
+
         // 鍙嶉��
         disSame(list) {
             list.forEach(row => {
                 this.$refs.multipleTable.toggleRowSelection(row)
             })
         },
-        // 鍒犻櫎鍗曟潯鏁版嵁
-        handleDelete({ number }) {
-            console.log(number);
-            this.$confirm('纭鍒犻櫎锛�')
-                .then(_ => {
-                    console.log(1);
-                    this.$axios({
-                        method: 'delete',
-                        url: `sccg/violations/delete?id=${number}`,
-                    })
-                        .then(res => {
-                            console.log(res);
-                            this.$message({
-                                type: res.code === 200 ? 'success' : 'warning',
-                                message: res.message
-                            })
 
-                            this.getUserList();
-                        })
-                })
-                .catch(_ => { console.log(2) });
+        // 鍒犻櫎鍗曟潯鏁版嵁
+        handleDelete(row) {
+          this.$confirm('纭鍒犻櫎锛�')
+              .then(() => {
+                deleteTeam({ id: row.id })
+                    .then(({ code, message }) => {
+                      if (code === SUCCESS_CODE) {
+                        this.$message({ type: 'success', message });
+                        this.getUserList();
+                      } else {
+                        this.$message({ type: 'error', message });
+                      }
+                    })
+                    .catch(err => {
+                      this.$message({ type: 'error', message: err });
+                    })
+              })
         },
+
         // 鑾峰彇鐢ㄦ埛鍒楄〃
         getUserList() {
-            const { currentPage, pageSize, context, statusArr } = this;
-            console.log(statusArr);
-            // this.$axios({
-            //     method: 'get',
-            //     url: `sccg/base_case/query?state=${statusArr[0]}&current=${currentPage}&size=${pageSize}&resource=2&type=${statusArr[1]}`
-            // }).then(res => {
-            //     this.totalNum = res.data.total;
-            //     this.tableData = res.data.records;
-            //     console.log(res);
-            // })
+          const searchInfo = {
+            current: this.currentPage, size: this.pageSize, departName: this.searchDepartment, status: this.searchStatus
+          };
+          searchTeamInfo(searchInfo)
+              .then(({ data }) => {
+                this.tableData = data.records;
+                this.totalNum = data.total;
+              })
+              .catch(err => {
+                console.log(err);
+              });
         },
+
         // 鏇存敼杩濊/杩濆缓
         changeTypeChecked(idx) {
             this.typeList.forEach((item, index) => {
-                if (index === idx) {
-                    item.checked = true;
-                } else {
-                    item.checked = false;
-                }
+                item.checked = index === idx;
             })
             this.mystatus = idx + 1;
-            console.log(this.mystatus);
             this.statusArr[1] = this.typeList[idx].value;
             this.getUserList();
         },
+
         // 璁剧疆琛ㄦ牸鏂戦┈绾�
         tableRowClassName({ row, rowIndex }) {
-            if ((rowIndex + 1) % 2 == 0) {
+            if ((rowIndex + 1) % 2 === 0) {
                 return 'warning-row';
             } else {
                 return 'success-row';
             }
-            return '';
         },
+
         // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
         changeCurrentPage(page) {
             this.currentPage = page;
             this.getUserList();
         },
+
         // 涓婁竴椤电偣鍑讳簨浠�
         handlePrev(page) {
             this.currentPage = page;
             this.getUserList();
         },
+
         // 涓嬩竴椤电偣鍑讳簨浠�
         handleNext(page) {
             this.currentPage = page;
             this.getUserList();
         },
-        addImages() {
-            this.dialogAdd = true;
-        },
+
         handleClose(done) {
             this.$confirm('纭鍏抽棴锛�')
                 .then(_ => {
                     this.dialogUpload = false;
-                    // this.dialogUpdate = false;
                     done();
                 })
                 .catch(_ => { });
         },
-        handleClose(done) {
-            this.$confirm('纭鍏抽棴锛�')
-                .then(_ => {
-                    this.dialogUpload = false;
-                    // this.dialogUpdate = false;
-                    done();
-                })
-                .catch(_ => { });
-        },
+
         async JumpView(data) {
             await this.getEventInfo(data.code);
         },
+
         // 鑾峰彇妗堜欢淇℃伅
         async getEventInfo(code) {
             await this.$axios({
@@ -508,17 +428,19 @@
                     this.dialogView = true;
                 })
         },
-        opernDialog(data) {
+
+        openDialog(data) {
             this.dialogUpload = true;
             this.caseId = data.id;
             this.caseCode = data.code
-            // console.log(data); 
         },
+
         // 鍏抽棴涓婁紶鐣岄潰
         closeDialog({ flag }) {
             this.dialogUpload = flag;
             this.getUserList();
         },
+
         // 澶勭悊鏃堕棿
         filterTime(time) {
             return helper(time);
@@ -534,15 +456,10 @@
 
     header {
         background-color: #09152f;
-        border: 1pox solid #fff;
 
         .headerContent {
-            // padding: 0 40px;
             width: 100%;
-            // display: flex;
             line-height: 60px;
-            // justify-content: space-between;
-            // align-items: center;
 
             .search {
                 display: flex;
@@ -596,7 +513,6 @@
         background-color: #09152f;
         margin-top: 20px;
         padding-bottom: 50px;
-        border: 1pox solid #fff;
 
         .btn span:hover {
             cursor: pointer;
@@ -692,13 +608,6 @@
         .el-table {
             color: #4b9bb7;
             font-size: 10px;
-
-            // &::v-deep .cell {
-            //     text-overflow: ellipsis;
-            //     white-space: nowrap;
-            //     overflow: hidden;
-            // }
-
 
             .operation {
                 display: flex;
diff --git a/src/views/systemSetting/platform/cockpitManage/updateUser/index.vue b/src/views/systemSetting/platform/cockpitManage/updateUser/index.vue
index f1cffaa..a26873b 100644
--- a/src/views/systemSetting/platform/cockpitManage/updateUser/index.vue
+++ b/src/views/systemSetting/platform/cockpitManage/updateUser/index.vue
@@ -6,182 +6,126 @@
           ref="user"
           label-width="140px"
           autoComplete="on"
-          :model="depart"
-          :rules="createDepartRules"
+          :model="updateData"
+          :rules="rules"
           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="updateData.name" 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="peopleNumber">
+            <el-input v-model="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.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="updateData.reviewOrLawsuitNumber" placeholder="璇疯緭鍏ュ璁垨璇夎鏁�"></el-input>
           </el-form-item>
         </el-form>
       </div>
     </main>
+    <footer>
+      <div class="optionBtn">
+        <el-button @click="closeDialog">鍙栨秷</el-button>
+        <el-button type="primary" class="btn submit" @click="submitUpdate">纭畾</el-button>
+      </div>
+    </footer>
   </div>
 </template>
 <script>
-import { getTypeList } from "@/utils/helper";
+import { deepClone } from "@/utils/helper";
+import { updateTeamInfo } from "@/api/system/portal/teamConstruction";
+import { SUCCESS_CODE } from "@/utils";
+
 export default {
   data() {
 
     return {
-    depart:{},
-      imagedata: {
-        code: "SJ202211010001",
-        questionType: "杩濊",
-        bigType: "杩濆弽鍥藉鏈夊叧鏍囧噯缂栧埗鍩庝埂瑙勫垝",
-        smallType: "鍦ㄥ眳姘戜綇瀹呮ゼ銆佹湭閰嶅璁剧珛涓撶敤鐑熼亾鐨勫晢浣忕患鍚堟ゼ銆佸晢浣忕患鍚堟ゼ鍐呬笌灞呬綇灞傜浉閭荤殑鍟嗕笟妤煎眰鍐呮柊寤恒�佹敼寤恒�佹墿寤轰骇鐢熸补鐑熴�佸紓鍛炽�佸簾姘旂殑椁愰ギ鏈嶅姟椤圭洰",
-        imagesId: "1",
-        uploadTime: "2022-10-31 20:20:01",
-        imageUrl: "https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg.fabao365.xuanfa.cn%2Fimage%2F202107%2F130f9d19f204302f.jpg&refer=http%3A%2F%2Fimg.fabao365.xuanfa.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1670034077&t=974b018f9e27023a01d2d8ad3c7c44f2"
-      },
+      updateData: null,
+      rules: {
+        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: '澶嶈鎴栬瘔璁兼暟蹇呭~' }]
+      }
     }
   },
   created() {
-    // const that = this;
-    // this.user = JSON.parse(JSON.stringify(that.userInfo));
-    // console.log(this.user);
-    // this.user.parentId = this.user.parentId === 0 ? '鏆傛棤涓婄骇閮ㄩ棬' : this.user.parentId;
-    // this.checkedList = this.user.userInfoDTOS;
-    // this.checkedList.forEach((e) => {
-    //   this.checkedUser.push(e.userId);
-    // });
-    // console.log(this.checkedUser)
-    // this.$axios({
-    //   method: "get",
-    //   url: "sccg/depart/tree",
-    // }).then((res) => {
-    //   that.departList = res.data;
-    // });
-    // this.getUserList(this.user.id);
-    // // 鑾峰彇閮ㄩ棬绫诲瀷
-    // this.getDepartType();
+    this.updateData = deepClone(this.updateDepartmentData);
   },
   methods: {
-    //   handleUser() {
-    //     this.$refs["user"].validate((valid) => {
-    //       if (valid) {
-    //         const { user, checkedList } = this;
-    //         const arr = [];
-    //         checkedList.forEach((item) => {
-    //           arr.push({ leader: item.leader, userId: item.id ? item.id : item.userId });
-    //         });
-    //         if (arr.length === 0) {
-    //           this.$message({
-    //             type: 'warning',
-    //             message: '璇烽�夋嫨閮ㄩ棬浜哄憳',
-    //           })
-    //         } else {
-    //           this.$axios
-    //             .post("sccg/depart/update", {
-    //               id: user.id,
-    //               departName: user.departName,
-    //               parentId: user.parentId === '鏆傛棤涓婄骇閮ㄩ棬' ? 0 : user.parentId,
-    //               departDes: user.departDes,
-    //               departManagerList: arr,
-    //             })
-    //             .then((res) => {
-    //               this.$message({
-    //                 message: res.message,
-    //                 type: res.code === 200 ? "success" : "warning",
-    //               });
-    //               this.$emit("changeDialog", { flag: false });
-    //               this.getDepartList();
-    //             });
-    //         }
-    //       } else {
-    //         return false;
-    //       }
-    //     });
-    //   },
-    //   // 鑾峰彇閮ㄩ棬绫诲瀷
-    //   async getDepartType() {
-    //     this.typeList = await getTypeList(1, "08");
-    //   },
+    submitUpdate() {
+      this.$refs.user.validate((valid) => {
+        if (valid) {
+          updateTeamInfo(this.updateData)
+            .then(({ code, message }) => {
+              if (code === SUCCESS_CODE) {
+                this.$emit('closeUpdateDialog');
+                this.$message({ type: 'success', message });
+              } else {
+                this.$message({ type: 'error', message });
+              }
+            })
+            .catch(err => {
+              this.$message({ type: 'error', message: err });
+            });
+        } else {
+          this.$message({ type: 'warning', message: '璇锋鏌ュ繀濉」' });
+        }
+      });
+    },
 
-    //   // 璁剧疆棰嗗
-    //   setLeader(idx) {
-    //     if (this.updateFlag) {
-    //       this.checkedList.forEach((item, index) => {
-    //         item.leader = index === idx;
-    //       });
-    //     }
-    //   },
-
-    //   // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
-    //   getUserList(id) {
-    //     // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�佺敤鎴锋煡璇�(鏆傛椂鏀寔鐢佃瘽鍙风爜)
-    //     this.$axios.get(`/sccg/depart/query_surplus_exist_user?id=`+id).then((res) => {
-    //       if (res.code === 200) {
-    //         this.userList = res.data;
-    //       }
-    //     });
-    //   },
-    //   addUser() {
-    //     this.checkedList = [];
-    //     this.userList.forEach((item) => {
-    //       this.checkedUser.forEach((child) => {
-    //         if (item.id == child) {
-    //           this.checkedList.push({
-    //             id: item.id,
-    //             username: item.username,
-    //             leader: false,
-    //           });
-    //         }
-    //       });
-    //     });
-    //     this.checkedList[0].leader = true;
-    //     console.log(this.checkedList);
-    //     this.openUser = false;
-    //   },
-    // },
-    // props: ["userInfo", "updateFlag", "getDepartList", "changeDialog"],
+    closeDialog() {
+      this.$emit('closeUpdateDialog');
+    }
   },
-  props: ['updateFlag']
+  props: ['updateDepartmentData']
 };
 </script>
 <style lang="scss" scoped>
@@ -190,18 +134,9 @@
   background-color: #09152f;
 
   main {
-    // border: 1px solid #fff;
     text-align: left;
     padding: 0 55px;
     background-color: #09152f;
-    padding-bottom: 50px;
-
-    // .mainTitle {
-    //     color: #4b9bb7;
-    //     font-weight: 600;
-    //     line-height: 100px;
-    //     font-size: 14px;
-    // }
 
     .mainContent {
       display: flex;
@@ -340,4 +275,13 @@
 .el-input {
   width: 280px !important;
 }
+
+footer {
+  border-top: 1px solid #fff;
+  height: 80px;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  padding-right: 20px;
+}
 </style>
\ No newline at end of file
diff --git a/src/views/systemSetting/platform/portalSetting/index.vue b/src/views/systemSetting/platform/portalSetting/index.vue
index a799394..8b3abd4 100644
--- a/src/views/systemSetting/platform/portalSetting/index.vue
+++ b/src/views/systemSetting/platform/portalSetting/index.vue
@@ -1,7 +1,7 @@
 <template>
     <div class="log">
         <header>
-            <div clas="headerTitle">
+            <div class="headerTitle">
                 绯荤粺璁剧疆 >> 闂ㄦ埛绠$悊 > logo绠$悊
             </div>
         </header>

--
Gitblit v1.8.0