From c46189c4f6749602c71eb7cb5bab89823fe9b1e1 Mon Sep 17 00:00:00 2001
From: “dzb” <2632970487@qq.com>
Date: 星期五, 21 十月 2022 14:03:40 +0800
Subject: [PATCH] 修改车辆管理bug

---
 dist.rar                                                                                       |    0 
 src/views/systemSetting/baseSetting/department/updateUser/index.vue                            |   55 +--
 src/views/operate/car/myIndex/create/soil/index.vue                                            |    4 
 src/views/operate/car/myIndex/index.vue                                                        |   52 ++-
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue |   20 
 src/views/operate/car/myIndex/create/law/index.vue                                             |  140 +++++---
 src/views/systemSetting/baseSetting/role/viewRole/index.vue                                    |    2 
 src/views/operate/car/myIndex/edit/soil/index.vue                                              |  292 ++++++++++++++++++
 src/views/operate/car/myIndex/update/law/index.vue                                             |   38 -
 src/views/operate/car/myIndex/update/soil/index.vue                                            |   25 -
 src/views/operate/car/myIndex/edit/law/index.vue                                               |  289 ++++++++++++++++++
 src/utils/helper.js                                                                            |   12 
 12 files changed, 766 insertions(+), 163 deletions(-)

diff --git a/dist.rar b/dist.rar
index 0f915f9..76e0ac1 100644
--- a/dist.rar
+++ b/dist.rar
Binary files differ
diff --git a/src/utils/helper.js b/src/utils/helper.js
index 1df5e96..cc5a8e1 100644
--- a/src/utils/helper.js
+++ b/src/utils/helper.js
@@ -33,6 +33,18 @@
         })
     return arr;
 }
+// 鑾峰彇瀛楀吀琛�2
+export async function getCodeList(code){
+    let arr;
+    await myrequest({
+        method: 'get',
+        url: `/sccg/dict/queryByCode?code=${code}`
+    })
+        .then(res => {
+            arr = res.data;
+        })
+    return arr;
+}
 export async function myDownLoad(arr){
     let fileName = arr.headers['content-disposition'];
             console.log(fileName);
diff --git a/src/views/operate/car/myIndex/create/law/index.vue b/src/views/operate/car/myIndex/create/law/index.vue
index 3519ff4..4994bfc 100644
--- a/src/views/operate/car/myIndex/create/law/index.vue
+++ b/src/views/operate/car/myIndex/create/law/index.vue
@@ -10,21 +10,14 @@
                     </el-form-item>
                     <!-- 鎵�灞為儴闂� -->
                     <el-form-item class="optionItems" label="鎵�灞為儴闂�:" prop="depart">
-                        <el-input v-model="car.depart" placeholder="璇峰~鍐欐墍灞為儴闂�"></el-input>
-                        <!-- <el-select v-model="car.group" placeholder="璇烽�夋嫨鎵�灞炵被鍨�">
-                            <el-option v-for="item in teamList" :key="item.value" :label="item.label"
-                                :value="item.value">
+                        <!-- <el-input v-model="car.depart" placeholder="璇峰~鍐欐墍灞為儴闂�"></el-input> -->
+                        <el-select v-model="car.belong" placeholder="璇烽�夋嫨鎵�灞為儴闂�">
+                            <el-option value="1">
+                                <el-tree ref="tree" :check-strictly="true" :data="departList" :props="defaultProps"
+                                    show-checkbox @check-change="handleCheck" default-expand-all node-key="id">
+                                </el-tree>
                             </el-option>
-                        </el-select> -->
-                    </el-form-item>
-                    <!-- 鎵�灞炲ぇ闃� -->
-                    <el-form-item class="optionItems" label="鎵�灞炲ぇ闃�:" prop="belong">
-                        <el-input v-model="car.belong" placeholder="璇峰~鍐欐墍灞炲ぇ闃�"></el-input>
-                        <!-- <el-select v-model="car.group" placeholder="璇烽�夋嫨鎵�灞炵被鍨�">
-                            <el-option v-for="item in teamList" :key="item.value" :label="item.label"
-                                :value="item.value">
-                            </el-option>
-                        </el-select> -->
+                        </el-select>
                     </el-form-item>
                     <!-- 杞︿富濮撳悕 -->
                     <el-form-item class="optionItem" label="杞︿富濮撳悕:" prop="ownerName">
@@ -37,10 +30,6 @@
                     <!-- 鑱旂郴鏂瑰紡 -->
                     <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
                         <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�"></el-input>
-                    </el-form-item>
-                    <!-- 杞ㄨ抗 -->
-                    <el-form-item class="optionItem" label="杞ㄨ抗:" prop="trajectory">
-                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�"></el-input>
                     </el-form-item>
                     <el-form-item>
                         <div class="optionBtn">
@@ -58,14 +47,14 @@
     </div>
 </template>
 <script>
-import {validateCarNum,validatePhone,validateName} from '@/utils/validate'
+import { validateCarNum, validatePhone, validateName } from '@/utils/validate'
 export default {
     data() {
         const checkCarNum = (rule, value, callback) => {
             if (value) {
-                if(validateCarNum(value)){
+                if (validateCarNum(value)) {
                     callback()
-                }else{
+                } else {
                     callback(new Error('璇疯緭鍏ユ纭殑杞︾墝鍙�'));
                 }
             } else {
@@ -74,9 +63,9 @@
         }
         const checkName = (rule, value, callback) => {
             if (value) {
-                if(validateName(value)){
+                if (validateName(value)) {
                     callback()
-                }else{
+                } else {
                     callback(new Error('璇锋纭緭鍏ヨ溅涓诲鍚�'));
                 }
             } else {
@@ -85,9 +74,9 @@
         }
         const checkUser = (rule, value, callback) => {
             if (value) {
-                if(validateName(value)){
+                if (validateName(value)) {
                     callback()
-                }else{
+                } else {
                     callback(new Error('璇锋纭緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�'));
                 }
             } else {
@@ -96,9 +85,9 @@
         }
         const checkPhone = (rule, value, callback) => {
             if (value) {
-                if(validatePhone(value)){
+                if (validatePhone(value)) {
                     callback()
-                }else{
+                } else {
                     callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙�'));
                 }
             } else {
@@ -114,28 +103,28 @@
                 ownerName: "",
                 trajectory: "",
                 vehicleUser: "",
-                depart:'',
+                depart: '',
             },
             createCarRules: {
                 carNumber: [
                     {
-                        required: true, trigger:'blur', validator: checkCarNum
+                        required: true, trigger: 'blur', validator: checkCarNum
                     }
                 ],
                 contact: [
                     {
-                        required: true,trigger:'blur', validator: checkPhone
+                        required: true, trigger: 'blur', validator: checkPhone
                     }
                 ],
                 // id: 0,
                 ownerName: [
                     {
-                        required: true,trigger:'blur', validator: checkName
+                        required: true, trigger: 'blur', validator: checkName
                     }
                 ],
                 vehicleUser: [
                     {
-                        required: true,trigger:'blur', validator: checkUser
+                        required: true, trigger: 'blur', validator: checkUser
                     }
                 ]
             },
@@ -148,10 +137,23 @@
                     label: '澶ч槦浜�',
                     value: 2,
                 },
-            ]
+            ],
+            selectOrg: {
+                orgsid: [],
+            },
+            mylabel: '',
+            departList: [],
+            defaultProps: {
+                children: "children",
+                label: "departName",
+            },
         }
     },
     created() {
+        // 鑾峰彇鍏ㄩ儴閮ㄩ棬鍒楄〃
+        this.$axios.get('/sccg/depart/tree').then(res => {
+            this.departList = res.data;
+        })
     },
     methods: {
         // 娣诲姞杞﹁締
@@ -159,7 +161,7 @@
             console.log(this.car);
             this.$refs.user.validate((valid) => {
                 if (valid) {
-                    const {car}  = this;
+                    const { car } = this;
                     this.$axios({
                         method: 'post',
                         url: 'sccg/car_Manage/addition_enforce',
@@ -171,32 +173,64 @@
                             ownerName: car.ownerName,
                             trajectory: car.trajectory,
                             vehicleUser: car.vehicleUser,
-                            depart:car.depart,
+                            depart: car.depart,
                         }
                     })
-                    .then(res=>{
-                        console.log(res);
-                        if(res.code === 200){
-                            this.$message({
-                                type:'success',
-                                message:'鏂板杞﹁締鎴愬姛',
-                            })
-                            this.$emit('closeDialog',{flag:false,index:1});
-                        }else{
-                            this.$message({
-                                type:'error',
-                                message:res.message,
-                            })
-                        }
-                    })
+                        .then(res => {
+                            console.log(res);
+                            if (res.code === 200) {
+                                this.$message({
+                                    type: 'success',
+                                    message: '鏂板杞﹁締鎴愬姛',
+                                })
+                                this.$emit('closeDialog', { flag: false, index: 1 });
+                            } else {
+                                this.$message({
+                                    type: 'error',
+                                    message: res.message,
+                                })
+                            }
+                        })
                 } else {
                     return false;
                 }
             })
         },
-        handleStop(){
-            this.$emit('closeDialog',{flag:false,index:0});
-        }
+        handleStop() {
+            this.$emit('closeDialog', { flag: false, index: 0 });
+        },
+        // 閮ㄩ棬淇敼
+        handleCheck(data, checked) {
+            console.log(data);
+            this.car.belong = data.departName
+            this.car.depart = data.id
+            // 鑾峰彇褰撳墠閫夋嫨鐨刬d鍦ㄦ暟缁勪腑鐨勭储寮�
+            const indexs = this.selectOrg.orgsid.indexOf(data.id);
+            // 濡傛灉涓嶅瓨鍦ㄦ暟缁勪腑锛屽苟涓旀暟缁勪腑宸茬粡鏈変竴涓猧d骞朵笖checked涓簍rue鐨勬椂鍊欙紝浠h〃涓嶈兘鍐嶆閫夋嫨銆�
+            if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
+                this.$message({
+                    message: "鍙兘閫夋嫨涓�涓儴闂紒",
+                    type: "warning",
+                    showClose: true,
+                });
+                // 璁剧疆宸查�夋嫨鐨勮妭鐐逛负false 寰堥噸瑕�
+                this.$refs.tree.setChecked(data, false);
+            } else if (this.selectOrg.orgsid.length === 0 && checked) {
+                // 鍙戠幇鏁扮粍涓虹┖ 骞朵笖鏄凡閫夋嫨
+                // 闃叉鏁扮粍鏈夊�硷紝棣栧厛娓呯┖锛屽啀push
+                this.selectOrg.orgsid = [];
+                this.selectOrg.orgsid.push(data.id);
+            } else if (
+                indexs >= 0 &&
+                this.selectOrg.orgsid.length === 1 &&
+                !checked
+            ) {
+                // 鍐嶆鐩存帴杩涜璧嬪�间负绌烘搷浣�
+                this.selectOrg.orgsid = [];
+                this.car.belong = ''
+                this.car.depart = ''
+            }
+        },
 
     },
     props: ['closeDialog']
diff --git a/src/views/operate/car/myIndex/create/soil/index.vue b/src/views/operate/car/myIndex/create/soil/index.vue
index 92c6e0d..fe08019 100644
--- a/src/views/operate/car/myIndex/create/soil/index.vue
+++ b/src/views/operate/car/myIndex/create/soil/index.vue
@@ -36,10 +36,6 @@
                     <el-form-item class="optionItems" label="鏂藉伐鍦板潃:" prop="geographicPosition">
                         <el-input v-model="car.geographicPosition" placeholder="璇峰~鍐欐柦宸ュ湴鍧�"></el-input>
                     </el-form-item>
-                    <!-- 杞ㄨ抗 -->
-                    <el-form-item class="optionItem" label="杞ㄨ抗:" prop="trajectory">
-                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�"></el-input>
-                    </el-form-item>
                     <el-form-item>
                         <div class="optionBtn">
                             <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">纭
diff --git a/src/views/operate/car/myIndex/edit/law/index.vue b/src/views/operate/car/myIndex/edit/law/index.vue
new file mode 100644
index 0000000..52d7620
--- /dev/null
+++ b/src/views/operate/car/myIndex/edit/law/index.vue
@@ -0,0 +1,289 @@
+<template>
+    <div class="createUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" label-width="140px" :rules="createCarRules" autoComplete="on" :model="car"
+                    label-position="right">
+                    <!-- 杞︾墝鍙� -->
+                    <el-form-item class="optionItem" label="杞︾墝鍙�:" prop="carNumber">
+                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿"></el-input>
+                    </el-form-item>
+                    <!-- 鎵�灞為儴闂� -->
+                    <el-form-item class="optionItems" label="鎵�灞為儴闂�:" prop="depart">
+                        <!-- <el-input v-model="car.depart" placeholder="璇峰~鍐欐墍灞為儴闂�"></el-input> -->
+                        <el-select v-model="car.belong" placeholder="璇烽�夋嫨鎵�灞為儴闂�">
+                            <el-option value="1">
+                                <el-tree ref="tree" :check-strictly="true" :data="departList" :props="defaultProps"
+                                    show-checkbox @check-change="handleCheck" default-expand-all node-key="id">
+                                </el-tree>
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 杞︿富濮撳悕 -->
+                    <el-form-item class="optionItem" label="杞︿富濮撳悕:" prop="ownerName">
+                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�"></el-input>
+                    </el-form-item>
+                    <!-- 杞﹁締浣跨敤浜哄憳 -->
+                    <el-form-item class="optionItem" label="杞﹁締浣跨敤浜哄憳:" prop="vehicleUser">
+                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�"></el-input>
+                    </el-form-item>
+                    <!-- 鑱旂郴鏂瑰紡 -->
+                    <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
+                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�"></el-input>
+                    </el-form-item>
+                    <el-form-item>
+                        <div class="optionBtn">
+                            <el-button type="primary" class="btn submit" @click.native.prevent="handleUpdateLawCar">纭
+                            </el-button>
+                        </div>
+                    </el-form-item>
+                </el-form>
+
+            </div>
+        </main>
+    </div>
+</template>
+<script>
+import { validateCarNum, validatePhone, validateName } from '@/utils/validate'
+export default {
+    data() {
+        const checkCarNum = (rule, value, callback) => {
+            if (value) {
+                if (validateCarNum(value)) {
+                    callback()
+                } else {
+                    callback(new Error('璇疯緭鍏ユ纭殑杞︾墝鍙�'));
+                }
+            } else {
+                callback(new Error('杞︾墝鍙蜂笉鑳戒负绌�'));
+            }
+        }
+        const checkName = (rule, value, callback) => {
+            if (value) {
+                if (validateName(value)) {
+                    callback()
+                } else {
+                    callback(new Error('璇锋纭緭鍏ヨ溅涓诲鍚�'));
+                }
+            } else {
+                callback(new Error('杞︿富濮撳悕涓嶈兘涓虹┖'));
+            }
+        }
+        const checkUser = (rule, value, callback) => {
+            if (value) {
+                if (validateName(value)) {
+                    callback()
+                } else {
+                    callback(new Error('璇锋纭緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�'));
+                }
+            } else {
+                callback(new Error('杞﹁締浣跨敤浜哄憳涓嶈兘涓虹┖'));
+            }
+        }
+        const checkPhone = (rule, value, callback) => {
+            if (value) {
+                if (validatePhone(value)) {
+                    callback()
+                } else {
+                    callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙�'));
+                }
+            } else {
+                callback(new Error('鎵嬫満鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        return {
+            car: {
+                carNumber: "",
+                contact: "",
+                belong: "",
+                // id: 0,
+                ownerName: "",
+                trajectory: "",
+                vehicleUser: "",
+                depart: '',
+            },
+            createCarRules: {
+                carNumber: [
+                    {
+                        required: true, trigger: 'blur', validator: checkCarNum
+                    }
+                ],
+                contact: [
+                    {
+                        required: true, trigger: 'blur', validator: checkPhone
+                    }
+                ],
+                // id: 0,
+                ownerName: [
+                    {
+                        required: true, trigger: 'blur', validator: checkName
+                    }
+                ],
+                vehicleUser: [
+                    {
+                        required: true, trigger: 'blur', validator: checkUser
+                    }
+                ]
+            },
+            selectOrg: {
+                orgsid: [],
+            },
+            mylabel: '',
+            departList: [],
+            defaultProps: {
+                children: "children",
+                label: "departName",
+            },
+        }
+    },
+    created() {
+        console.log(this.info);
+        const {getDepartTree} = this
+        // 鍒濆鍖栭儴闂ㄦ爲
+        getDepartTree();
+        // 鍒濆鍖栨暟鎹�
+        this.car = JSON.parse(JSON.stringify(this.info));
+
+    },
+    methods: {
+        // 淇敼鎵ф硶杞�
+        handleUpdateLawCar() {
+            this.$refs.user.validate((valid) => {
+                if (valid) {
+                    const { car } = this;
+                    this.$axios({
+                        method: 'put',
+                        url: 'sccg/car_Manage/modification_enforce',
+                        data: {
+                            ...car
+                        }
+                    })
+                        .then(res => {
+                            console.log(res);
+                            if (res.code === 200) {
+                                this.$message({
+                                    type: 'success',
+                                    message: '淇敼杞﹁締鎴愬姛',
+                                })
+                                this.$emit('closeDialog', { flag: false, index: 1 });
+                            } else {
+                                this.$message({
+                                    type: 'error',
+                                    message: res.message,
+                                })
+                            }
+                        })
+                } else {
+                    return false;
+                }
+            })
+        },
+        // 閮ㄩ棬淇敼
+        handleCheck(data, checked) {
+            console.log(data);
+            this.car.belong = data.departName
+            this.car.depart = data.id
+            // 鑾峰彇褰撳墠閫夋嫨鐨刬d鍦ㄦ暟缁勪腑鐨勭储寮�
+            const indexs = this.selectOrg.orgsid.indexOf(data.id);
+            // 濡傛灉涓嶅瓨鍦ㄦ暟缁勪腑锛屽苟涓旀暟缁勪腑宸茬粡鏈変竴涓猧d骞朵笖checked涓簍rue鐨勬椂鍊欙紝浠h〃涓嶈兘鍐嶆閫夋嫨銆�
+            if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
+                this.$message({
+                    message: "鍙兘閫夋嫨涓�涓儴闂紒",
+                    type: "warning",
+                    showClose: true,
+                });
+                // 璁剧疆宸查�夋嫨鐨勮妭鐐逛负false 寰堥噸瑕�
+                this.$refs.tree.setChecked(data, false);
+            } else if (this.selectOrg.orgsid.length === 0 && checked) {
+                // 鍙戠幇鏁扮粍涓虹┖ 骞朵笖鏄凡閫夋嫨
+                // 闃叉鏁扮粍鏈夊�硷紝棣栧厛娓呯┖锛屽啀push
+                this.selectOrg.orgsid = [];
+                this.selectOrg.orgsid.push(data.id);
+            } else if (
+                indexs >= 0 &&
+                this.selectOrg.orgsid.length === 1 &&
+                !checked
+            ) {
+                // 鍐嶆鐩存帴杩涜璧嬪�间负绌烘搷浣�
+                this.selectOrg.orgsid = [];
+                this.car.belong = ''
+                this.car.depart = ''
+            }
+        },
+        // 鑾峰彇閮ㄩ棬鏍�
+        getDepartTree() { 
+            this.$axios.get('/sccg/depart/tree').then(res => {
+                this.departList = res.data;
+            })
+        }
+
+
+    },
+    props: ['info','closeDialog']
+}
+</script>
+<style lang="scss" scoped>
+.createUser {
+    border-radius: 1px;
+    background-color: #09152f;
+
+    main {
+        // border: 1px solid #fff;
+        text-align: left;
+        padding: 0 55px;
+        background-color: #09152f;
+        padding-bottom: 50px;
+
+        .mainContent {
+            display: flex;
+            justify-content: center;
+            padding-top: 50px;
+
+            .el-form-item__content {
+                width: 400px;
+
+                .el-select {
+                    width: 100%;
+                }
+            }
+
+            .optionHandleSp {
+                display: flex;
+
+                .areaNumber,
+                .moreNumber {
+                    flex: 1;
+                }
+
+                .telNumber {
+                    flex: 2;
+                }
+            }
+
+            .optionBtn {
+                display: flex;
+                margin-top: 20px;
+
+                .btn {
+                    padding: 12px 50px;
+                }
+            }
+
+        }
+    }
+
+    &::v-deep .el-textarea__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/car/myIndex/edit/soil/index.vue b/src/views/operate/car/myIndex/edit/soil/index.vue
new file mode 100644
index 0000000..bc4017f
--- /dev/null
+++ b/src/views/operate/car/myIndex/edit/soil/index.vue
@@ -0,0 +1,292 @@
+<template>
+    <div class="createUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" label-width="140px" :rules="createCarRules" autoComplete="on" :model="car"
+                    label-position="right">
+                    <!-- 杞︾墝鍙� -->
+                    <el-form-item class="optionItem" label="杞︾墝鍙�:" prop="carNumber">
+                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿"></el-input>
+                    </el-form-item>
+                    <!-- 杞﹀瀷 -->
+                    <el-form-item class="optionItems" label="杞﹀瀷:" prop="carModel">
+                        <el-select v-model="car.carModel" placeholder="璇烽�夋嫨杞﹀瀷">
+                            <el-option v-for="item in carTypeList" :key="item.value" :label="item.label"
+                                :value="item.label">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 杞︿富濮撳悕 -->
+                    <el-form-item class="optionItem" label="杞︿富濮撳悕:" prop="ownerName">
+                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�"></el-input>
+                    </el-form-item>
+                    <!-- 杞﹁締浣跨敤浜哄憳 -->
+                    <el-form-item class="optionItem" label="杞﹁締浣跨敤浜哄憳:" prop="vehicleUser">
+                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�"></el-input>
+                    </el-form-item>
+                    <!-- 鑱旂郴鏂瑰紡 -->
+                    <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
+                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�"></el-input>
+                    </el-form-item>
+                    <!-- 鏂藉伐鍗曚綅 -->
+                    <el-form-item class="optionItems" label="鏂藉伐鍗曚綅:" prop="constructionOrg">
+                        <el-input v-model="car.constructionOrg" placeholder="璇峰~鍐欐柦宸ュ崟浣�"></el-input>
+                    </el-form-item>
+                    <!-- 鏂藉伐鍦板潃 -->
+                    <el-form-item class="optionItems" label="鏂藉伐鍦板潃:" prop="geographicPosition">
+                        <el-input v-model="car.geographicPosition" placeholder="璇峰~鍐欐柦宸ュ湴鍧�"></el-input>
+                    </el-form-item>
+                    <el-form-item>
+                        <div class="optionBtn">
+                            <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">纭
+                            </el-button>
+                        </div>
+                    </el-form-item>
+                </el-form>
+
+            </div>
+        </main>
+    </div>
+</template>
+<script>
+import {validateName,validatePhone,validateCarNum} from '@/utils/validate'
+export default {
+    data() {
+        const checkCarNum = (rule, value, callback) => {
+            if (value) {
+                if(validateCarNum(value)){
+                    callback();
+                }else{
+                    callback(new Error('璇疯緭鍏ユ纭殑杞︾墝鍙�'));
+                }
+            } else {
+                callback(new Error('杞︾墝鍙蜂笉鑳戒负绌�'));
+            }
+        }
+        const checkName = (rule, value, callback) => {
+            if (value) {
+                if(validateName(value)){
+                    callback();
+                }else{
+                    callback(new Error('璇疯緭鍏ユ纭殑杞︿富濮撳悕'))
+                }
+            } else {
+                callback(new Error('杞︿富濮撳悕涓嶈兘涓虹┖'));
+            }
+        }
+        const checkUser = (rule, value, callback) => {
+            if (value) {
+                if(validateName(value)){
+                    callback();
+                }else{
+                    callback(new Error('璇锋纭緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�'))
+                }
+            } else {
+                callback(new Error('杞﹁締浣跨敤浜哄憳涓嶈兘涓虹┖'));
+            }
+        }
+        const checkPhone = (rule, value, callback) => {
+            if (value) {
+                if(validatePhone(value)){
+                    callback();
+                }else{
+                    callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙�'))
+                }
+            } else {
+                callback(new Error('鎵嬫満鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCarModel = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('杞﹁締鍨嬪彿涓嶈兘涓虹┖'));
+            }
+        }
+        const checkOrg = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('鏂藉伐鍗曚綅涓嶈兘涓虹┖'));
+            }
+        }
+        const checkPosition = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('鏂藉伐鍦板潃涓嶈兘涓虹┖'));
+            }
+        }
+        return {
+            car: {
+                carNumber: "",
+                contact: "",
+                belong: "",
+                // id: 0,
+                ownerName: "",
+                trajectory: "",
+                vehicleUser: "",
+                constructionOrg: '',
+            },
+            createCarRules: {
+                carNumber: [
+                    {
+                        required: true, trigger:'blur', validator: checkCarNum
+                    }
+                ],
+                carModel: [
+                    {
+                        required: true, trigger:'change',validator: checkCarModel
+                    }
+                ],
+                contact: [
+                    {
+                        required: true,trigger:'blur', validator: checkPhone
+                    }
+                ],
+                // id: 0,
+                ownerName: [
+                    {
+                        required: true,trigger:'blur', validator: checkName
+                    }
+                ],
+                vehicleUser: [
+                    {
+                        required: true, trigger:'blur',validator: checkUser
+                    }
+                ],
+                constructionOrg: [
+                    {
+                        required: true,trigger:'blur', validator: checkOrg
+                    }
+                ],
+                geographicPosition: [
+                    {
+                        required: true, trigger:'blur',validator: checkPosition
+                    }
+                ]
+            },
+            carTypeList: [
+                {
+                    label: '澶у瀷',
+                    value: 1,
+                },
+                {
+                    label: '涓瀷',
+                    value: 2,
+                },
+                {
+                    label: '灏忓瀷',
+                    value: 3,
+                },
+            ]
+        }
+    },
+    created() {
+        // 鍒濆鍖栨暟鎹�
+        this.car = JSON.parse(JSON.stringify(this.info));
+    },
+    methods: {
+        // 娣诲姞杞﹁締
+        handleCar() {
+            console.log(this.car);
+            this.$refs.user.validate((valid) => {
+                if (valid) {
+                    const { car } = this;
+                    this.$axios({
+                        method: 'put',
+                        url: 'sccg/car_Manage/modification_slag',
+                        data: {
+                            ...car
+                        }
+                    })
+                        .then(res => {
+                            console.log(res);
+                            if (res.code === 200) {
+                                this.$message({
+                                    type: 'success',
+                                    message: '淇敼杞﹁締鎴愬姛',
+                                })
+                                this.$emit('closeDialog', { flag: false,index:1 });
+                            } else {
+                                this.$message({
+                                    type: 'error',
+                                    message: res.message,
+                                })
+                            }
+                        })
+                } else {
+                    return false;
+                }
+            })
+        },
+
+    },
+    props: ['info','closeDialog']
+}
+</script>
+<style lang="scss" scoped>
+.createUser {
+    border-radius: 1px;
+    background-color: #09152f;
+
+    main {
+        // border: 1px solid #fff;
+        text-align: left;
+        padding: 0 55px;
+        background-color: #09152f;
+        padding-bottom: 50px;
+
+        .mainContent {
+            display: flex;
+            justify-content: center;
+            padding-top: 50px;
+
+            .el-form-item__content {
+                width: 400px;
+
+                .el-select {
+                    width: 100%;
+                }
+            }
+
+            .optionHandleSp {
+                display: flex;
+
+                .areaNumber,
+                .moreNumber {
+                    flex: 1;
+                }
+
+                .telNumber {
+                    flex: 2;
+                }
+            }
+
+            .optionBtn {
+                display: flex;
+                margin-top: 20px;
+
+                .btn {
+                    padding: 12px 50px;
+                }
+            }
+
+        }
+    }
+
+    &::v-deep .el-textarea__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/car/myIndex/index.vue b/src/views/operate/car/myIndex/index.vue
index c3de32e..8ecdd43 100644
--- a/src/views/operate/car/myIndex/index.vue
+++ b/src/views/operate/car/myIndex/index.vue
@@ -45,7 +45,9 @@
                             <div class="btn">
                                 <span @click="handleView(scope.row)">鏌ョ湅</span>
                                 <span class="line">|</span>
-                                <span>鍒犻櫎</span>
+                                <span @click="handleEdit(scope.row)">缂栬緫</span>
+                                <span class="line">|</span>
+                                <span @click="handleDelete(scope.row)">鍒犻櫎</span>
                             </div>
                         </template>
                     </el-table-column>
@@ -61,6 +63,12 @@
                     v-if="dialogView" :before-close="handleNoClose">
                     <MyViewLaw v-if="mystatus === 1" :info="info"></MyViewLaw>
                     <MyViewSoil v-else :info="info"></MyViewSoil>
+                </el-dialog>
+                <!-- 缂栬緫 -->
+                <el-dialog :visible.sync="dialogEdit" width="60%" title="缂栬緫杞﹁締淇℃伅"
+                    v-if="dialogEdit" :before-close="handleClose">
+                    <MyEditLaw v-if="mystatus === 1" @closeDialog="closeDialog" :info="info"></MyEditLaw>
+                    <MyEditSoil v-else @closeDialog="closeDialog" :info="info"></MyEditSoil>
                 </el-dialog>
                 <!-- tools -->
                 <div class="tools">
@@ -95,10 +103,12 @@
 import MySoil from './create/soil'
 import MyViewLaw from './update/law'
 import MyViewSoil from './update/soil'
+import MyEditLaw from './edit/law'
+import MyEditSoil from './edit/soil'
 export default {
     components: {
         Mycreate,MySoil,MyViewLaw,
-        MyViewSoil
+        MyViewSoil,MyEditLaw,MyEditSoil
     },
     data() {
         return {
@@ -106,6 +116,7 @@
             context: "",
             dialogAdd:false,
             dialogView:false,
+            dialogEdit:false,
             info: '',
             totalNum: null,
             pageSize: 10,
@@ -113,7 +124,6 @@
             all: false,
             unsame: false,
             myIdx: 0,
-            preMyIdx:0,
             options: [
                 {
                     value: 0,
@@ -152,16 +162,22 @@
         }
     },
     created() {
-        this.getUserList();
+        this.getCarList();
     },
     methods: {
+        // 缂栬緫杞﹁締
+        handleEdit(data){
+            console.log(data)
+            this.dialogEdit = true
+            this.info = data;
+        },
         // 鎼滅储杞﹁締
         handleSearch(val){
             if(this.timer){
                 clearTimeout(this.timer);
             }
             this.timer = setTimeout(()=>{
-                this.getUserList();
+                this.getCarList();
             },1000);
         },
         // 娣诲姞杞﹁締
@@ -191,14 +207,14 @@
             })
         },
         // 鍒犻櫎鍗曟潯鏁版嵁
-        handleDelete({ number }) {
-            console.log(number);
+        handleDelete({id}) {
             this.$confirm('纭鍒犻櫎锛�')
                 .then(_ => {
-                    console.log(1);
+                    const {mystatus} = this
+                    let myurl = mystatus === 1 ? 'deletion_enforce':'deletion_slag'
                     this.$axios({
                         method: 'delete',
-                        url: `sccg/violations/delete?id=${number}`,
+                        url: `/sccg/car_Manage/${myurl}?id=${id}`,
                     })
                         .then(res => {
                             console.log(res);
@@ -207,13 +223,13 @@
                                 message: res.message
                             })
 
-                            this.getUserList();
+                            this.getCarList();
                         })
                 })
                 .catch(_ => { console.log(2) });
         },
-        // 鑾峰彇鐢ㄦ埛鍒楄〃
-        async getUserList() {
+        // 鑾峰彇杞﹁締鍒楄〃
+        async getCarList() {
             const { currentPage, pageSize, context, mystatus } = this;
             let arr =[];
             if(mystatus===1){
@@ -221,7 +237,6 @@
             }else{
                 arr = await this.getSoilCarList(currentPage, pageSize, context)
             }
-            console.log(arr);
             this.tableData = arr.records;
             this.totalNum = arr.total;
         },
@@ -260,7 +275,7 @@
                 }
             })
             this.mystatus = idx + 1;
-            this.getUserList();
+            this.getCarList();
         },
         // 璁剧疆琛ㄦ牸鏂戦┈绾�
         tableRowClassName({ row, rowIndex }) {
@@ -274,17 +289,17 @@
         // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
         changeCurrentPage(page) {
             this.currentPage = page;
-            this.getUserList();
+            this.getCarList();
         },
         // 涓婁竴椤电偣鍑讳簨浠�
         handlePrev(page) {
             this.currentPage = page;
-            this.getUserList();
+            this.getCarList();
         },
         // 涓嬩竴椤电偣鍑讳簨浠�
         handleNext(page) {
             this.currentPage = page;
-            this.getUserList();
+            this.getCarList();
         },
         handleClose(done) {
             this.$confirm('纭鍏抽棴锛�')
@@ -306,8 +321,9 @@
         // 鍏抽棴鐣岄潰
         closeDialog({flag,index}){
             this.dialogAdd = flag;
+            this.dialogEdit = flag
             if(index===1){
-                this.getUserList();
+                this.getCarList();
             }
         },
         handleView(data){
diff --git a/src/views/operate/car/myIndex/update/law/index.vue b/src/views/operate/car/myIndex/update/law/index.vue
index 1bc6994..319cdf6 100644
--- a/src/views/operate/car/myIndex/update/law/index.vue
+++ b/src/views/operate/car/myIndex/update/law/index.vue
@@ -6,53 +6,33 @@
                     label-position="right">
                     <!-- 杞︾墝鍙� -->
                     <el-form-item class="optionItem" label="杞︾墝鍙�:" prop="carNumber">
-                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿"></el-input>
+                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿" disabled></el-input>
                     </el-form-item>
                     <!-- 鎵�灞為儴闂� -->
                     <el-form-item class="optionItems" label="鎵�灞為儴闂�:" prop="depart">
-                        <el-input v-model="car.depart" placeholder="璇峰~鍐欐墍灞為儴闂�"></el-input>
-                        <!-- <el-select v-model="car.group" placeholder="璇烽�夋嫨鎵�灞炵被鍨�">
-                            <el-option v-for="item in teamList" :key="item.value" :label="item.label"
-                                :value="item.value">
-                            </el-option>
-                        </el-select> -->
+                        <el-input v-model="car.depart" placeholder="璇峰~鍐欐墍灞為儴闂�" disabled></el-input>
                     </el-form-item>
                     <!-- 鎵�灞炲ぇ闃� -->
                     <el-form-item class="optionItems" label="鎵�灞炲ぇ闃�:" prop="belong">
-                        <el-input v-model="car.belong" placeholder="璇峰~鍐欐墍灞炲ぇ闃�"></el-input>
-                        <!-- <el-select v-model="car.group" placeholder="璇烽�夋嫨鎵�灞炵被鍨�">
-                            <el-option v-for="item in teamList" :key="item.value" :label="item.label"
-                                :value="item.value">
-                            </el-option>
-                        </el-select> -->
+                        <el-input v-model="car.belong" placeholder="璇峰~鍐欐墍灞炲ぇ闃�" disabled></el-input>
                     </el-form-item>
                     <!-- 杞︿富濮撳悕 -->
                     <el-form-item class="optionItem" label="杞︿富濮撳悕:" prop="ownerName">
-                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�"></el-input>
+                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�" disabled></el-input>
                     </el-form-item>
                     <!-- 杞﹁締浣跨敤浜哄憳 -->
                     <el-form-item class="optionItem" label="杞﹁締浣跨敤浜哄憳:" prop="vehicleUser">
-                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�"></el-input>
+                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�" disabled></el-input>
                     </el-form-item>
                     <!-- 鑱旂郴鏂瑰紡 -->
-                    <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
-                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�"></el-input>
+                    <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact" disabled>
+                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�" disabled></el-input>
                     </el-form-item>
                     <!-- 杞ㄨ抗 -->
-                    <el-form-item class="optionItem" label="杞ㄨ抗:" prop="trajectory">
-                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�"></el-input>
+                    <el-form-item class="optionItem" label="杞ㄨ抗:" prop="trajectory" disabled>
+                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�" disabled></el-input>
                     </el-form-item>
-                    <!-- <el-form-item>
-                        <div class="optionBtn">
-                            <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">纭
-                            </el-button>
-                            <el-button class="btn cancel" @click.native.prevent="handleStop">
-                                鍙栨秷
-                            </el-button>
-                        </div>
-                    </el-form-item> -->
                 </el-form>
-
             </div>
         </main>
     </div>
diff --git a/src/views/operate/car/myIndex/update/soil/index.vue b/src/views/operate/car/myIndex/update/soil/index.vue
index 03c2a71..091c2b0 100644
--- a/src/views/operate/car/myIndex/update/soil/index.vue
+++ b/src/views/operate/car/myIndex/update/soil/index.vue
@@ -6,11 +6,11 @@
                     label-position="right">
                     <!-- 杞︾墝鍙� -->
                     <el-form-item class="optionItem" label="杞︾墝鍙�:" prop="carNumber">
-                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿"></el-input>
+                        <el-input v-model="car.carNumber" placeholder="璇峰~鍐欒溅鐗屽彿" disabled></el-input>
                     </el-form-item>
                     <!-- 杞﹀瀷 -->
                     <el-form-item class="optionItems" label="杞﹀瀷:" prop="carModel">
-                        <el-select v-model="car.carModel" placeholder="璇烽�夋嫨杞﹀瀷">
+                        <el-select v-model="car.carModel" placeholder="璇烽�夋嫨杞﹀瀷" disabled>
                             <el-option v-for="item in carTypeList" :key="item.value" :label="item.label"
                                 :value="item.label">
                             </el-option>
@@ -18,37 +18,28 @@
                     </el-form-item>
                     <!-- 杞︿富濮撳悕 -->
                     <el-form-item class="optionItem" label="杞︿富濮撳悕:" prop="ownerName">
-                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�"></el-input>
+                        <el-input v-model="car.ownerName" placeholder="璇疯緭鍏ヨ溅涓诲鍚�" disabled></el-input>
                     </el-form-item>
                     <!-- 杞﹁締浣跨敤浜哄憳 -->
                     <el-form-item class="optionItem" label="杞﹁締浣跨敤浜哄憳:" prop="vehicleUser">
-                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�"></el-input>
+                        <el-input v-model="car.vehicleUser" placeholder="璇疯緭鍏ヨ溅杈嗕娇鐢ㄤ汉鍛�" disabled></el-input>
                     </el-form-item>
                     <!-- 鑱旂郴鏂瑰紡 -->
                     <el-form-item class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
-                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�"></el-input>
+                        <el-input v-model="car.contact" placeholder="璇疯緭鍏ヨ溅涓绘墜鏈哄彿鐮�" disabled></el-input>
                     </el-form-item>
                     <!-- 鏂藉伐鍗曚綅 -->
                     <el-form-item class="optionItems" label="鏂藉伐鍗曚綅:" prop="constructionOrg">
-                        <el-input v-model="car.constructionOrg" placeholder="璇峰~鍐欐柦宸ュ崟浣�"></el-input>
+                        <el-input v-model="car.constructionOrg" placeholder="璇峰~鍐欐柦宸ュ崟浣�" disabled></el-input>
                     </el-form-item>
                     <!-- 鏂藉伐鍦板潃 -->
                     <el-form-item class="optionItems" label="鏂藉伐鍦板潃:" prop="geographicPosition">
-                        <el-input v-model="car.geographicPosition" placeholder="璇峰~鍐欐柦宸ュ湴鍧�"></el-input>
+                        <el-input v-model="car.geographicPosition" placeholder="璇峰~鍐欐柦宸ュ湴鍧�" disabled></el-input>
                     </el-form-item>
                     <!-- 杞ㄨ抗 -->
                     <el-form-item class="optionItem" label="杞ㄨ抗:" prop="trajectory">
-                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�"></el-input>
+                        <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="璇疯緭鍏ヨ溅杈嗚建杩�" disabled></el-input>
                     </el-form-item>
-                    <!-- <el-form-item>
-                        <div class="optionBtn">
-                            <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">纭
-                            </el-button>
-                            <el-button class="btn cancel" @click.native.prevent="handleStop">
-                                鍙栨秷
-                            </el-button>
-                        </div>
-                    </el-form-item> -->
                 </el-form>
 
             </div>
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue
index aa762f1..26fbf54 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue
@@ -7,8 +7,8 @@
                     <!-- 鏂囦功绉嶇被 -->
                     <el-form-item label="鏂囦功绉嶇被:" prop="writType">
                         <el-select v-model="book.writType" placeholder="璇疯緭鍏ユ枃涔︾绫�">
-                            <el-option v-for="item in kindList" :key="item.value" :label="item.label"
-                                :value="item.value">
+                            <el-option v-for="item in kindList" :key="item.id" :label="item.name"
+                                :value="item.id">
                             </el-option>
                         </el-select>
                     </el-form-item>
@@ -129,6 +129,7 @@
     </div>
 </template>
 <script>
+import {getCodeList} from '@/utils/helper'
 export default {
     data() {
         const checkKind = (rule, value, callback) => {
@@ -296,36 +297,31 @@
         }
     },
     created() {
-        console.log(this.book.writPic)
+        const {getBookType} = this
+        getBookType();
     },
     props: ['caseId', 'closeDialog'],
     methods: {
         handleSuccess1(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
-            console.log(res);
-            // this.$set(this.book, 'writPic', baseUrl + res.data.url1);
-            // console.log(this.book.writPic);
             if (this.book.writPic.length < 4) {
                 this.book.writPic.push(baseUrl + res.data.url1)
             }
         },
         handleSuccess2(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
-            console.log(res);
             if (this.book.originalPic.length < 4) {
                 this.book.originalPic.push(baseUrl + res.data.url1)
             }
         },
         handleSuccess3(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
-            console.log(res);
             if (this.book.rectifiedPic.length < 4) {
                 this.book.rectifiedPic.push(baseUrl + res.data.url1)
             }
         },
         handleSuccess4(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
-            console.log(res);
             if (this.book.otherPic.length < 4) {
                 this.book.otherPic.push(baseUrl + res.data.url1)
             }
@@ -349,6 +345,12 @@
                 this.book.otherPic.splice(index, 1);
             }
 
+        },
+        // 鑾峰彇鏂囦功绉嶇被
+        async getBookType(){
+            let arr 
+            arr = await getCodeList('15');
+            this.kindList = arr;
         }
     },
     watch: {
diff --git a/src/views/systemSetting/baseSetting/department/updateUser/index.vue b/src/views/systemSetting/baseSetting/department/updateUser/index.vue
index fa05478..05735a8 100644
--- a/src/views/systemSetting/baseSetting/department/updateUser/index.vue
+++ b/src/views/systemSetting/baseSetting/department/updateUser/index.vue
@@ -87,21 +87,7 @@
         callback();
       }
     };
-    const validateId = (rule, value, callback) => {
-      if (!value) {
-        callback(new Error("璇峰~鍐欓儴闂╥d"));
-      } else {
-        callback();
-      }
-    };
     const validatePass = (rule, value, callback) => {
-      if (!value) {
-        callback();
-      } else {
-        callback();
-      }
-    };
-    const validatePhone = (rule, value, callback) => {
       if (!value) {
         callback();
       } else {
@@ -117,7 +103,6 @@
         departType: "",
       },
       createUserRules: {
-        id: [{ required: true, trigger: "blur", validator: validateId }],
         departName: [
           { required: true, trigger: "blur", validator: validateNickname },
         ],
@@ -140,7 +125,6 @@
     this.user = JSON.parse(JSON.stringify(that.userInfo));
     console.log(this.user);
     this.user.parentId = this.user.parentId === 0 ? '鏆傛棤涓婄骇閮ㄩ棬' : this.user.parentId;
-    console.log(this.user.parentId);
     this.checkedList = this.user.userInfoDTOS;
     this.checkedList.forEach((e) => {
       this.checkedUser.push(e.userId);
@@ -162,25 +146,31 @@
           const { user, checkedList } = this;
           const arr = [];
           checkedList.forEach((item) => {
-            arr.push({ leader: item.leader, userId: item.userId });
+            arr.push({ leader: item.leader, userId: item.id ? item.id : item.userId });
           });
-          console.log(arr);
-          this.$axios
-            .post("sccg/depart/update", {
-              id: user.id,
-              departName: user.departName,
-              parentId: user.parentId,
-              departDes: user.departDes,
-              departManagerList: arr,
+          if (arr.length === 0) {
+            this.$message({
+              type: 'warning',
+              message: '璇烽�夋嫨閮ㄩ棬浜哄憳',
             })
-            .then((res) => {
-              this.$message({
-                message: res.message,
-                type: res.code === 200 ? "success" : "warning",
+          } 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();
               });
-              this.$emit("changeDialog", { flag: false });
-              this.getDepartList();
-            });
+          }
         } else {
           return false;
         }
@@ -223,6 +213,7 @@
         });
       });
       this.checkedList[0].leader = true;
+      console.log(this.checkedList);
       this.openUser = false;
     },
   },
diff --git a/src/views/systemSetting/baseSetting/role/viewRole/index.vue b/src/views/systemSetting/baseSetting/role/viewRole/index.vue
index 9577cb9..a537ce0 100644
--- a/src/views/systemSetting/baseSetting/role/viewRole/index.vue
+++ b/src/views/systemSetting/baseSetting/role/viewRole/index.vue
@@ -10,7 +10,7 @@
                     </el-form-item>
                     <!-- 瑙掕壊绫诲瀷 -->
                     <el-form-item class="optionItem" label="瑙掕壊绫诲瀷:" prop="roleType">
-                        <el-input v-model="role.roleType" placeholder="璇烽�夋嫨瑙掕壊绫诲瀷" disabled></el-input>
+                        <el-input v-model="role.typeText" placeholder="璇烽�夋嫨瑙掕壊绫诲瀷" disabled></el-input>
                     </el-form-item>
                     <!-- 瑙掕壊鎻忚堪 -->
                     <el-form-item class="optionItem" label="瑙掕壊鎻忚堪:" prop="description">

--
Gitblit v1.8.0