From 797cc9c1a5c90f413d46c5cb88e1ee5e3a84b071 Mon Sep 17 00:00:00 2001
From: “dzb” <2632970487@qq.com>
Date: 星期二, 04 十月 2022 11:51:05 +0800
Subject: [PATCH] 修改用户只能分配单一角色

---
 src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/arrive/index.vue      |  185 +
 src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/ill/index.vue                  |   48 
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue   |    6 
 src/views/login/index.vue                                                                          |    4 
 src/views/operate/myWait/index.vue                                                                 |  611 +++-
 src/views/layout/components/Menu/index.vue                                                         |    2 
 src/views/operate/disposal/casepool/learn/updateUser/uploadResult/ill/index.vue                    |   48 
 src/views/operate/myWait/updateUser/index.vue                                                      |  195 +
 src/views/operate/disposal/casepool/learn/index.vue                                                |  597 +++++
 src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/book/index.vue      |   96 
 src/views/operate/disposal/casepool/notDeal/index.vue                                              |  679 ++++-
 src/views/operate/disposal/casepool/notDeal/updateUser/index.vue                                   |  234 ++
 src/views/systemSetting/baseSetting/user/components/updateUser/index.vue                           |   70 
 src/views/operate/disposal/casepool/notDeal/createUser/index.vue                                   |  195 +
 src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/arrive/index.vue    |  185 +
 src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/evidence/index.vue  |  627 +++++
 src/views/operate/myWait/createUser/index.vue                                                      |  230 ++
 src/components/process/index.vue                                                                   |   12 
 src/views/operate/management/myIndex/components/examine/index.vue                                  |  286 ++
 src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/evidence/index.vue    |  627 +++++
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue                 |  112 
 src/components/dispatch/index.vue                                                                  |   13 
 src/views/operate/disposal/casepool/learn/updateUser/uploadResult/vio/index.vue                    |  123 +
 src/router/index.js                                                                                |    5 
 src/views/operate/disposal/casepool/dispatch/index.vue                                             |   12 
 src/views/operate/disposal/casepool/learn/updateUser/index.vue                                     |  234 ++
 src/utils/request.js                                                                               |   23 
 /dev/null                                                                                          |  246 --
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue                 |    4 
 src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/vio/index.vue                  |  123 +
 src/views/operate/disposal/casepool/learn/createUser/index.vue                                     |  195 +
 src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/book/index.vue        |   96 
 src/views/operate/management/myIndex/index.vue                                                     |  288 +-
 src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue |  389 +++
 34 files changed, 6,014 insertions(+), 786 deletions(-)

diff --git a/src/components/dispatch/index.vue b/src/components/dispatch/index.vue
index ebef391..a9fe5b6 100644
--- a/src/components/dispatch/index.vue
+++ b/src/components/dispatch/index.vue
@@ -55,11 +55,15 @@
                 <el-form-item label="鑱旂郴鏂瑰紡:" prop="contactWay">
                     <el-input v-model="dispatch.contactWay"></el-input>
                 </el-form-item>
-                <el-button type="primary" @click.native.prevent="handleDispatch">鍙戦�佺煭淇�</el-button>
+                <el-button type="primary">鍙戦�佺煭淇�</el-button>
             </div>
         </el-form>
         <div class="map">
-            <!-- <MyMap></MyMap> -->
+            <MyMap></MyMap>
+        </div>
+        <div class="footer">
+            <el-button type="primary" @click="handleDispatch">纭畾</el-button>
+            <el-button>杩斿洖</el-button>
         </div>
     </div>
 </template>
@@ -273,5 +277,10 @@
         height: 388px;
         width: 100%;
     }
+    .footer{
+        display: flex;
+        justify-content: flex-end;
+        padding: 10px 20px;
+    }
 }
 </style>
\ No newline at end of file
diff --git a/src/components/process/index.vue b/src/components/process/index.vue
index 3897b71..3c71714 100644
--- a/src/components/process/index.vue
+++ b/src/components/process/index.vue
@@ -27,10 +27,10 @@
                         v-if="index<list.length-1 ? true:false"></div>
                 </div>
                 <div class="desc">
-                    <div class="desc-title">鐜妭鐢ㄦ椂:</div>
+                    <div class="desc-title">鐜妭鐢ㄦ椂:{{item.disposeRecord.linkTime}}</div>
                     <div class="desc-content" v-if="active > index">
                         <div class="desc-content-message">1111111</div>
-                        <div class="desc-content-endtime">22.09.06 16:40</div>
+                        <div class="desc-content-endtime">{{item.disposeRecord.endTime}}</div>
                     </div>
                 </div>
             </div>
@@ -41,7 +41,7 @@
 export default {
     data() {
         return {
-            active: 2,
+            active: 0,
             list: [
                 {
                     title: '涓婃姤',
@@ -76,6 +76,12 @@
         const {handlePassVo:{workflowConfigSteps:mylist}} = this;
         // console.log(this.handlePassVo.workflowConfigSteps[0].name); 
         console.log(mylist);
+        mylist.forEach(item=>{
+            if(item.disposeRecord.endTime != null){
+                this.active ++;
+                console.log(1);
+            }
+        })
         this.list =  mylist;
     }
 }
diff --git a/src/router/index.js b/src/router/index.js
index 60ad75a..fb17ea5 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -109,6 +109,11 @@
                 name: 'notDeal',
                 component: () => import('@/views/operate/disposal/casepool/notDeal'),
               },
+              {
+                path: 'learn',
+                name: 'learn',
+                component: () => import('@/views/operate/disposal/casepool/learn'),
+              },
             ]
           },
           {
diff --git a/src/utils/request.js b/src/utils/request.js
index 05a07ae..d6da1bf 100644
--- a/src/utils/request.js
+++ b/src/utils/request.js
@@ -1,24 +1,31 @@
 import axios from 'axios';
+import router from '@/router'
 const api = axios.create({
-    baseURL: 'http://42.193.1.25:8082/', // 璇锋眰鐨勫叕鍏卞湴鍧�閮ㄥ垎
+  baseURL: 'http://42.193.1.25:8082/', // 璇锋眰鐨勫叕鍏卞湴鍧�閮ㄥ垎
 })
 // 鎷︽埅鍣�
 // 璇锋眰
-api.interceptors.request.use((config)=>{
+api.interceptors.request.use((config) => {
   const token = sessionStorage.getItem('token');
   const tokenHead = sessionStorage.getItem('tokenHead');
-    if(token && tokenHead){
-      config.headers.Authorization = tokenHead+token;
-    }
+  if (token && tokenHead) {
+    config.headers.Authorization = tokenHead + token;
+  }
   return config;
-})
+},(err)=>{
+  console.log(err);
+}
+)
 // 鍝嶅簲
 api.interceptors.response.use(
   function (response) {
     return response.data;
   },
   function (error) {
-    return Promise.reject(error);
+    const {code} = error.response.data;
+    if(code === 401){
+      router.push('/login');
+    }
   }
-);  
+);
 export default api;
\ No newline at end of file
diff --git a/src/views/layout/components/Menu/index.vue b/src/views/layout/components/Menu/index.vue
index 13e63b8..01e779d 100644
--- a/src/views/layout/components/Menu/index.vue
+++ b/src/views/layout/components/Menu/index.vue
@@ -86,7 +86,7 @@
               <el-menu-item index="/home/operate/casepool/pool">妗堜欢姹�</el-menu-item>
               <el-menu-item index="/home/operate/casepool/escalation">涓婃姤绠$悊</el-menu-item>
               <el-menu-item index="/home/operate/casepool/dispatch">璋冨害绠$悊</el-menu-item>
-              <el-menu-item index="/home/operate/casepool">鍐嶅涔犵鐞�</el-menu-item>
+              <el-menu-item index="/home/operate/casepool/learn">鍐嶅涔犵鐞�</el-menu-item>
               <el-menu-item index="/home/operate/casepool/notDeal">鏆備笉澶勭悊</el-menu-item>
             </el-submenu>
             <el-menu-item index="/home/operate/management">瀹℃牳绠$悊</el-menu-item>
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 99a1c36..f4982b5 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -130,7 +130,9 @@
             console.log(response);
             sessionStorage.setItem('token',response.data.token);
             // 淇濆瓨token
-            sessionStorage.setItem('tokenHead',response.data.tokenHead)
+            sessionStorage.setItem('tokenHead',response.data.tokenHead);
+            // 淇濆瓨鐢ㄦ埛鐧诲綍鍚�
+            sessionStorage.setItem('name',username)
             // 璺宠浆鍒伴椤�
             that.$router.push("/home");
           }else{
diff --git a/src/views/operate/disposal/casepool/dispatch/index.vue b/src/views/operate/disposal/casepool/dispatch/index.vue
index aea627e..a6f781c 100644
--- a/src/views/operate/disposal/casepool/dispatch/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/index.vue
@@ -74,8 +74,8 @@
                 <!-- 涓婁紶椤甸潰 -->
                 <el-dialog :visible.sync="dialogUpload" width="60%" title="涓婁紶澶勭疆缁撴灉"
                     v-if="dialogUpload" :before-close="handleClose">
-                    <uploadVio v-if="mystatus === 0"></uploadVio>
-                    <uploadIll v-else></uploadIll>
+                    <uploadVio v-if="mystatus === 0" :caseId="caseId" @closeDialog="closeDialog"></uploadVio>
+                    <uploadIll v-else :caseId="caseId" @closeDialog="closeDialog"></uploadIll>
                 </el-dialog>
                 <!-- tools -->
                 <div class="tools">
@@ -164,6 +164,7 @@
             ],
             statusArr:[],
             mystatus:0,
+            caseId:'',
         }
     },
     created() {
@@ -332,7 +333,12 @@
         },
         opernDialog(data){
             this.dialogUpload = true;
-            console.log(data); 
+            this.caseId = data.id;
+            // console.log(data); 
+        },
+        // 鍏抽棴涓婁紶鐣岄潰
+        closeDialog({flag}){
+            this.dialogUpload = flag;
         }
     }
 }
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
index 52f1ccc..858e326 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
@@ -104,6 +104,7 @@
             fileList: [],
         }
     },
+    props:['getArrive'],
     methods: {
         handleSuccess(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
@@ -119,6 +120,11 @@
                 return { Authorization: tokenHead + token }
             }
         },
+        // 鑾峰彇arrive瀵硅薄
+        backData(){
+            const { arrive } = this;
+            this.$emit('getArrive',{arrive});
+        }
     }
 }
 </script>
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
index c46a150..d6606bb 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
@@ -25,7 +25,7 @@
                     <el-input v-model="evidence.caseAction" placeholder="璇疯緭鍏ユ鐢�"></el-input>
                 </el-form-item>
                 <!-- 褰撲簨浜轰俊鎭� -->
-                <el-form-item label="褰撲簨浜轰俊鎭�">
+                <el-form-item label="褰撲簨浜轰俊鎭�:" prop="userInfo">
                     <el-input suffix-icon="el-icon-s-order" @focus="openDialog"></el-input>
                 </el-form-item>
                 <!-- 鎯呭喌鎻忚堪 -->
@@ -51,11 +51,89 @@
                 </el-form-item>
             </el-form>
         </div>
-        <div class="user-form">
-            <el-dialog :visible.sync="dialogUser" width="80%" title="璋冨害淇℃伅" v-if="dialogUser" :before-close="handleClose"
-                append-to-body>
-                11111
-            </el-dialog>
+        <div class="user-form" v-show="userFlag">
+            <div class="user-form-header">
+                <span>璋冨害淇℃伅</span>
+                <i class="el-icon-close" @click="closeUserForm"></i>
+            </div>
+            <div class="user-form-content">
+                <el-form ref="userForm" label-width="120px" :model="user" :rules="userRules" autoComplete="on">
+                    <!-- 杩濇硶绫诲瀷 -->
+                    <el-form-item label="绫诲瀷:" prop="illegalType">
+                        <el-select v-model="user.illegalType" placeholder="璇烽�夋嫨">
+                            <el-option v-for="item in typeOptions" :key="item.value" :label="item.label"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 濮撳悕銆佹墜鏈哄彿 -->
+                    <div class="user-item">
+                        <!-- 濮撳悕 -->
+                        <el-form-item label="褰撲簨浜哄鍚�:" prop="name">
+                            <el-input v-model="user.name"></el-input>
+                        </el-form-item>
+                        <!-- 鎵嬫満鍙� -->
+                        <el-form-item label="鎵嬫満鍙风爜:" prop="phoneCode">
+                            <el-input v-model="user.phoneCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 璇佷欢 -->
+                    <div class="user-item">
+                        <el-form-item label="璇佷欢绫诲瀷:" prop="certificateType">
+                            <el-select v-model="user.certificateType" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in cardOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="璇佷欢鍙风爜:" prop="certificateCode">
+                            <el-input v-model="user.certificateCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鏂囧寲绋嬪害\鑱屼笟 -->
+                    <div class="user-item">
+                        <!-- 鏂囧寲绋嬪害 -->
+                        <el-form-item label="鏂囧寲绋嬪害:" prop="educationDegree">
+                            <el-select v-model="user.educationDegree" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in degreeOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <!-- 鑱屼笟 -->
+                        <el-form-item label="鑱屼笟:" prop="career">
+                            <el-input v-model="user.career"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 宸ヤ綔鍗曚綅鍙婅亴鍔� -->
+                    <el-form-item label="宸ヤ綔鍗曚綅鍙婅亴鍔�:" prop="work">
+                        <el-input v-model="user.work"></el-input>
+                    </el-form-item>
+                    <!-- 姘戞棌\绫嶈疮 -->
+                    <div class="user-item">
+                        <!-- 姘戞棌 -->
+                        <el-form-item label="姘戞棌:" prop="nation">
+                            <el-input v-model="user.nation"></el-input>
+                        </el-form-item>
+                        <!-- 绫嶈疮 -->
+                        <el-form-item label="绫嶈疮:" prop="nativePlace">
+                            <el-input v-model="user.nativePlace"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鐜颁綇鍧� -->
+                    <el-form-item label="鐜颁綇鍧�:" prop="liveAddress">
+                        <el-input v-model="user.liveAddress"></el-input>
+                    </el-form-item>
+                    <!-- 鎴风睄鎵�鍦ㄥ湴 -->
+                    <el-form-item label="鎴风睄鎵�鍦ㄥ湴:" prop="registerAddress">
+                        <el-input v-model="user.registerAddress"></el-input>
+                    </el-form-item>
+                </el-form>
+            </div>
+            <div class="user-form-footer">
+                <el-button type="primary" @click="checkUser">纭畾</el-button>
+                <el-button>杩斿洖</el-button>
+            </div>
         </div>
     </div>
 </template>
@@ -111,11 +189,106 @@
                 callback();
             }
         }
+        const checkIll = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('妗堜欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkName3 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�'));
+            }
+        }
+        const checkPhone = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎵嬫満鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCard = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCode = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWh = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鏂囧寲绋嬪害涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCareer = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鑱屼笟涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWork = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('宸ヤ綔鍗曚綅鍙婅亴鍔′笉鑳戒负绌�'));
+            }
+        }
+        const checkNation = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姘戞棌涓嶈兘涓虹┖'));
+            }
+        }
+        const checkNaP = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('绫嶈疮涓嶈兘涓虹┖'));
+            }
+        }
+        const checkLiveAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鐜颁綇鍧�涓嶈兘涓虹┖'));
+            }
+        }
+        const checkRegAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎴风睄鎵�鍦ㄥ湴涓嶈兘涓虹┖'));
+            }
+        }
+        const checkFlag = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('鐢ㄦ埛淇℃伅涓嶈兘涓虹┖'))
+            }
+        }
         return {
             evidence: {
-                pic: []
+                pic: [],
+                userInfo: false,
             },
             evidenceRules: {
+                userInfo: [
+                    { trigger: 'change', validator: checkFlag }
+                ],
                 undertaker: [
                     {
                         trigger: 'blur', validator: checkName
@@ -153,10 +326,124 @@
                 ],
             },
             fileList: [],
-            user: {},
-            dialogUser: false,
+            user: {
+                illegalType: '',
+                name: '',
+                phoneCode: '',
+                certificateType: '',
+                certificateCode: '',
+                educationDegree: '',
+                career: '',
+                work: '',
+                nation: '',
+                nativePlace: '',
+                liveAddress: '',
+                registerAddress: '',
+            },
+            userRules: {
+                illegalType: [
+                    {
+                        trigger: 'change', validator: checkIll,
+                    }
+                ],
+                name: [
+                    {
+                        trigger: 'blur', validator: checkName3
+                    }
+                ],
+                phoneCode: [
+                    {
+                        trigger: 'blur', validator: checkPhone
+                    }
+                ],
+                certificateType: [
+                    {
+                        trigger: 'change', validator: checkCard
+                    }
+                ],
+                certificateCode: [
+                    {
+                        trigger: 'blur', validator: checkCode
+                    }
+                ],
+                educationDegree: [
+                    {
+                        trigger: 'change', validator: checkWh
+                    }
+                ],
+                career: [
+                    {
+                        trigger: 'blur', validator: checkCareer
+                    }
+                ],
+                work: [
+                    {
+                        trigger: 'blur', validator: checkWork
+                    }
+                ],
+                nation: [
+                    {
+                        trigger: 'blur', validator: checkNation
+                    }
+                ],
+                nativePlace: [
+                    {
+                        trigger: 'blur', validator: checkNaP
+                    }
+                ],
+                liveAddress: [
+                    {
+                        trigger: 'blur', validator: checkLiveAdd
+                    }
+                ],
+                registerAddress: [
+                    {
+                        trigger: 'blur', validator: checkRegAdd
+                    }
+                ],
+            },
+            userFlag: false,
+            typeOptions: [
+                {
+                    label: '杩濇硶',
+                    value: 1,
+                },
+                {
+                    label: '杩濆缓',
+                    value: 2
+                }
+            ],
+            cardOptions: [
+                {
+                    label: '韬唤璇�',
+                    value: 1,
+                },
+                {
+                    label: '鍏朵粬',
+                    value: 2
+                }
+            ],
+            degreeOptions:[
+                {
+                    label:'灏忓',
+                    value:1
+                },
+                {
+                    label:'鍒濅腑',
+                    value:2
+                },
+                {
+                    label:'楂樹腑',
+                    value:3
+                },
+                {
+                    label:'澶у鍙婁互涓�',
+                    value:4
+                },
+            ]
         }
     },
+    props:['getEvidence'],
     methods: {
         handleSuccess2(res, file, filelist) {
             const baseUrl = 'http://140.143.152.226:8410/';
@@ -174,24 +461,39 @@
         },
         // 鎵撳紑褰撲簨浜轰俊鎭~鍐欒〃
         openDialog(e) {
-            this.dialogUser = true
+            this.userFlag = true;
+            this.userInfo = true;
         },
-        // 鍏抽棴褰撲簨浜轰俊鎭�
-        handleClose(done) {
-            this.$confirm('纭鍏抽棴锛�')
-                .then(_ => {
-                    this.dialogUser = false;
-                    done();
-                })
-                .catch(_ => { });
+        // 妫�楠寀ser
+        checkUser() {
+            // console.log(this.$refs.userForm.validate);
+            this.$refs.userForm.validate((valid) => {
+                console.log(valid);
+                if (valid) {
+                    this.evidence.userInfo = true;
+                    this.userFlag = false;
+                } else {
+                    this.evidence.userInfo = false;
+                    return false;
+                }
+            })
         },
+        // 鍏抽棴褰撲簨浜轰俊鎭晫闈�
+        closeUserForm(){
+            this.userFlag = false;
+        },
+        // 杩斿洖褰撳墠evidence鍜寀ser瀵硅薄
+        backData(){
+            const {user,evidence} = this;
+            this.$emit('getEvidence',{user,evidence});
+        }
     }
 }
 </script>
 <style lang="scss" scoped>
 .evidence {
     line-height: 60px;
-
+    position: relative;
     .evidence-title {
         line-height: 60px;
         font-weight: 650;
@@ -233,6 +535,55 @@
     background-color: #fbfdff;
     border-radius: 4px;
 }
+.user-form{
+    position: absolute;
+    top: 0;
+    z-index: 3000;
+    background-color: #06122c;
+    .user-form-header{
+        background-color: #fff;
+        color: #4b9bb7;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+        padding: 0 20px;
+    }
+    padding-bottom: 60px;
+}
+.user-form-content {
+    padding-top:20px;
+
+    .user-item {
+        display: flex;
+
+        .el-input {
+            flex: 1;
+        }
+    }
+
+    ::v-deep .el-textarea__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
+    ::v-deep .el-input__count {
+        background-color: #09152f;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+}
+
+.user-form-footer {
+    display: flex;
+    justify-content: flex-end;
+}
 
 ::v-deep .el-textarea__inner {
     background-color: #09152f;
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue
index 14f56ae..b74dfdb 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue
@@ -26,6 +26,10 @@
 
         }
     },
+    props:['caseId'],
+    created(){
+        console.log(this.caseId);
+    },
     methods:{
         handleSubmit(){
 
diff --git a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
index 2548905..350eb59 100644
--- a/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
+++ b/src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -1,9 +1,9 @@
 <template>
     <div class="vio">
         <!-- 鍒拌揪鐜板満鎯呭喌 -->
-        <MyArrive ref="arrive"></MyArrive>
+        <MyArrive ref="arrive" @getArrive="getArrive"></MyArrive>
         <!-- 璋冩煡鍙栬瘉 -->
-        <MyEvidence ref="evidence"></MyEvidence>
+        <MyEvidence ref="evidence" @getEvidence="getEvidence"></MyEvidence>
         <!-- 搴曢儴鎸夐挳 -->
         <div class="footer">
             <el-button @click="handleSubmit" type="primary">纭畾</el-button>
@@ -15,49 +15,109 @@
 import MyArrive from '../components/arrive'
 import MyEvidence from "../components/evidence"
 export default {
-    components:{
-        MyArrive,MyEvidence
+    components: {
+        MyArrive, MyEvidence
     },
     data() {
         return {
 
         }
     },
-    methods:{
-        handleSubmit(){
-            const {arrive,evidence} = this.$refs;
-            const {arriveForm} = arrive.$refs;
-            const {evidenceForm} = evidence.$refs;
-            console.log(evidenceForm);
-            arriveForm.validate((valid)=>{
-                console.log(valid);
-                if(valid){
-                    evidenceForm.validate((flag)=>{
-                        if(flag){
-                            console.log(flag);
-                        }else{
+    props: ['caseId', 'closeDialog'],
+    created() {
+        console.log(this.caseId);
+    },
+    methods: {
+        handleSubmit() {
+            const { arrive, evidence } = this.$refs;
+            const { arriveForm } = arrive.$refs;
+            const { evidenceForm } = evidence.$refs;
+            // console.log(evidence.$refs);
+            arriveForm.validate((valid) => {
+                // console.log(valid);
+                if (valid) {
+                    evidenceForm.validate((flag) => {
+                        if (flag) {
+                            // arrive.arrive;evidence.user;evidence.evidence;
+                            this.$axios({
+                                method: 'post',
+                                url: `sccg/dispatch_handle/addition_dispose_result/${this.caseId}/${1}`,
+                                data:{
+                                    arrivalAddress: arrive.arrive.arrivalAddress,
+                                    arrivalTime: arrive.arrive.arrivalTime,
+                                    situationExplain: arrive.arrive.situationExplain,
+                                    replyExplain: arrive.arrive.replyExplain,
+                                    situationPic: `${arrive.arrive.situationPic}`,
+                                    // 
+                                    undertaker: evidence.evidence.undertaker,
+                                    assistant: evidence.evidence.assistant,
+                                    investigationTime: evidence.evidence.investigationTime,
+                                    address: evidence.evidence.address,
+                                    caseAction: evidence.evidence.caseAction,
+                                    description: evidence.evidence.description,
+                                    pic: `${evidence.evidence.pic}`,
+                                    // 
+                                    illegalType: evidence.user.illegalType,
+                                    name: evidence.user.name,
+                                    phoneCode: evidence.user.phoneCode,
+                                    certificateType: `${evidence.user.certificateType}`,
+                                    certificateCode: evidence.user.certificateCode,
+                                    educationDegree: `${evidence.user.educationDegree}`,
+                                    career: evidence.user.career,
+                                    work: evidence.user.work,
+                                    nation: evidence.user.nation,
+                                    nativePlace: evidence.user.nativePlace,
+                                    liveAddress: evidence.user.liveAddress,
+                                    registerAddress: evidence.user.registerAddress,
+                                }
+                            })
+                                .then(res => {
+                                    console.log(res);
+                                    if (res.code === 200) {
+                                        this.$message({
+                                            type: 'success',
+                                            message:'涓婁紶鎴愬姛',
+                                        })
+                                        this.$emit('closeDialog', { flag: false });
+                                    }else{
+                                        this.$message({
+                                            type:'warning',
+                                            message:res.message
+                                        })
+                                    }
+                                })
+                        } else {
                             return false;
                         }
                     })
-                }else{
-                    evidenceForm.validate((flag)=>{
-                        if(!flag){
+                } else {
+                    evidenceForm.validate((flag) => {
+                        if (!flag) {
                             return false;
                         }
                     })
                     return false;
                 }
             })
+        },
+        // 鑾峰緱arrive鐨勪俊鎭�
+        getArrive(obj) {
+            console.log(obj);
+        },
+        // 鑾峰緱evidence瀵硅薄
+        getEvidence(obj) {
+            console.log(obj);
         }
     }
 }
 </script>
 <style lang="scss" scoped>
-    .vio{
-        padding: 20px 200px;
-    }
+.vio {
+    padding: 20px 200px;
+}
+
 .footer {
-        display: flex;
-        justify-content: flex-end;
-    }
+    display: flex;
+    justify-content: flex-end;
+}
 </style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/createUser/index.vue b/src/views/operate/disposal/casepool/learn/createUser/index.vue
new file mode 100644
index 0000000..b609337
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/createUser/index.vue
@@ -0,0 +1,195 @@
+<template>
+    <div class="createUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" label-width="140px" autoComplete="on" :model="things" label-position="right">
+                    <!-- 杩濊浜嬮」缂栧彿 -->
+                    <el-form-item class="optionItem" label="杩濊浜嬮」缂栧彿:" prop="number">
+                        <el-input v-model="things.number" placeholder="璇峰~鍐欒繚瑙勪簨椤圭紪鍙�"></el-input>
+                    </el-form-item>
+                    <!-- 鎵�灞炵被鍨� -->
+                    <el-form-item class="optionItems" label="鎵�灞炵被鍨�:" prop="typeThird">
+                        <el-select v-model="things.typeThird" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeThirdList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲ぇ绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲ぇ绫�:" prop="typeSecond">
+                        <el-select v-model="things.typeSecond" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeSecondList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲皬绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲皬绫�:" prop="typeFirst">
+                        <el-select v-model="things.typeFirst" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeFirstList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 妗堢敱 -->
+                    <el-form-item class="optionItem" label="妗堢敱:" prop="type">
+                        <el-input type="textarea" autosize v-model="things.type" placeholder="璇疯緭鍏ユ鐢辨弿杩板唴瀹�"
+                            :disabled="!updateFlag" disabled></el-input>
+                    </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>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            things: {
+                number: 0,
+                type: '',
+                typeFirst: '',
+                typeSecond: '',
+                typeThird: '',
+            },
+            roleList: [],
+            typeThirdList:[],
+            typeSecondList:[],
+            typeFirstList:[],
+        }
+    },
+    created() {
+        console.log(this.userInfo);
+        this.things = JSON.parse(JSON.stringify(this.userInfo));
+        // 鑾峰彇鎵�灞炵被鍨嬪垪琛�
+        this.getTypeThird();
+        this.getTypeSecond();
+        this.getTypeFirst();
+    },
+    methods: {
+        // handleUser() {
+        //     this.$refs.user.validate((valid) => {
+        //         if (valid) {
+        //             const { role } = this;
+        //             console.log(role);
+        //             this.$axios.post('/sccg/role/update/' + role.id, {
+        //                 id: role.id,
+        //                 status: role.status,
+        //                 description: role.description,
+        //                 name: role.name,
+        //                 sort: 0
+        //             }).then(res => {
+        //                 this.$emit('changeDialog', { dialogUpdate: false });
+        //                 this.getUserList();
+        //             })
+        //         } else {
+        //             return false;
+        //         }
+        //     })
+        // },
+        // 鏌ヨ鎵�灞炵被鍨�
+        getTypeThird() {
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_first",
+            })
+                .then(res => {
+                    this.typeThirdList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲ぇ绫�
+        getTypeSecond(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_second",
+            })
+                .then(res => {
+                    this.typeSecondList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲皬绫�
+        getTypeFirst(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_third",
+            })
+                .then(res => {
+                    this.typeFirstList = res.data;
+                })
+        }
+    },
+    props: ['getUserList']
+}
+</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/disposal/casepool/learn/index.vue b/src/views/operate/disposal/casepool/learn/index.vue
new file mode 100644
index 0000000..ef93627
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/index.vue
@@ -0,0 +1,597 @@
+<template>
+    <div class="userList">
+        <header>
+            <div class="headerContent">
+                <div class="search">
+                    <span>绛涢�夋潯浠�:</span>
+                    <div class="option">
+                        <el-select v-model="mystatus" placeholder="杩濊" @change="setMystatus">
+                            <el-option v-for="item in typeList" :key="item.label" :label="item.name"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </div>
+                    <div class="findBtn">
+                        <el-button type="primary" @click="getUserList">鏌ヨ</el-button>
+                    </div>
+                </div>
+            </div>
+        </header>
+        <main>
+            <div class="mainContent">
+                <div class="type-nav">
+                    <div @click="changeTypeChecked(index)" v-for="(item,index) in typeList" :key="item.name"
+                        :class="[item.checked ? 'is-active':'','type-item']">{{item.name}}</div>
+                </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="id" label="浜嬩欢缂栧彿" min-width="10">
+                        <template slot-scope="scope">
+                            <el-link @click="JumpView(scope.row)">{{scope.row.id}}</el-link>
+                        </template>
+                    </el-table-column>
+                    <el-table-column prop="eventSource" label="闂鏉ユ簮" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="category" label="澶х被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="type" label="灏忕被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="actionCause" label="妗堢敱" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="site" label="鎶ヨ鐐逛綅" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="streetId" label="鎵�灞炲尯鍩�" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="alarmTime" label="鎶ヨ鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="continueTime" label="鎸佺画鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="operation" label="鎿嶄綔" min-width="20">
+                        <template slot-scope="scope">
+                            <div class="btn">
+                                <span @click="opernDialog(scope.row)">閲嶆柊澶勭疆</span>
+                            </div>
+                        </template>
+                    </el-table-column>
+                </el-table>
+                <!-- 鏌ョ湅淇敼椤甸潰 -->
+                <!-- <el-dialog :visible.sync="dialogUpdate" width="80%" title="鍩虹淇℃伅(浜哄伐)"
+                    v-if="dialogUpdate" :before-close="handleClose">
+                    <updateUser :info=info />
+                </el-dialog> -->
+                <!-- 璇︽儏椤靛睍绀� -->
+                <el-dialog :visible.sync="dialogView" width="80%" title="鍩虹淇℃伅(浜哄伐)" v-if="dialogView"
+                    :before-close="handleClose">
+                    <MyDetail :info=info></MyDetail>
+                </el-dialog>
+                <!-- 涓婁紶椤甸潰 -->
+                <el-dialog :visible.sync="dialogUpload" width="60%" title="涓婁紶澶勭疆缁撴灉"
+                    v-if="dialogUpload" :before-close="handleClose">
+                    <uploadVio v-if="mystatus === 0" :caseId="caseId" @closeDialog="closeDialog"></uploadVio>
+                    <uploadIll v-else :caseId="caseId" @closeDialog="closeDialog"></uploadIll>
+                </el-dialog>
+                <!-- tools -->
+                <div class="tools">
+                    <div class="funs">
+                        <div class="funsItem">
+                            <el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-checkbox v-model="unsame" @change="disSame(tableData)">鍙嶉��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-select v-model="myIdx" placeholder="鎵归噺鎿嶄綔" @change="selectChange">
+                                <el-option v-for="item in options" :key="item.value" :label="item.label"
+                                    :value="item.value" :disabled="item.disabled">
+                                </el-option>
+                            </el-select>
+                        </div>
+                    </div>
+                    <div class="pagination">
+                        <el-pagination background :current-page="currentPage" layout="prev, pager, next"
+                            :total="totalNum" :page-size="pageSize" @current-change="changeCurrentPage"
+                            @prev-click="handlePrev" @next-click="handleNext">
+                        </el-pagination>
+                    </div>
+                </div>
+            </div>
+        </main>
+    </div>
+</template>
+<script>
+// import updateUser from "./updateUser"
+import uploadVio from './updateUser/uploadResult/vio'
+import uploadIll from "./updateUser/uploadResult/ill"
+import MyDetail from '@/components/detail'
+export default {
+    components: {
+        // updateUser,
+        uploadVio,uploadIll,MyDetail
+    },
+    data() {
+        return {
+            tableData: [],
+            context: "",
+            dialogUpload:false,
+            dialogView:false,
+            info: {},
+            totalNum: null,
+            pageSize: 10,
+            currentPage: 1,
+            all: false,
+            unsame: false,
+            myIdx: 0,
+            preMyIdx:0,
+            options: [
+                {
+                    value: 0,
+                    label: '鎵归噺鎿嶄綔',
+                    disabled: true,
+                },
+                {
+                    value: 1,
+                    label: '鎵归噺鍚敤',
+                },
+                {
+                    value: 2,
+                    label: '鎵归噺绂佺敤',
+                },
+                {
+                    value: 3,
+                    label: '鎵归噺鍒犻櫎',
+                }
+            ],
+            tempList: [],
+            typeList: [
+                {
+                    name: '杩濊',
+                    value: 1,
+                    checked: true
+                },
+                {
+                    name: '杩濆缓',
+                    value: 2,
+                    checked: false,
+                },
+            ],
+            statusArr:[],
+            mystatus:0,
+            caseId:'',
+        }
+    },
+    created() {
+        this.statusArr[0] = 3;
+        this.typeList.forEach(item => {
+            if (item.checked) {
+                this.statusArr[1] = item.value;
+            }
+        })
+        this.getUserList();
+    },
+    methods: {
+        // 椤堕儴涓嬫媺妗�
+        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,
+            }).then(res=>{
+                this.getUserList();
+                this.$message({
+                    message:res.message,
+                    type:res.code === 200 ? 'success' : 'warning'
+                })
+            })
+        },
+        // 鎵ц涓嬫媺妗嗘搷浣�
+        selectChange(list) {
+            console.log(this.tempList);
+            if (this.tempList.length !== 0) {
+                if (list === 3) {
+                    this.preMyIdx = list;
+                    this.mulDelete(this.tempList);
+                }
+            } else {
+                this.myIdx = this.preMyIdx;
+                this.$message({
+                    type: 'warning',
+                    message: '鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁',
+                })
+            }
+        },
+        // 鐩戝惉琛ㄦ牸
+        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
+            }
+        },
+        // 鍏ㄩ��
+        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) });
+        },
+        // 鑾峰彇鐢ㄦ埛鍒楄〃
+        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);
+            })
+        },
+        // 鏇存敼杩濊/杩濆缓
+        changeTypeChecked(idx) {
+            this.typeList.forEach((item, index) => {
+                if (index === idx) {
+                    item.checked = true;
+                } else {
+                    item.checked = false;
+                }
+            })
+            this.mystatus = idx + 1;
+            this.statusArr[1] = this.typeList[idx].value;
+            this.getUserList();
+        },
+        // 璁剧疆琛ㄦ牸鏂戦┈绾�
+        tableRowClassName({ row, rowIndex }) {
+            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();
+        },
+        handleClose(done) {
+            this.$confirm('纭鍏抽棴锛�')
+                .then(_ => {
+                    this.dialogUpload = false;
+                    // this.dialogUpdate = false;
+                    done();
+                })
+                .catch(_ => { });
+        },
+        async JumpView(data){
+            await this.getEventInfo(data.code);
+        },
+        // 鑾峰彇妗堜欢淇℃伅
+        getEventInfo(code){
+            this.$axios({
+                method:'get',
+                url:`sccg/base_case/baseCaseDetail/${code}`
+            })
+            .then(res=>{
+                this.info = res.data;  
+                this.dialogView = true;
+            })
+        },
+        opernDialog(data){
+            this.dialogUpload = true;
+            this.caseId = data.id;
+            // console.log(data); 
+        },
+        // 鍏抽棴涓婁紶鐣岄潰
+        closeDialog({flag}){
+            this.dialogUpload = flag;
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.userList {
+    text-align: left;
+    margin: 10px 20px;
+    color: #4b9bb7;
+    header {
+        background-color: #09152f;
+        border: 1pox solid #fff;
+
+        .headerContent {
+            padding: 0 40px;
+            display: flex;
+            line-height: 100px;
+            justify-content: space-between;
+            align-items: center;
+
+            .search {
+                display: flex;
+                justify-content: flex-start;
+
+                span {
+                    flex: 1;
+                }
+
+                .el-input {
+                    flex: 2;
+                    color: #1d3f57;
+
+                    &::v-deep .el-input__inner {
+                        background-color: #09152f;
+                        border: 1px solid #17324c;
+                    }
+                }
+
+            }
+
+            .findBtn {
+                line-height: 100px;
+                margin-left: 15px;
+                display: flex;
+                align-items: center;
+                margin-top: -2px;
+
+                .el-button {
+                    padding: 12px 25px;
+                    border-radius: 20px;
+                }
+            }
+
+            .addBtn {
+                background-color: #eb5d01;
+                border: none;
+                border-radius: 20px;
+                padding: 12px 30px;
+            }
+        }
+    }
+    &::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+    main {
+        background-color: #09152f;
+        margin-top: 20px;
+        padding-bottom: 50px;
+        border: 1pox solid #fff;
+
+        .type-nav {
+            display: flex;
+            line-height: 40px;
+            margin-left: 30px;
+            padding-top: 10px;
+            margin-bottom: 10px;
+
+            .type-item {
+                width: 80px;
+                text-align: center;
+
+                &:hover {
+                    cursor: pointer;
+                }
+            }
+
+            .is-active {
+                background-color: #070f22;
+                border-radius: 4px;
+                color: #fff;
+            }
+        }
+
+        .tools {
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+            padding: 0 20px;
+
+            .funs {
+                display: flex;
+
+                .funsItem {
+                    line-height: 28px;
+                    display: flex;
+                    align-items: center;
+                    border: 1px solid #17324c;
+                    border-radius: 4px;
+                    font-size: 12px;
+                    margin-left: 10px;
+
+                    .el-checkbox {
+                        width: 80px;
+                        padding: 0 10px;
+                    }
+
+                    .el-select {
+                        width: 120px;
+                    }
+
+                    &::v-deep .el-input__inner {
+                        border: none;
+                        background-color: #09152f;
+                    }
+
+                    &:hover {
+                        border: 1px solid #4b9bb7;
+                    }
+
+                    &:hover .el-checkbox {
+                        color: #4b9bb7;
+                    }
+                }
+
+            }
+
+            .pagination {
+                margin-top: 50px;
+                display: flex;
+                line-height: 50px;
+                justify-content: center;
+
+                .el-pagination {
+
+                    &::v-deep li,
+                    &::v-deep .btn-prev,
+                    &::v-deep .btn-next {
+                        background-color: #071f39;
+                        color: #4b9bb7;
+                    }
+
+                    &::v-deep .active {
+                        background-color: #409eff;
+                        color: #fff;
+                    }
+                }
+            }
+        }
+
+        .el-table {
+            color: #4b9bb7;
+            font-size: 10px;
+
+            &::v-deep .cell {
+                text-overflow: ellipsis;
+                white-space: nowrap;
+                overflow: hidden;
+            }
+
+            &::v-deep .el-table__empty-block {
+                background-color: #09152f;
+            }
+
+            &::v-deep .el-table__empty-block {
+                color: #4b9bb7;
+            }
+
+            .operation {
+                display: flex;
+
+                .line {
+                    padding: 0 5px;
+                }
+
+                span:hover {
+                    cursor: pointer;
+                }
+            }
+        }
+
+        .el-table::v-deep .warning-row {
+            background: #06122c;
+        }
+
+        .el-table::v-deep .success-row {
+            background: #071f39;
+        }
+
+        &::v-deep .switchStyle .el-switch__label {
+            position: absolute;
+            display: none;
+            color: #fff;
+        }
+
+        &::v-deep .el-switch__core {
+            background-color: rgba(166, 166, 166, 1);
+        }
+
+        &::v-deep .switchStyle .el-switch__label--left {
+            z-index: 9;
+            left: 20px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label--right {
+            z-index: 9;
+            left: 4px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label.is-active {
+            display: block;
+        }
+
+        &::v-deep .switchStyle.el-switch .el-switch__core,
+        &::v-deep .el-switch .el-switch__label {
+            width: 50px !important;
+        }
+    }
+    .line{
+        padding: 0 5px;
+    }
+    &::v-deep .el-dialog__header,
+    &::v-deep .el-dialog__body {
+        background-color: #06122c;
+    }
+
+    &::v-deep .el-dialog__header {
+        display: flex;
+        align-items: center;
+        background-color: #fff;
+        padding: 20px;
+        line-height: 60px;
+    }
+
+    &::v-deep .el-dialog__title {
+        color: #4b9bb7;
+    }
+
+    &::v-deep .el-dialog__close {
+        width: 20px;
+        height: 20px;
+        // color: #fff;
+    }
+
+    &::v-deep .el-dialog__body {
+        padding: 0;
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/index.vue
new file mode 100644
index 0000000..47a6bad
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/index.vue
@@ -0,0 +1,234 @@
+<template>
+    <div class="view">
+        <div class="view-data">
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        闂绫诲瀷:
+                    </label>
+                    <span class="data-detail">杩濊</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        澶х被鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        灏忕被鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        浜嬩欢绛夌骇:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        妗堢敱:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鎵�灞炲尯鍘�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        鎵�灞炵ぞ鍖�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鎵�灞炶閬�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        浜嬪彂鍦扮偣:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鍏宠仈鍟嗛摵鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        闂鎻忚堪:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-user">
+                <div class="data-item">
+                    <div class="data-item__left">
+                        <label class="data-title">
+                            鍙嶆槧浜�:
+                        </label>
+                        <span class="data-detail">寮犱簩</span>
+                    </div>
+                    <div class="data-item__right">
+                        <label class="data-title">
+                            鑱旂郴鏂瑰紡:
+                        </label>
+                        <span class="data-detail">12345678901</span>
+                    </div>
+                </div>
+                <div class="data-item">
+                    <div class="data-item__left">
+                        <label class="data-title">
+                            韬唤璇佸彿:
+                        </label>
+                        <span class="data-detail">123456789987654321</span>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="view-process">
+            <div class="process-header">
+                <div class="process-title-item" v-for="item in titleList" :key="item.title"
+                    @click="changeComponent(item.index)">
+                    <div :class="['process-title',activeIndex===item.index ? 'title-active' : '' ]">{{item.title}}</div>
+                    <div :class="['under-line',activeIndex===item.index ? 'line-active' : '' ]"></div>
+                </div>
+            </div>
+            <div class="show-item">
+                <div class="show-wrap">
+                    <MyProcess v-if="activeIndex === 1"></MyProcess>
+                    <MyFilePicture v-else-if="activeIndex === 2"></MyFilePicture>
+                    <MySovleProblem v-else-if="activeIndex === 3"></MySovleProblem>
+                    <MyScene v-else></MyScene>
+                </div>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+import MyProcess from './process'
+import MyFilePicture from './filePictrue'
+import MySovleProblem from './solveProblem'
+import MyScene from './scene'
+export default {
+    components: {
+        MyProcess, MyFilePicture, MySovleProblem, MyScene
+    },
+    data() {
+        return {
+            myInfo: {
+
+            },
+            activeIndex: 1,
+            titleList: [
+                {
+                    title: '鍔炵悊缁忚繃',
+                    index: 1,
+                },
+                {
+                    title: '妗堝嵎鍥剧墖',
+                    index: 2,
+                },
+                {
+                    title: '闂澶勭悊',
+                    index: 3,
+                },
+                {
+                    title: '鐜板満鎯呭喌',
+                    index: 4,
+                },
+            ]
+        }
+    },
+    created() {
+
+    },
+    methods: {
+        changeComponent(index) {
+            this.activeIndex = index;
+        }
+    },
+    props: ['info']
+}
+</script>
+<style lang="scss" scoped>
+.view {
+    display: flex;
+    padding: 20px;
+
+    .view-data {
+        color: #4b9bb7;
+        flex: 4;
+        padding: 0 30px 0 20px;
+
+        .data-item {
+            display: flex;
+            justify-content: space-between;
+            line-height: 40px;
+        }
+
+        border: 1px solid #17324c;
+    }
+
+    .view-process {
+        flex: 6;
+        margin-left: 20px;
+
+        .process-header {
+            display: flex;
+            line-height: 40px;
+
+            .process-title-item {
+                width: 120px;
+                text-align: center;
+
+                .under-line {
+                    height: 2px;
+                    width: 100%;
+                }
+
+                .title-active {
+                    color: #4b9bb7;
+                }
+
+                .line-active {
+                    background-color: #4b9bb7;
+                    border-radius: 20px;
+                }
+            }
+        }
+
+        .show-item {
+            overflow: hidden;
+            height: 600px;
+            position: relative;
+            .show-wrap{
+                overflow: scroll;
+                height: 600px;
+            }
+        }
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/arrive/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/arrive/index.vue
new file mode 100644
index 0000000..858e326
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/arrive/index.vue
@@ -0,0 +1,185 @@
+<template>
+    <div class="arrive">
+        <div class="arrive-title">鍒板ぇ鐜板満鎯呭喌</div>
+        <div class="arrive-form">
+            <el-form ref="arriveForm" label-width="160px" :model="arrive" :rules="arriveRules" autoComplete="on">
+                <!-- 鍒拌揪鏃堕棿 -->
+                <el-form-item label="鍒拌揪鏃堕棿:" prop="arrivalTime">
+                    <el-date-picker v-model="arrive.arrivalTime" type="datetime" placeholder="閫夋嫨鍒拌揪鏃堕棿">
+                    </el-date-picker>
+                </el-form-item>
+                <!-- 鍒拌揪鍦板潃 -->
+                <el-form-item label="鍒拌揪鍦板潃:" prop="arrivalAddress">
+                    <el-input v-model="arrive.arrivalAddress" placeholder="璇疯緭鍏ュ湴鍧�"></el-input>
+                </el-form-item>
+                <!-- 鐜板満鎯呭喌璇存槑 -->
+                <el-form-item label="鐜板満鎯呭喌璇存槑:" prop="situationExplain">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="arrive.situationExplain" placeholder="璇疯緭鍏ユ儏鍐佃鏄�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 淇¤鍥炲璇存槑 -->
+                <el-form-item label="淇¤鍥炲璇存槑:" prop="replyExplain">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="arrive.replyExplain" placeholder="璇疯緭鍏ュ洖璁胯鏄�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 鐜板満鎯呭喌鐓х墖 -->
+                <el-form-item label="鐜板満鎯呭喌鐓х墖:" prop="situationPic">
+                    <div class="upImg">
+                        <div class="img-list">
+                            <img :src="item" alt="" v-for="(item,index) in arrive.situationPic" :key="index">
+                        </div>
+                        <div class="upload" v-if="arrive.situationPic.length<4">
+                            <el-upload :file-list="fileList" class="upload-demo"
+                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
+                                :limit="4" :on-success="handleSuccess" :headers="getToken()">
+                                <i class="el-icon-plus"></i>
+                            </el-upload>
+                        </div>
+                        <div class="tip">{{arrive.situationPic.length}} / 4</div>
+                    </div>
+                </el-form-item>
+            </el-form>
+        </div>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        const checkTime = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍒拌揪鏃堕棿涓嶈兘涓虹┖'));
+            }
+        }
+        const checkAddress = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍒拌揪鍦板潃涓嶈兘涓虹┖'));
+            }
+        }
+        const checkSit = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鐜板満鎯呭喌璇存槑涓嶈兘涓虹┖'));
+            }
+        }
+        const checkReplay = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('淇¤鍥炲璇存槑涓嶈兘涓虹┖'));
+            }
+        }
+        const checkSitPic = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback();
+            }
+        }
+        return {
+            arrive: {
+                situationPic: [],
+            },
+            arriveRules: {
+                arrivalTime: [
+                    { trigger: 'blur', validator: checkTime }
+                ],
+                arrivalAddress: [
+                    { trigger: 'blur', validator: checkAddress }
+                ],
+                situationExplain: [
+                    { trigger: 'blur', validator: checkSit }
+                ],
+                replyExplain: [
+                    { trigger: 'blur', validator: checkReplay }
+                ],
+                situationPic: [
+                    { trigger: 'change', validator: checkSitPic }
+                ],
+            },
+            fileList: [],
+        }
+    },
+    props:['getArrive'],
+    methods: {
+        handleSuccess(res, file, filelist) {
+            const baseUrl = 'http://140.143.152.226:8410/';
+            console.log(res);
+            if (this.arrive.situationPic.length < 4) {
+                this.arrive.situationPic.push(baseUrl + res.data.url1)
+            }
+        },
+        getToken() {
+            const token = sessionStorage.getItem('token');
+            const tokenHead = sessionStorage.getItem('tokenHead');
+            if (token && tokenHead) {
+                return { Authorization: tokenHead + token }
+            }
+        },
+        // 鑾峰彇arrive瀵硅薄
+        backData(){
+            const { arrive } = this;
+            this.$emit('getArrive',{arrive});
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.arrive-title{
+    line-height: 60px;
+    font-weight: 650;
+    font-size: 20px;
+    width: 160px;
+    padding-right: 12px;
+    text-align: right;
+    color: #4b9bb7;
+}
+
+.upImg {
+    display: flex;
+
+    .tip {
+        position: absolute;
+        bottom: 0;
+        right: 0;
+    }
+
+    .img-list {
+        height: 80px;
+        position: relative;
+
+        img {
+            width: 60px;
+            height: 60px;
+        }
+    }
+}
+
+.upload {
+    width: 60px;
+    height: 60px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    font-size: 20px;
+    background-color: #fbfdff;
+    border-radius: 4px;
+}
+
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/book/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/book/index.vue
new file mode 100644
index 0000000..a4903eb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/book/index.vue
@@ -0,0 +1,96 @@
+<template>
+    <div class="book">
+        <div class="book-title">鏂囩涔︾被</div>
+        <div class="book-form">
+            <el-form ref="bookForm" label-width="160px" :model="book" :rules="bookRules" autoComplete="on">
+                <!-- 鏂囦功绉嶇被 -->
+                <el-form-item label="鏂囦功绉嶇被:" prop="kind">
+                    <el-input v-model="book.kind"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功缂栧彿 -->
+                <el-form-item label="鏂囦功缂栧彿:" prop="id">
+                    <el-input v-model="book.id"></el-input>
+                </el-form-item>
+                <!-- 杩濇硶绫诲瀷 -->
+                <el-form-item label="杩濇硶绫诲瀷:" prop="vioKind">
+                    <el-input v-model="book.vioKind"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鍙戞斁鏃堕棿 -->
+                <el-form-item label="鏂囦功鍙戞斁鏃堕棿:" prop="giveTime">
+                    <el-input v-model="book.giveTime"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功闄愬畾鏃堕棿 -->
+                <el-form-item label="鏂囦功闄愬畾鏃堕棿" prop="limitTime">
+                    <el-input v-model="book.limitTime"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鍙戞斁鍐呭 -->
+                <el-form-item label="鏂囦功鍙戞斁鍐呭:" prop="content">
+                    <el-input v-model="book.content"></el-input>
+                </el-form-item>
+                <!-- 瀹為檯鏁存敼鏃堕棿 -->
+                <el-form-item label="瀹為檯鏁存敼鏃堕棿:" prop="updateTime">
+                    <el-input v-model="book.updateTime"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鎯呭喌 -->
+                <el-form-item label="鏁存敼鎯呭喌:" prop="condition">
+                    <el-input v-model="book.condition"></el-input>
+                </el-form-item>
+                <!-- 澶囨敞 -->
+                <el-form-item label="澶囨敞:" prop="note">
+                    <el-input v-model="book.note"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鐓х墖涓婁紶 -->
+                <el-form-item label="鏂囦功鐓х墖涓婁紶:" prop="bookPhoto">
+                    <el-input v-model="book.bookPhoto"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鍓嶇収鐗� -->
+                <el-form-item label="鏁存敼鍓嶇収鐗�:" prop="beforeUpdate">
+                    <el-input v-model="book.beforeUpdate"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鍚庣収鐗� -->
+                <el-form-item label="鏁存敼鍚庣収鐗�:" prop="afterUpdate">
+                    <el-input v-model="book.afterUpdate"></el-input>
+                </el-form-item>
+                <!-- 鍏朵粬鐓х墖 -->
+                <el-form-item label="鍏朵粬:" prop="other">
+                    <el-input v-model="book.other"></el-input>
+                </el-form-item>
+            </el-form>
+        </div>
+    </div>
+</template>
+<script>
+    export default{
+        data(){
+            return{
+                book:{},
+                bookRules:{
+
+                }
+            }
+        }
+    }
+</script>
+<style lang="scss" scoped>
+.book-title{
+    line-height: 60px;
+    font-weight: 650;
+    font-size: 20px;
+    width: 160px;
+    padding-right: 12px;
+    text-align: right;
+    color: #4b9bb7;
+}
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/evidence/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/evidence/index.vue
new file mode 100644
index 0000000..d6606bb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/components/evidence/index.vue
@@ -0,0 +1,627 @@
+<template>
+    <div class="evidence">
+        <div class="evidence-title">璋冩煡鍙栬瘉</div>
+        <div class="evidence-form">
+            <el-form ref="evidenceForm" label-width="160px" :model="evidence" :rules="evidenceRules" autoComplete="on">
+                <!-- 鎵垮姙闃熷憳 -->
+                <el-form-item label="鎵垮姙闃熷憳:" prop="undertaker">
+                    <el-input v-model="evidence.undertaker" placeholder="璇疯緭鍏ュ鍚�"></el-input>
+                </el-form-item>
+                <!-- 鍗忓姙闃熷憳 -->
+                <el-form-item label="鍗忓姙闃熷憳:" prop="assistant">
+                    <el-input v-model="evidence.assistant" placeholder="璇疯緭鍏ュ鍚�"></el-input>
+                </el-form-item>
+                <!-- 鏃堕棿 -->
+                <el-form-item label="鏃堕棿:" prop="investigationTime">
+                    <el-date-picker v-model="evidence.investigationTime" type="datetime" placeholder="閫夋嫨鏃堕棿">
+                    </el-date-picker>
+                </el-form-item>
+                <!-- 鍦板潃 -->
+                <el-form-item label="鍦板潃:" prop="address">
+                    <el-input v-model="evidence.address" placeholder="璇疯緭鍏ュ湴鍧�"></el-input>
+                </el-form-item>
+                <!-- 妗堢敱 -->
+                <el-form-item label="妗堢敱:" prop="caseAction">
+                    <el-input v-model="evidence.caseAction" placeholder="璇疯緭鍏ユ鐢�"></el-input>
+                </el-form-item>
+                <!-- 褰撲簨浜轰俊鎭� -->
+                <el-form-item label="褰撲簨浜轰俊鎭�:" prop="userInfo">
+                    <el-input suffix-icon="el-icon-s-order" @focus="openDialog"></el-input>
+                </el-form-item>
+                <!-- 鎯呭喌鎻忚堪 -->
+                <el-form-item label="鎯呭喌鎻忚堪:" prop="description">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="evidence.description" placeholder="璇疯緭鍏ユ儏鍐垫弿杩�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 鐓х墖闄勪欢 -->
+                <el-form-item label="鐓х墖闄勪欢:" prop="photo">
+                    <div class="upImg">
+                        <div class="img-list">
+                            <img :src="item" alt="" v-for="(item,index) in evidence.pic" :key="index">
+                        </div>
+                        <div class="upload" v-if="evidence.pic.length<4">
+                            <el-upload :file-list="fileList" class="upload-demo"
+                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
+                                :limit="4" :on-success="handleSuccess2" :headers="getToken()">
+                                <i class="el-icon-plus"></i>
+                            </el-upload>
+                        </div>
+                        <div class="tip">{{evidence.pic.length}} / 4</div>
+                    </div>
+                </el-form-item>
+            </el-form>
+        </div>
+        <div class="user-form" v-show="userFlag">
+            <div class="user-form-header">
+                <span>璋冨害淇℃伅</span>
+                <i class="el-icon-close" @click="closeUserForm"></i>
+            </div>
+            <div class="user-form-content">
+                <el-form ref="userForm" label-width="120px" :model="user" :rules="userRules" autoComplete="on">
+                    <!-- 杩濇硶绫诲瀷 -->
+                    <el-form-item label="绫诲瀷:" prop="illegalType">
+                        <el-select v-model="user.illegalType" placeholder="璇烽�夋嫨">
+                            <el-option v-for="item in typeOptions" :key="item.value" :label="item.label"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 濮撳悕銆佹墜鏈哄彿 -->
+                    <div class="user-item">
+                        <!-- 濮撳悕 -->
+                        <el-form-item label="褰撲簨浜哄鍚�:" prop="name">
+                            <el-input v-model="user.name"></el-input>
+                        </el-form-item>
+                        <!-- 鎵嬫満鍙� -->
+                        <el-form-item label="鎵嬫満鍙风爜:" prop="phoneCode">
+                            <el-input v-model="user.phoneCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 璇佷欢 -->
+                    <div class="user-item">
+                        <el-form-item label="璇佷欢绫诲瀷:" prop="certificateType">
+                            <el-select v-model="user.certificateType" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in cardOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="璇佷欢鍙风爜:" prop="certificateCode">
+                            <el-input v-model="user.certificateCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鏂囧寲绋嬪害\鑱屼笟 -->
+                    <div class="user-item">
+                        <!-- 鏂囧寲绋嬪害 -->
+                        <el-form-item label="鏂囧寲绋嬪害:" prop="educationDegree">
+                            <el-select v-model="user.educationDegree" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in degreeOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <!-- 鑱屼笟 -->
+                        <el-form-item label="鑱屼笟:" prop="career">
+                            <el-input v-model="user.career"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 宸ヤ綔鍗曚綅鍙婅亴鍔� -->
+                    <el-form-item label="宸ヤ綔鍗曚綅鍙婅亴鍔�:" prop="work">
+                        <el-input v-model="user.work"></el-input>
+                    </el-form-item>
+                    <!-- 姘戞棌\绫嶈疮 -->
+                    <div class="user-item">
+                        <!-- 姘戞棌 -->
+                        <el-form-item label="姘戞棌:" prop="nation">
+                            <el-input v-model="user.nation"></el-input>
+                        </el-form-item>
+                        <!-- 绫嶈疮 -->
+                        <el-form-item label="绫嶈疮:" prop="nativePlace">
+                            <el-input v-model="user.nativePlace"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鐜颁綇鍧� -->
+                    <el-form-item label="鐜颁綇鍧�:" prop="liveAddress">
+                        <el-input v-model="user.liveAddress"></el-input>
+                    </el-form-item>
+                    <!-- 鎴风睄鎵�鍦ㄥ湴 -->
+                    <el-form-item label="鎴风睄鎵�鍦ㄥ湴:" prop="registerAddress">
+                        <el-input v-model="user.registerAddress"></el-input>
+                    </el-form-item>
+                </el-form>
+            </div>
+            <div class="user-form-footer">
+                <el-button type="primary" @click="checkUser">纭畾</el-button>
+                <el-button>杩斿洖</el-button>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        const checkName = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎵垮姙闃熷憳鍚嶅瓧涓嶈兘涓虹┖'));
+            }
+        }
+        const checkName2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍗忓姙闃熷憳鍚嶅瓧涓嶈兘涓虹┖'));
+            }
+        }
+        const checkTime2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姝ゅ鏃堕棿涓嶈兘涓虹┖'));
+            }
+        }
+        const checkAddress2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姝ゅ鍦板潃涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCase = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('妗堢敱涓嶈兘绌�'));
+            }
+        }
+        const checkDesc = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎯呭喌鎻忚堪涓嶈兘涓虹┖'));
+            }
+        }
+        const checkPic = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback();
+            }
+        }
+        const checkIll = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('妗堜欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkName3 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�'));
+            }
+        }
+        const checkPhone = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎵嬫満鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCard = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCode = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWh = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鏂囧寲绋嬪害涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCareer = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鑱屼笟涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWork = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('宸ヤ綔鍗曚綅鍙婅亴鍔′笉鑳戒负绌�'));
+            }
+        }
+        const checkNation = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姘戞棌涓嶈兘涓虹┖'));
+            }
+        }
+        const checkNaP = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('绫嶈疮涓嶈兘涓虹┖'));
+            }
+        }
+        const checkLiveAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鐜颁綇鍧�涓嶈兘涓虹┖'));
+            }
+        }
+        const checkRegAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎴风睄鎵�鍦ㄥ湴涓嶈兘涓虹┖'));
+            }
+        }
+        const checkFlag = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('鐢ㄦ埛淇℃伅涓嶈兘涓虹┖'))
+            }
+        }
+        return {
+            evidence: {
+                pic: [],
+                userInfo: false,
+            },
+            evidenceRules: {
+                userInfo: [
+                    { trigger: 'change', validator: checkFlag }
+                ],
+                undertaker: [
+                    {
+                        trigger: 'blur', validator: checkName
+                    }
+                ],
+                assistant: [
+                    {
+                        trigger: 'blur', validator: checkName2
+                    }
+                ],
+                investigationTime: [
+                    {
+                        trigger: 'change', validator: checkTime2
+                    }
+                ],
+                address: [
+                    {
+                        trigger: 'blur', validator: checkAddress2
+                    }
+                ],
+                caseAction: [
+                    {
+                        trigger: 'blur', validator: checkCase
+                    }
+                ],
+                description: [
+                    {
+                        trigger: 'blur', validator: checkDesc
+                    }
+                ],
+                pic: [
+                    {
+                        trigger: 'blur', validator: checkPic
+                    }
+                ],
+            },
+            fileList: [],
+            user: {
+                illegalType: '',
+                name: '',
+                phoneCode: '',
+                certificateType: '',
+                certificateCode: '',
+                educationDegree: '',
+                career: '',
+                work: '',
+                nation: '',
+                nativePlace: '',
+                liveAddress: '',
+                registerAddress: '',
+            },
+            userRules: {
+                illegalType: [
+                    {
+                        trigger: 'change', validator: checkIll,
+                    }
+                ],
+                name: [
+                    {
+                        trigger: 'blur', validator: checkName3
+                    }
+                ],
+                phoneCode: [
+                    {
+                        trigger: 'blur', validator: checkPhone
+                    }
+                ],
+                certificateType: [
+                    {
+                        trigger: 'change', validator: checkCard
+                    }
+                ],
+                certificateCode: [
+                    {
+                        trigger: 'blur', validator: checkCode
+                    }
+                ],
+                educationDegree: [
+                    {
+                        trigger: 'change', validator: checkWh
+                    }
+                ],
+                career: [
+                    {
+                        trigger: 'blur', validator: checkCareer
+                    }
+                ],
+                work: [
+                    {
+                        trigger: 'blur', validator: checkWork
+                    }
+                ],
+                nation: [
+                    {
+                        trigger: 'blur', validator: checkNation
+                    }
+                ],
+                nativePlace: [
+                    {
+                        trigger: 'blur', validator: checkNaP
+                    }
+                ],
+                liveAddress: [
+                    {
+                        trigger: 'blur', validator: checkLiveAdd
+                    }
+                ],
+                registerAddress: [
+                    {
+                        trigger: 'blur', validator: checkRegAdd
+                    }
+                ],
+            },
+            userFlag: false,
+            typeOptions: [
+                {
+                    label: '杩濇硶',
+                    value: 1,
+                },
+                {
+                    label: '杩濆缓',
+                    value: 2
+                }
+            ],
+            cardOptions: [
+                {
+                    label: '韬唤璇�',
+                    value: 1,
+                },
+                {
+                    label: '鍏朵粬',
+                    value: 2
+                }
+            ],
+            degreeOptions:[
+                {
+                    label:'灏忓',
+                    value:1
+                },
+                {
+                    label:'鍒濅腑',
+                    value:2
+                },
+                {
+                    label:'楂樹腑',
+                    value:3
+                },
+                {
+                    label:'澶у鍙婁互涓�',
+                    value:4
+                },
+            ]
+        }
+    },
+    props:['getEvidence'],
+    methods: {
+        handleSuccess2(res, file, filelist) {
+            const baseUrl = 'http://140.143.152.226:8410/';
+            console.log(res);
+            if (this.evidence.pic.length < 4) {
+                this.evidence.pic.push(baseUrl + res.data.url1)
+            }
+        },
+        getToken() {
+            const token = sessionStorage.getItem('token');
+            const tokenHead = sessionStorage.getItem('tokenHead');
+            if (token && tokenHead) {
+                return { Authorization: tokenHead + token }
+            }
+        },
+        // 鎵撳紑褰撲簨浜轰俊鎭~鍐欒〃
+        openDialog(e) {
+            this.userFlag = true;
+            this.userInfo = true;
+        },
+        // 妫�楠寀ser
+        checkUser() {
+            // console.log(this.$refs.userForm.validate);
+            this.$refs.userForm.validate((valid) => {
+                console.log(valid);
+                if (valid) {
+                    this.evidence.userInfo = true;
+                    this.userFlag = false;
+                } else {
+                    this.evidence.userInfo = false;
+                    return false;
+                }
+            })
+        },
+        // 鍏抽棴褰撲簨浜轰俊鎭晫闈�
+        closeUserForm(){
+            this.userFlag = false;
+        },
+        // 杩斿洖褰撳墠evidence鍜寀ser瀵硅薄
+        backData(){
+            const {user,evidence} = this;
+            this.$emit('getEvidence',{user,evidence});
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.evidence {
+    line-height: 60px;
+    position: relative;
+    .evidence-title {
+        line-height: 60px;
+        font-weight: 650;
+        font-size: 20px;
+        width: 160px;
+        padding-right: 12px;
+        text-align: right;
+        color: #4b9bb7;
+    }
+}
+
+.upImg {
+    display: flex;
+
+    .tip {
+        position: absolute;
+        bottom: 0;
+        right: 0;
+    }
+
+    .img-list {
+        height: 80px;
+        position: relative;
+
+        img {
+            width: 60px;
+            height: 60px;
+        }
+    }
+}
+
+.upload {
+    width: 60px;
+    height: 60px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    font-size: 20px;
+    background-color: #fbfdff;
+    border-radius: 4px;
+}
+.user-form{
+    position: absolute;
+    top: 0;
+    z-index: 3000;
+    background-color: #06122c;
+    .user-form-header{
+        background-color: #fff;
+        color: #4b9bb7;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+        padding: 0 20px;
+    }
+    padding-bottom: 60px;
+}
+.user-form-content {
+    padding-top:20px;
+
+    .user-item {
+        display: flex;
+
+        .el-input {
+            flex: 1;
+        }
+    }
+
+    ::v-deep .el-textarea__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
+    ::v-deep .el-input__count {
+        background-color: #09152f;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+}
+
+.user-form-footer {
+    display: flex;
+    justify-content: flex-end;
+}
+
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+
+::v-deep .el-dialog__header,
+::v-deep .el-dialog__body {
+    background-color: #06122c;
+}
+
+::v-deep .el-dialog__header {
+    display: flex;
+    align-items: center;
+    background-color: #fff;
+    padding: 20px;
+    line-height: 60px;
+}
+
+::v-deep .el-dialog__title {
+    color: #4b9bb7;
+}
+
+::v-deep .el-dialog__close {
+    width: 20px;
+    height: 20px;
+    // color: #fff;
+}
+
+::v-deep .el-dialog__body {
+    padding: 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/ill/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/ill/index.vue
new file mode 100644
index 0000000..b74dfdb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/ill/index.vue
@@ -0,0 +1,48 @@
+<template>
+    <div class="ill">
+        <!-- 鍒拌揪鐜板満鎯呭喌 -->
+        <MyArrive></MyArrive>
+        <!-- 璋冩煡鍙栬瘉 -->
+        <MyEvidence></MyEvidence>
+        <!-- 鏂囩涔︾被 -->
+        <MyBook></MyBook>
+        <!-- 搴曢儴鎸夐挳 -->
+        <div class="footer">
+            <el-button @click="handleSubmit" type="primary">纭畾</el-button>
+            <el-button>杩斿洖</el-button>
+        </div>
+    </div>
+</template>
+<script>
+import MyArrive from '../components/arrive'
+import MyEvidence from "../components/evidence"
+import MyBook from "../components/book"
+export default {
+    components:{
+        MyArrive,MyEvidence,MyBook
+    },
+    data() {
+        return {
+
+        }
+    },
+    props:['caseId'],
+    created(){
+        console.log(this.caseId);
+    },
+    methods:{
+        handleSubmit(){
+
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+    .ill{
+        padding: 20px 200px;
+    }
+.footer {
+        display: flex;
+        justify-content: flex-end;
+    }
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/vio/index.vue b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/vio/index.vue
new file mode 100644
index 0000000..a12edc3
--- /dev/null
+++ b/src/views/operate/disposal/casepool/learn/updateUser/uploadResult/vio/index.vue
@@ -0,0 +1,123 @@
+<template>
+    <div class="vio">
+        <!-- 鍒拌揪鐜板満鎯呭喌 -->
+        <MyArrive ref="arrive" @getArrive="getArrive"></MyArrive>
+        <!-- 璋冩煡鍙栬瘉 -->
+        <MyEvidence ref="evidence" @getEvidence="getEvidence"></MyEvidence>
+        <!-- 搴曢儴鎸夐挳 -->
+        <div class="footer">
+            <el-button @click="handleSubmit" type="primary">纭畾</el-button>
+            <el-button>杩斿洖</el-button>
+        </div>
+    </div>
+</template>
+<script>
+import MyArrive from '../components/arrive'
+import MyEvidence from "../components/evidence"
+export default {
+    components: {
+        MyArrive, MyEvidence
+    },
+    data() {
+        return {
+
+        }
+    },
+    props: ['caseId', 'closeDialog'],
+    created() {
+        console.log(this.caseId);
+    },
+    methods: {
+        handleSubmit() {
+            const { arrive, evidence } = this.$refs;
+            const { arriveForm } = arrive.$refs;
+            const { evidenceForm } = evidence.$refs;
+            // console.log(evidence.$refs);
+            arriveForm.validate((valid) => {
+                // console.log(valid);
+                if (valid) {
+                    evidenceForm.validate((flag) => {
+                        if (flag) {
+                            // arrive.arrive;evidence.user;evidence.evidence;
+                            this.$axios({
+                                method: 'post',
+                                url: `sccg/dispatch_handle/addition_dispose_result/${this.caseId}/${1}`,
+                                data:{
+                                    // arrivalAddress: arrive.arrive.arrivalAddress,
+                                    // arrivalTime: arrive.arrive.arrivalTime,
+                                    // situationExplain: arrive.arrive.situationExplain,
+                                    // replyExplain: arrive.arrive.replyExplain,
+                                    // situationPic: arrive.arrive.situationPic,
+                                    // // 
+                                    // undertaker: evidence.evidence.undertaker,
+                                    // assistant: evidence.evidence.assistant,
+                                    // investigationTime: evidence.evidence.investigationTime,
+                                    // address: evidence.evidence.address,
+                                    // caseAction: evidence.evidence.caseAction,
+                                    // description: evidence.evidence.description,
+                                    // pic: evidence.evidence.pic,
+                                    // // 
+                                    // illegalType: evidence.user.illegalType,
+                                    // name: evidence.user.name,
+                                    // phoneCode: evidence.user.phoneCode,
+                                    // certificateType: evidence.user.certificateType,
+                                    // certificateCode: evidence.user.certificateCode,
+                                    // educationDegree: evidence.user.educationDegree,
+                                    // career: evidence.user.career,
+                                    // work: evidence.user.work,
+                                    // nation: evidence.user.nation,
+                                    // nativePlace: evidence.user.nativePlace,
+                                    // liveAddress: evidence.user.liveAddress,
+                                    // registerAddress: evidence.user.registerAddress,
+                                }
+                            })
+                                .then(res => {
+                                    console.log(res);
+                                    if (res.code === 200) {
+                                        this.$message({
+                                            type: 'success',
+                                            message:'涓婁紶鎴愬姛',
+                                        })
+                                        this.$emit('closeDialog', { flag: false });
+                                    }else{
+                                        this.$message({
+                                            type:'warning',
+                                            message:res.message
+                                        })
+                                    }
+                                })
+                        } else {
+                            return false;
+                        }
+                    })
+                } else {
+                    evidenceForm.validate((flag) => {
+                        if (!flag) {
+                            return false;
+                        }
+                    })
+                    return false;
+                }
+            })
+        },
+        // 鑾峰緱arrive鐨勪俊鎭�
+        getArrive(obj) {
+            console.log(obj);
+        },
+        // 鑾峰緱evidence瀵硅薄
+        getEvidence(obj) {
+            console.log(obj);
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.vio {
+    padding: 20px 200px;
+}
+
+.footer {
+    display: flex;
+    justify-content: flex-end;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/createUser/index.vue b/src/views/operate/disposal/casepool/notDeal/createUser/index.vue
new file mode 100644
index 0000000..b609337
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/createUser/index.vue
@@ -0,0 +1,195 @@
+<template>
+    <div class="createUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" label-width="140px" autoComplete="on" :model="things" label-position="right">
+                    <!-- 杩濊浜嬮」缂栧彿 -->
+                    <el-form-item class="optionItem" label="杩濊浜嬮」缂栧彿:" prop="number">
+                        <el-input v-model="things.number" placeholder="璇峰~鍐欒繚瑙勪簨椤圭紪鍙�"></el-input>
+                    </el-form-item>
+                    <!-- 鎵�灞炵被鍨� -->
+                    <el-form-item class="optionItems" label="鎵�灞炵被鍨�:" prop="typeThird">
+                        <el-select v-model="things.typeThird" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeThirdList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲ぇ绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲ぇ绫�:" prop="typeSecond">
+                        <el-select v-model="things.typeSecond" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeSecondList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲皬绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲皬绫�:" prop="typeFirst">
+                        <el-select v-model="things.typeFirst" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeFirstList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 妗堢敱 -->
+                    <el-form-item class="optionItem" label="妗堢敱:" prop="type">
+                        <el-input type="textarea" autosize v-model="things.type" placeholder="璇疯緭鍏ユ鐢辨弿杩板唴瀹�"
+                            :disabled="!updateFlag" disabled></el-input>
+                    </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>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            things: {
+                number: 0,
+                type: '',
+                typeFirst: '',
+                typeSecond: '',
+                typeThird: '',
+            },
+            roleList: [],
+            typeThirdList:[],
+            typeSecondList:[],
+            typeFirstList:[],
+        }
+    },
+    created() {
+        console.log(this.userInfo);
+        this.things = JSON.parse(JSON.stringify(this.userInfo));
+        // 鑾峰彇鎵�灞炵被鍨嬪垪琛�
+        this.getTypeThird();
+        this.getTypeSecond();
+        this.getTypeFirst();
+    },
+    methods: {
+        // handleUser() {
+        //     this.$refs.user.validate((valid) => {
+        //         if (valid) {
+        //             const { role } = this;
+        //             console.log(role);
+        //             this.$axios.post('/sccg/role/update/' + role.id, {
+        //                 id: role.id,
+        //                 status: role.status,
+        //                 description: role.description,
+        //                 name: role.name,
+        //                 sort: 0
+        //             }).then(res => {
+        //                 this.$emit('changeDialog', { dialogUpdate: false });
+        //                 this.getUserList();
+        //             })
+        //         } else {
+        //             return false;
+        //         }
+        //     })
+        // },
+        // 鏌ヨ鎵�灞炵被鍨�
+        getTypeThird() {
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_first",
+            })
+                .then(res => {
+                    this.typeThirdList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲ぇ绫�
+        getTypeSecond(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_second",
+            })
+                .then(res => {
+                    this.typeSecondList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲皬绫�
+        getTypeFirst(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_third",
+            })
+                .then(res => {
+                    this.typeFirstList = res.data;
+                })
+        }
+    },
+    props: ['getUserList']
+}
+</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/disposal/casepool/notDeal/index.vue b/src/views/operate/disposal/casepool/notDeal/index.vue
index 5209fd5..68503bb 100644
--- a/src/views/operate/disposal/casepool/notDeal/index.vue
+++ b/src/views/operate/disposal/casepool/notDeal/index.vue
@@ -1,117 +1,287 @@
 <template>
-    <div class="casepool">
-        <!-- 鏌ヨ娣诲姞 -->
+    <div class="userList">
         <header>
-            <div class="search">
-                <span>鏉ユ簮鏌ヨ锛�</span>
-                <el-input placeholder="璇疯緭鍏ラ棶棰樻潵婧�"></el-input>
+            <div class="headerContent">
+                <div class="search">
+                    <span>绛涢�夋潯浠�:</span>
+                    <div class="option">
+                        <el-select v-model="mystatus" placeholder="杩濊" @change="setMystatus">
+                            <el-option v-for="item in typeList" :key="item.label" :label="item.name"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </div>
+                    <div class="findBtn">
+                        <el-button type="primary" @click="getUserList">鏌ヨ</el-button>
+                    </div>
+                </div>
             </div>
-            <!-- <div class="add">
-                <el-button type="primary" icon="el-icon-plus" @click="handleOpenDialog">娣诲姞</el-button>
-            </div> -->
         </header>
-        <!-- 涓讳綋灞曠ず -->
         <main>
             <div class="mainContent">
-                <!-- 瀵艰埅鐘舵�佹爣绛� -->
-                <div class="nav">
-                    <el-tabs type="border-card">
-                        <el-tab-pane :label="item.name" v-for="item in tagList" :key="item.name">
-                        </el-tab-pane>
-                    </el-tabs>
-                    <!-- 鏁版嵁娓叉煋 -->
+                <div class="type-nav">
+                    <div @click="changeTypeChecked(index)" v-for="(item,index) in typeList" :key="item.name"
+                        :class="[item.checked ? 'is-active':'','type-item']">{{item.name}}</div>
+                </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">
+                    :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 label="浜嬩欢缂栧彿" min-width="6">
-                        <template slot-scope="scope">{{ scope.row.id }}</template>
-                    </el-table-column>
-                    <el-table-column prop="source" label="闂鏉ユ簮" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="bigKind" label="澶х被鍚嶇О" min-width="6">
-                    </el-table-column>
-                    <el-table-column prop="samllKind" label="灏忕被鍚嶇О" min-width="6">
-                    </el-table-column>
-                    <el-table-column prop="reson" label="妗堢敱" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="location" label="鎶ヨ鐐逛綅" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="area" label="鎵�灞炲尯鍩�" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="appendTime" label="鎶ヨ鏃堕棿" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="duration" label="鎸佺画鏃堕棿" min-width="6">
-                    </el-table-column>
-                    <el-table-column prop="operation" label="鎿嶄綔" min-width="15">
+                    <el-table-column prop="id" label="浜嬩欢缂栧彿" min-width="10">
                         <template slot-scope="scope">
-                            <div class="operation">
-                                <span @click="handleFind(scope.row)">閲嶆柊澶勭疆</span>
+                            <el-link @click="JumpView(scope.row)">{{scope.row.id}}</el-link>
+                        </template>
+                    </el-table-column>
+                    <el-table-column prop="eventSource" label="闂鏉ユ簮" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="category" label="澶х被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="type" label="灏忕被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="actionCause" label="妗堢敱" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="site" label="鎶ヨ鐐逛綅" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="streetId" label="鎵�灞炲尯鍩�" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="alarmTime" label="鎶ヨ鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="continueTime" label="鎸佺画鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="operation" label="鎿嶄綔" min-width="20">
+                        <template slot-scope="scope">
+                            <div class="btn">
+                                <span @click="opernDialog(scope.row)">閲嶆柊澶勭疆</span>
                             </div>
                         </template>
                     </el-table-column>
                 </el-table>
+                <!-- 鏌ョ湅淇敼椤甸潰 -->
+                <!-- <el-dialog :visible.sync="dialogUpdate" width="80%" title="鍩虹淇℃伅(浜哄伐)"
+                    v-if="dialogUpdate" :before-close="handleClose">
+                    <updateUser :info=info />
+                </el-dialog> -->
+                <!-- 璇︽儏椤靛睍绀� -->
+                <el-dialog :visible.sync="dialogView" width="80%" title="鍩虹淇℃伅(浜哄伐)" v-if="dialogView"
+                    :before-close="handleClose">
+                    <MyDetail :info=info></MyDetail>
+                </el-dialog>
+                <!-- 涓婁紶椤甸潰 -->
+                <el-dialog :visible.sync="dialogUpload" width="60%" title="涓婁紶澶勭疆缁撴灉"
+                    v-if="dialogUpload" :before-close="handleClose">
+                    <uploadVio v-if="mystatus === 0" :caseId="caseId" @closeDialog="closeDialog"></uploadVio>
+                    <uploadIll v-else :caseId="caseId" @closeDialog="closeDialog"></uploadIll>
+                </el-dialog>
+                <!-- tools -->
+                <div class="tools">
+                    <div class="funs">
+                        <div class="funsItem">
+                            <el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-checkbox v-model="unsame" @change="disSame(tableData)">鍙嶉��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-select v-model="myIdx" placeholder="鎵归噺鎿嶄綔" @change="selectChange">
+                                <el-option v-for="item in options" :key="item.value" :label="item.label"
+                                    :value="item.value" :disabled="item.disabled">
+                                </el-option>
+                            </el-select>
+                        </div>
+                    </div>
+                    <div class="pagination">
+                        <el-pagination background :current-page="currentPage" layout="prev, pager, next"
+                            :total="totalNum" :page-size="pageSize" @current-change="changeCurrentPage"
+                            @prev-click="handlePrev" @next-click="handleNext">
+                        </el-pagination>
+                    </div>
                 </div>
             </div>
         </main>
-        <!-- 缁勪欢鍖� -->
-        <footer>
-            <!-- <el-dialog v-if="visible" :visible.async="visible" title="闂鐧昏" width="60%" :before-close="handleClose">
-                <checkIn></checkIn>
-            </el-dialog> -->
-        </footer>
     </div>
 </template>
 <script>
-// import checkIn from './compenents/checkIn';
+// import updateUser from "./updateUser"
+import uploadVio from './updateUser/uploadResult/vio'
+import uploadIll from "./updateUser/uploadResult/ill"
+import MyDetail from '@/components/detail'
 export default {
     components: {
-        // checkIn,
+        // updateUser,
+        uploadVio,uploadIll,MyDetail
     },
     data() {
         return {
-            tagList: [
-                // {
-                //     name: '寰呭鐞�',
-                //     value: 0,
-                // },
-                // {
-                //     name: '宸蹭笂鎶�',
-                //     value: 0,
-                // },
-                // {
-                //     name: '宸茶皟搴�',
-                //     value: 0,
-                // },
-                // {
-                //     name: '鍦ㄥ涔�',
-                //     value: 0,
-                // },
-                // {
-                //     name: '鏆備笉澶勭悊',
-                //     value: 0,
-                // },
+            tableData: [],
+            context: "",
+            dialogUpload:false,
+            // dialogUpdate: false,
+            dialogView:false,
+            info: {},
+            totalNum: null,
+            pageSize: 10,
+            currentPage: 1,
+            all: false,
+            unsame: false,
+            myIdx: 0,
+            preMyIdx:0,
+            options: [
+                {
+                    value: 0,
+                    label: '鎵归噺鎿嶄綔',
+                    disabled: true,
+                },
+                {
+                    value: 1,
+                    label: '鎵归噺鍚敤',
+                },
+                {
+                    value: 2,
+                    label: '鎵归噺绂佺敤',
+                },
+                {
+                    value: 3,
+                    label: '鎵归噺鍒犻櫎',
+                }
+            ],
+            tempList: [],
+            typeList: [
                 {
                     name: '杩濊',
-                    value: 0,
+                    value: 1,
+                    checked: true
                 },
                 {
                     name: '杩濆缓',
-                    value: 0,
+                    value: 2,
+                    checked: false,
                 },
             ],
-            tableData: [
-                {
-                    id: 13413114,
-                    source: '浜哄伐涓婃姤/瑙嗛宸℃煡',
-                    appendTime: '2022-01-09 14:52'
-                }
-            ],
-            visible: false,
+            statusArr:[],
+            mystatus:0,
+            caseId:'',
         }
     },
+    created() {
+        this.statusArr[0] = 4;
+        this.typeList.forEach(item => {
+            if (item.checked) {
+                this.statusArr[1] = item.value;
+            }
+        })
+        this.getUserList();
+    },
     methods: {
+        // 椤堕儴涓嬫媺妗�
+        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,
+            }).then(res=>{
+                this.getUserList();
+                this.$message({
+                    message:res.message,
+                    type:res.code === 200 ? 'success' : 'warning'
+                })
+            })
+        },
+        // 鎵ц涓嬫媺妗嗘搷浣�
+        selectChange(list) {
+            console.log(this.tempList);
+            if (this.tempList.length !== 0) {
+                if (list === 3) {
+                    this.preMyIdx = list;
+                    this.mulDelete(this.tempList);
+                }
+            } else {
+                this.myIdx = this.preMyIdx;
+                this.$message({
+                    type: 'warning',
+                    message: '鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁',
+                })
+            }
+        },
+        // 鐩戝惉琛ㄦ牸
+        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
+            }
+        },
+        // 鍏ㄩ��
+        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) });
+        },
+        // 鑾峰彇鐢ㄦ埛鍒楄〃
+        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);
+            })
+        },
+        // 鏇存敼杩濊/杩濆缓
+        changeTypeChecked(idx) {
+            this.typeList.forEach((item, index) => {
+                if (index === idx) {
+                    item.checked = true;
+                } else {
+                    item.checked = false;
+                }
+            })
+            this.mystatus = idx + 1;
+            this.statusArr[1] = this.typeList[idx].value;
+            this.getUserList();
+        },
         // 璁剧疆琛ㄦ牸鏂戦┈绾�
         tableRowClassName({ row, rowIndex }) {
             if ((rowIndex + 1) % 2 == 0) {
@@ -121,141 +291,308 @@
             }
             return '';
         },
-        // 鎵撳紑娣诲姞椤�
-        handleOpenDialog() {
-            this.visible = true;
+        // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
+        changeCurrentPage(page) {
+            this.currentPage = page;
+            this.getUserList();
         },
-        // 鍏抽棴瀵硅瘽妗�
+        // 涓婁竴椤电偣鍑讳簨浠�
+        handlePrev(page) {
+            this.currentPage = page;
+            this.getUserList();
+        },
+        // 涓嬩竴椤电偣鍑讳簨浠�
+        handleNext(page) {
+            this.currentPage = page;
+            this.getUserList();
+        },
         handleClose(done) {
             this.$confirm('纭鍏抽棴锛�')
                 .then(_ => {
-                    this.visible = false;
+                    this.dialogUpload = false;
+                    // this.dialogUpdate = false;
                     done();
                 })
                 .catch(_ => { });
+        },
+        async JumpView(data){
+            await this.getEventInfo(data.code);
+        },
+        // 鑾峰彇妗堜欢淇℃伅
+        getEventInfo(code){
+            this.$axios({
+                method:'get',
+                url:`sccg/base_case/baseCaseDetail/${code}`
+            })
+            .then(res=>{
+                this.info = res.data;  
+                this.dialogView = true;
+            })
+        },
+        opernDialog(data){
+            this.dialogUpload = true;
+            this.caseId = data.id;
+            // console.log(data); 
+        },
+        // 鍏抽棴涓婁紶鐣岄潰
+        closeDialog({flag}){
+            this.dialogUpload = flag;
         }
     }
 }
 </script>
 <style lang="scss" scoped>
-.casepool {
+.userList {
     text-align: left;
+    margin: 10px 20px;
     color: #4b9bb7;
-
     header {
-        display: flex;
-        justify-content: space-between;
-        padding: 0 20px;
-        line-height: 60px;
+        background-color: #09152f;
+        border: 1pox solid #fff;
 
-        .search {
+        .headerContent {
+            padding: 0 40px;
             display: flex;
+            line-height: 100px;
+            justify-content: space-between;
+            align-items: center;
 
-            span {
-                flex: 2;
-            }
+            .search {
+                display: flex;
+                justify-content: flex-start;
 
-            .el-input {
-                flex: 5;
-
-                &::v-deep .el-input__inner {
-                    background-color: #09152f;
-                    border: 1px solid #17324c;
-                }
-            }
-        }
-
-        .add {
-            .el-button {
-                background-color: #eb5d01;
-                border: none;
-                border-radius: 20px;
-            }
-        }
-    }
-
-    main {
-        .mainContent {
-            .nav {
-                &::v-deep .el-tabs--border-card {
-                    border: none;
+                span {
+                    flex: 1;
                 }
 
-                &::v-deep .el-tabs--border-card>.el-tabs__content {
-                    background-color: #09152f;
-                }
+                .el-input {
+                    flex: 2;
+                    color: #1d3f57;
 
-                &::v-deep .el-tabs__nav-scroll {
-                    background-color: #09152f;
-                }
-
-                &::v-deep .el-tabs__header {
-                    line-height: 60px;
-                }
-
-                &::v-deep .el-tabs--border-card>.el-tabs__header .el-tabs__item {
-                    color: #fff;
-                }
-
-                &::v-deep .el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active {
-                    color: #4b9bb7;
-                    background-color: #071f39;
-                    border: none;
-                }
-
-                .el-table {
-                    font-size: 12px;
-                    color: #4b9bb7;
-
-                    .line {
-                        padding: 0 5px;
+                    &::v-deep .el-input__inner {
+                        background-color: #09152f;
+                        border: 1px solid #17324c;
                     }
                 }
 
-                &::v-deep .el-table__empty-block {
-                    background-color: #09152f;
-                    color: #4b9bb7;
-                }
+            }
 
-                .el-table::v-deep .warning-row {
-                    background: #06122c;
-                }
+            .findBtn {
+                line-height: 100px;
+                margin-left: 15px;
+                display: flex;
+                align-items: center;
+                margin-top: -2px;
 
-                .el-table::v-deep .success-row {
-                    background: #071f39;
+                .el-button {
+                    padding: 12px 25px;
+                    border-radius: 20px;
                 }
+            }
+
+            .addBtn {
+                background-color: #eb5d01;
+                border: none;
+                border-radius: 20px;
+                padding: 12px 30px;
             }
         }
     }
+    &::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+    main {
+        background-color: #09152f;
+        margin-top: 20px;
+        padding-bottom: 50px;
+        border: 1pox solid #fff;
 
-    footer {
-
-        &::v-deep .el-dialog__header,
-        &::v-deep .el-dialog__body {
-            background-color: #06122c;
-        }
-
-        &::v-deep .el-dialog__header {
+        .type-nav {
             display: flex;
+            line-height: 40px;
+            margin-left: 30px;
+            padding-top: 10px;
+            margin-bottom: 10px;
+
+            .type-item {
+                width: 80px;
+                text-align: center;
+
+                &:hover {
+                    cursor: pointer;
+                }
+            }
+
+            .is-active {
+                background-color: #070f22;
+                border-radius: 4px;
+                color: #fff;
+            }
+        }
+
+        .tools {
+            display: flex;
+            justify-content: space-between;
             align-items: center;
-            background-color: #fff;
-            padding: 20px;
-            line-height: 60px;
+            padding: 0 20px;
+
+            .funs {
+                display: flex;
+
+                .funsItem {
+                    line-height: 28px;
+                    display: flex;
+                    align-items: center;
+                    border: 1px solid #17324c;
+                    border-radius: 4px;
+                    font-size: 12px;
+                    margin-left: 10px;
+
+                    .el-checkbox {
+                        width: 80px;
+                        padding: 0 10px;
+                    }
+
+                    .el-select {
+                        width: 120px;
+                    }
+
+                    &::v-deep .el-input__inner {
+                        border: none;
+                        background-color: #09152f;
+                    }
+
+                    &:hover {
+                        border: 1px solid #4b9bb7;
+                    }
+
+                    &:hover .el-checkbox {
+                        color: #4b9bb7;
+                    }
+                }
+
+            }
+
+            .pagination {
+                margin-top: 50px;
+                display: flex;
+                line-height: 50px;
+                justify-content: center;
+
+                .el-pagination {
+
+                    &::v-deep li,
+                    &::v-deep .btn-prev,
+                    &::v-deep .btn-next {
+                        background-color: #071f39;
+                        color: #4b9bb7;
+                    }
+
+                    &::v-deep .active {
+                        background-color: #409eff;
+                        color: #fff;
+                    }
+                }
+            }
         }
 
-        &::v-deep .el-dialog__title {
+        .el-table {
             color: #4b9bb7;
+            font-size: 10px;
+
+            &::v-deep .cell {
+                text-overflow: ellipsis;
+                white-space: nowrap;
+                overflow: hidden;
+            }
+
+            &::v-deep .el-table__empty-block {
+                background-color: #09152f;
+            }
+
+            &::v-deep .el-table__empty-block {
+                color: #4b9bb7;
+            }
+
+            .operation {
+                display: flex;
+
+                .line {
+                    padding: 0 5px;
+                }
+
+                span:hover {
+                    cursor: pointer;
+                }
+            }
         }
 
-        &::v-deep .el-dialog__close {
-            width: 20px;
-            height: 20px;
-            // color: #fff;
+        .el-table::v-deep .warning-row {
+            background: #06122c;
         }
 
-        &::v-deep .el-dialog__body {
-            padding: 0;
+        .el-table::v-deep .success-row {
+            background: #071f39;
         }
+
+        &::v-deep .switchStyle .el-switch__label {
+            position: absolute;
+            display: none;
+            color: #fff;
+        }
+
+        &::v-deep .el-switch__core {
+            background-color: rgba(166, 166, 166, 1);
+        }
+
+        &::v-deep .switchStyle .el-switch__label--left {
+            z-index: 9;
+            left: 20px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label--right {
+            z-index: 9;
+            left: 4px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label.is-active {
+            display: block;
+        }
+
+        &::v-deep .switchStyle.el-switch .el-switch__core,
+        &::v-deep .el-switch .el-switch__label {
+            width: 50px !important;
+        }
+    }
+    .line{
+        padding: 0 5px;
+    }
+    &::v-deep .el-dialog__header,
+    &::v-deep .el-dialog__body {
+        background-color: #06122c;
+    }
+
+    &::v-deep .el-dialog__header {
+        display: flex;
+        align-items: center;
+        background-color: #fff;
+        padding: 20px;
+        line-height: 60px;
+    }
+
+    &::v-deep .el-dialog__title {
+        color: #4b9bb7;
+    }
+
+    &::v-deep .el-dialog__close {
+        width: 20px;
+        height: 20px;
+        // color: #fff;
+    }
+
+    &::v-deep .el-dialog__body {
+        padding: 0;
     }
 }
 </style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/index.vue
new file mode 100644
index 0000000..47a6bad
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/index.vue
@@ -0,0 +1,234 @@
+<template>
+    <div class="view">
+        <div class="view-data">
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        闂绫诲瀷:
+                    </label>
+                    <span class="data-detail">杩濊</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        澶х被鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        灏忕被鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        浜嬩欢绛夌骇:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        妗堢敱:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鎵�灞炲尯鍘�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+                <div class="data-item__right">
+                    <label class="data-title">
+                        鎵�灞炵ぞ鍖�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鎵�灞炶閬�:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        浜嬪彂鍦扮偣:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        鍏宠仈鍟嗛摵鍚嶇О:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-item">
+                <div class="data-item__left">
+                    <label class="data-title">
+                        闂鎻忚堪:
+                    </label>
+                    <span class="data-detail">xxx</span>
+                </div>
+            </div>
+            <div class="data-user">
+                <div class="data-item">
+                    <div class="data-item__left">
+                        <label class="data-title">
+                            鍙嶆槧浜�:
+                        </label>
+                        <span class="data-detail">寮犱簩</span>
+                    </div>
+                    <div class="data-item__right">
+                        <label class="data-title">
+                            鑱旂郴鏂瑰紡:
+                        </label>
+                        <span class="data-detail">12345678901</span>
+                    </div>
+                </div>
+                <div class="data-item">
+                    <div class="data-item__left">
+                        <label class="data-title">
+                            韬唤璇佸彿:
+                        </label>
+                        <span class="data-detail">123456789987654321</span>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="view-process">
+            <div class="process-header">
+                <div class="process-title-item" v-for="item in titleList" :key="item.title"
+                    @click="changeComponent(item.index)">
+                    <div :class="['process-title',activeIndex===item.index ? 'title-active' : '' ]">{{item.title}}</div>
+                    <div :class="['under-line',activeIndex===item.index ? 'line-active' : '' ]"></div>
+                </div>
+            </div>
+            <div class="show-item">
+                <div class="show-wrap">
+                    <MyProcess v-if="activeIndex === 1"></MyProcess>
+                    <MyFilePicture v-else-if="activeIndex === 2"></MyFilePicture>
+                    <MySovleProblem v-else-if="activeIndex === 3"></MySovleProblem>
+                    <MyScene v-else></MyScene>
+                </div>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+import MyProcess from './process'
+import MyFilePicture from './filePictrue'
+import MySovleProblem from './solveProblem'
+import MyScene from './scene'
+export default {
+    components: {
+        MyProcess, MyFilePicture, MySovleProblem, MyScene
+    },
+    data() {
+        return {
+            myInfo: {
+
+            },
+            activeIndex: 1,
+            titleList: [
+                {
+                    title: '鍔炵悊缁忚繃',
+                    index: 1,
+                },
+                {
+                    title: '妗堝嵎鍥剧墖',
+                    index: 2,
+                },
+                {
+                    title: '闂澶勭悊',
+                    index: 3,
+                },
+                {
+                    title: '鐜板満鎯呭喌',
+                    index: 4,
+                },
+            ]
+        }
+    },
+    created() {
+
+    },
+    methods: {
+        changeComponent(index) {
+            this.activeIndex = index;
+        }
+    },
+    props: ['info']
+}
+</script>
+<style lang="scss" scoped>
+.view {
+    display: flex;
+    padding: 20px;
+
+    .view-data {
+        color: #4b9bb7;
+        flex: 4;
+        padding: 0 30px 0 20px;
+
+        .data-item {
+            display: flex;
+            justify-content: space-between;
+            line-height: 40px;
+        }
+
+        border: 1px solid #17324c;
+    }
+
+    .view-process {
+        flex: 6;
+        margin-left: 20px;
+
+        .process-header {
+            display: flex;
+            line-height: 40px;
+
+            .process-title-item {
+                width: 120px;
+                text-align: center;
+
+                .under-line {
+                    height: 2px;
+                    width: 100%;
+                }
+
+                .title-active {
+                    color: #4b9bb7;
+                }
+
+                .line-active {
+                    background-color: #4b9bb7;
+                    border-radius: 20px;
+                }
+            }
+        }
+
+        .show-item {
+            overflow: hidden;
+            height: 600px;
+            position: relative;
+            .show-wrap{
+                overflow: scroll;
+                height: 600px;
+            }
+        }
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/arrive/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/arrive/index.vue
new file mode 100644
index 0000000..858e326
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/arrive/index.vue
@@ -0,0 +1,185 @@
+<template>
+    <div class="arrive">
+        <div class="arrive-title">鍒板ぇ鐜板満鎯呭喌</div>
+        <div class="arrive-form">
+            <el-form ref="arriveForm" label-width="160px" :model="arrive" :rules="arriveRules" autoComplete="on">
+                <!-- 鍒拌揪鏃堕棿 -->
+                <el-form-item label="鍒拌揪鏃堕棿:" prop="arrivalTime">
+                    <el-date-picker v-model="arrive.arrivalTime" type="datetime" placeholder="閫夋嫨鍒拌揪鏃堕棿">
+                    </el-date-picker>
+                </el-form-item>
+                <!-- 鍒拌揪鍦板潃 -->
+                <el-form-item label="鍒拌揪鍦板潃:" prop="arrivalAddress">
+                    <el-input v-model="arrive.arrivalAddress" placeholder="璇疯緭鍏ュ湴鍧�"></el-input>
+                </el-form-item>
+                <!-- 鐜板満鎯呭喌璇存槑 -->
+                <el-form-item label="鐜板満鎯呭喌璇存槑:" prop="situationExplain">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="arrive.situationExplain" placeholder="璇疯緭鍏ユ儏鍐佃鏄�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 淇¤鍥炲璇存槑 -->
+                <el-form-item label="淇¤鍥炲璇存槑:" prop="replyExplain">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="arrive.replyExplain" placeholder="璇疯緭鍏ュ洖璁胯鏄�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 鐜板満鎯呭喌鐓х墖 -->
+                <el-form-item label="鐜板満鎯呭喌鐓х墖:" prop="situationPic">
+                    <div class="upImg">
+                        <div class="img-list">
+                            <img :src="item" alt="" v-for="(item,index) in arrive.situationPic" :key="index">
+                        </div>
+                        <div class="upload" v-if="arrive.situationPic.length<4">
+                            <el-upload :file-list="fileList" class="upload-demo"
+                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
+                                :limit="4" :on-success="handleSuccess" :headers="getToken()">
+                                <i class="el-icon-plus"></i>
+                            </el-upload>
+                        </div>
+                        <div class="tip">{{arrive.situationPic.length}} / 4</div>
+                    </div>
+                </el-form-item>
+            </el-form>
+        </div>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        const checkTime = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍒拌揪鏃堕棿涓嶈兘涓虹┖'));
+            }
+        }
+        const checkAddress = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍒拌揪鍦板潃涓嶈兘涓虹┖'));
+            }
+        }
+        const checkSit = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鐜板満鎯呭喌璇存槑涓嶈兘涓虹┖'));
+            }
+        }
+        const checkReplay = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('淇¤鍥炲璇存槑涓嶈兘涓虹┖'));
+            }
+        }
+        const checkSitPic = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback();
+            }
+        }
+        return {
+            arrive: {
+                situationPic: [],
+            },
+            arriveRules: {
+                arrivalTime: [
+                    { trigger: 'blur', validator: checkTime }
+                ],
+                arrivalAddress: [
+                    { trigger: 'blur', validator: checkAddress }
+                ],
+                situationExplain: [
+                    { trigger: 'blur', validator: checkSit }
+                ],
+                replyExplain: [
+                    { trigger: 'blur', validator: checkReplay }
+                ],
+                situationPic: [
+                    { trigger: 'change', validator: checkSitPic }
+                ],
+            },
+            fileList: [],
+        }
+    },
+    props:['getArrive'],
+    methods: {
+        handleSuccess(res, file, filelist) {
+            const baseUrl = 'http://140.143.152.226:8410/';
+            console.log(res);
+            if (this.arrive.situationPic.length < 4) {
+                this.arrive.situationPic.push(baseUrl + res.data.url1)
+            }
+        },
+        getToken() {
+            const token = sessionStorage.getItem('token');
+            const tokenHead = sessionStorage.getItem('tokenHead');
+            if (token && tokenHead) {
+                return { Authorization: tokenHead + token }
+            }
+        },
+        // 鑾峰彇arrive瀵硅薄
+        backData(){
+            const { arrive } = this;
+            this.$emit('getArrive',{arrive});
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.arrive-title{
+    line-height: 60px;
+    font-weight: 650;
+    font-size: 20px;
+    width: 160px;
+    padding-right: 12px;
+    text-align: right;
+    color: #4b9bb7;
+}
+
+.upImg {
+    display: flex;
+
+    .tip {
+        position: absolute;
+        bottom: 0;
+        right: 0;
+    }
+
+    .img-list {
+        height: 80px;
+        position: relative;
+
+        img {
+            width: 60px;
+            height: 60px;
+        }
+    }
+}
+
+.upload {
+    width: 60px;
+    height: 60px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    font-size: 20px;
+    background-color: #fbfdff;
+    border-radius: 4px;
+}
+
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/book/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/book/index.vue
new file mode 100644
index 0000000..a4903eb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/book/index.vue
@@ -0,0 +1,96 @@
+<template>
+    <div class="book">
+        <div class="book-title">鏂囩涔︾被</div>
+        <div class="book-form">
+            <el-form ref="bookForm" label-width="160px" :model="book" :rules="bookRules" autoComplete="on">
+                <!-- 鏂囦功绉嶇被 -->
+                <el-form-item label="鏂囦功绉嶇被:" prop="kind">
+                    <el-input v-model="book.kind"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功缂栧彿 -->
+                <el-form-item label="鏂囦功缂栧彿:" prop="id">
+                    <el-input v-model="book.id"></el-input>
+                </el-form-item>
+                <!-- 杩濇硶绫诲瀷 -->
+                <el-form-item label="杩濇硶绫诲瀷:" prop="vioKind">
+                    <el-input v-model="book.vioKind"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鍙戞斁鏃堕棿 -->
+                <el-form-item label="鏂囦功鍙戞斁鏃堕棿:" prop="giveTime">
+                    <el-input v-model="book.giveTime"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功闄愬畾鏃堕棿 -->
+                <el-form-item label="鏂囦功闄愬畾鏃堕棿" prop="limitTime">
+                    <el-input v-model="book.limitTime"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鍙戞斁鍐呭 -->
+                <el-form-item label="鏂囦功鍙戞斁鍐呭:" prop="content">
+                    <el-input v-model="book.content"></el-input>
+                </el-form-item>
+                <!-- 瀹為檯鏁存敼鏃堕棿 -->
+                <el-form-item label="瀹為檯鏁存敼鏃堕棿:" prop="updateTime">
+                    <el-input v-model="book.updateTime"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鎯呭喌 -->
+                <el-form-item label="鏁存敼鎯呭喌:" prop="condition">
+                    <el-input v-model="book.condition"></el-input>
+                </el-form-item>
+                <!-- 澶囨敞 -->
+                <el-form-item label="澶囨敞:" prop="note">
+                    <el-input v-model="book.note"></el-input>
+                </el-form-item>
+                <!-- 鏂囦功鐓х墖涓婁紶 -->
+                <el-form-item label="鏂囦功鐓х墖涓婁紶:" prop="bookPhoto">
+                    <el-input v-model="book.bookPhoto"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鍓嶇収鐗� -->
+                <el-form-item label="鏁存敼鍓嶇収鐗�:" prop="beforeUpdate">
+                    <el-input v-model="book.beforeUpdate"></el-input>
+                </el-form-item>
+                <!-- 鏁存敼鍚庣収鐗� -->
+                <el-form-item label="鏁存敼鍚庣収鐗�:" prop="afterUpdate">
+                    <el-input v-model="book.afterUpdate"></el-input>
+                </el-form-item>
+                <!-- 鍏朵粬鐓х墖 -->
+                <el-form-item label="鍏朵粬:" prop="other">
+                    <el-input v-model="book.other"></el-input>
+                </el-form-item>
+            </el-form>
+        </div>
+    </div>
+</template>
+<script>
+    export default{
+        data(){
+            return{
+                book:{},
+                bookRules:{
+
+                }
+            }
+        }
+    }
+</script>
+<style lang="scss" scoped>
+.book-title{
+    line-height: 60px;
+    font-weight: 650;
+    font-size: 20px;
+    width: 160px;
+    padding-right: 12px;
+    text-align: right;
+    color: #4b9bb7;
+}
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/evidence/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/evidence/index.vue
new file mode 100644
index 0000000..d6606bb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/components/evidence/index.vue
@@ -0,0 +1,627 @@
+<template>
+    <div class="evidence">
+        <div class="evidence-title">璋冩煡鍙栬瘉</div>
+        <div class="evidence-form">
+            <el-form ref="evidenceForm" label-width="160px" :model="evidence" :rules="evidenceRules" autoComplete="on">
+                <!-- 鎵垮姙闃熷憳 -->
+                <el-form-item label="鎵垮姙闃熷憳:" prop="undertaker">
+                    <el-input v-model="evidence.undertaker" placeholder="璇疯緭鍏ュ鍚�"></el-input>
+                </el-form-item>
+                <!-- 鍗忓姙闃熷憳 -->
+                <el-form-item label="鍗忓姙闃熷憳:" prop="assistant">
+                    <el-input v-model="evidence.assistant" placeholder="璇疯緭鍏ュ鍚�"></el-input>
+                </el-form-item>
+                <!-- 鏃堕棿 -->
+                <el-form-item label="鏃堕棿:" prop="investigationTime">
+                    <el-date-picker v-model="evidence.investigationTime" type="datetime" placeholder="閫夋嫨鏃堕棿">
+                    </el-date-picker>
+                </el-form-item>
+                <!-- 鍦板潃 -->
+                <el-form-item label="鍦板潃:" prop="address">
+                    <el-input v-model="evidence.address" placeholder="璇疯緭鍏ュ湴鍧�"></el-input>
+                </el-form-item>
+                <!-- 妗堢敱 -->
+                <el-form-item label="妗堢敱:" prop="caseAction">
+                    <el-input v-model="evidence.caseAction" placeholder="璇疯緭鍏ユ鐢�"></el-input>
+                </el-form-item>
+                <!-- 褰撲簨浜轰俊鎭� -->
+                <el-form-item label="褰撲簨浜轰俊鎭�:" prop="userInfo">
+                    <el-input suffix-icon="el-icon-s-order" @focus="openDialog"></el-input>
+                </el-form-item>
+                <!-- 鎯呭喌鎻忚堪 -->
+                <el-form-item label="鎯呭喌鎻忚堪:" prop="description">
+                    <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="200" show-word-limit
+                        v-model="evidence.description" placeholder="璇疯緭鍏ユ儏鍐垫弿杩�,闄愬埗200瀛椾互鍐�"></el-input>
+                </el-form-item>
+                <!-- 鐓х墖闄勪欢 -->
+                <el-form-item label="鐓х墖闄勪欢:" prop="photo">
+                    <div class="upImg">
+                        <div class="img-list">
+                            <img :src="item" alt="" v-for="(item,index) in evidence.pic" :key="index">
+                        </div>
+                        <div class="upload" v-if="evidence.pic.length<4">
+                            <el-upload :file-list="fileList" class="upload-demo"
+                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
+                                :limit="4" :on-success="handleSuccess2" :headers="getToken()">
+                                <i class="el-icon-plus"></i>
+                            </el-upload>
+                        </div>
+                        <div class="tip">{{evidence.pic.length}} / 4</div>
+                    </div>
+                </el-form-item>
+            </el-form>
+        </div>
+        <div class="user-form" v-show="userFlag">
+            <div class="user-form-header">
+                <span>璋冨害淇℃伅</span>
+                <i class="el-icon-close" @click="closeUserForm"></i>
+            </div>
+            <div class="user-form-content">
+                <el-form ref="userForm" label-width="120px" :model="user" :rules="userRules" autoComplete="on">
+                    <!-- 杩濇硶绫诲瀷 -->
+                    <el-form-item label="绫诲瀷:" prop="illegalType">
+                        <el-select v-model="user.illegalType" placeholder="璇烽�夋嫨">
+                            <el-option v-for="item in typeOptions" :key="item.value" :label="item.label"
+                                :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 濮撳悕銆佹墜鏈哄彿 -->
+                    <div class="user-item">
+                        <!-- 濮撳悕 -->
+                        <el-form-item label="褰撲簨浜哄鍚�:" prop="name">
+                            <el-input v-model="user.name"></el-input>
+                        </el-form-item>
+                        <!-- 鎵嬫満鍙� -->
+                        <el-form-item label="鎵嬫満鍙风爜:" prop="phoneCode">
+                            <el-input v-model="user.phoneCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 璇佷欢 -->
+                    <div class="user-item">
+                        <el-form-item label="璇佷欢绫诲瀷:" prop="certificateType">
+                            <el-select v-model="user.certificateType" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in cardOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="璇佷欢鍙风爜:" prop="certificateCode">
+                            <el-input v-model="user.certificateCode"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鏂囧寲绋嬪害\鑱屼笟 -->
+                    <div class="user-item">
+                        <!-- 鏂囧寲绋嬪害 -->
+                        <el-form-item label="鏂囧寲绋嬪害:" prop="educationDegree">
+                            <el-select v-model="user.educationDegree" placeholder="璇烽�夋嫨">
+                                <el-option v-for="item in degreeOptions" :key="item.value" :label="item.label"
+                                    :value="item.value">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <!-- 鑱屼笟 -->
+                        <el-form-item label="鑱屼笟:" prop="career">
+                            <el-input v-model="user.career"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 宸ヤ綔鍗曚綅鍙婅亴鍔� -->
+                    <el-form-item label="宸ヤ綔鍗曚綅鍙婅亴鍔�:" prop="work">
+                        <el-input v-model="user.work"></el-input>
+                    </el-form-item>
+                    <!-- 姘戞棌\绫嶈疮 -->
+                    <div class="user-item">
+                        <!-- 姘戞棌 -->
+                        <el-form-item label="姘戞棌:" prop="nation">
+                            <el-input v-model="user.nation"></el-input>
+                        </el-form-item>
+                        <!-- 绫嶈疮 -->
+                        <el-form-item label="绫嶈疮:" prop="nativePlace">
+                            <el-input v-model="user.nativePlace"></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 鐜颁綇鍧� -->
+                    <el-form-item label="鐜颁綇鍧�:" prop="liveAddress">
+                        <el-input v-model="user.liveAddress"></el-input>
+                    </el-form-item>
+                    <!-- 鎴风睄鎵�鍦ㄥ湴 -->
+                    <el-form-item label="鎴风睄鎵�鍦ㄥ湴:" prop="registerAddress">
+                        <el-input v-model="user.registerAddress"></el-input>
+                    </el-form-item>
+                </el-form>
+            </div>
+            <div class="user-form-footer">
+                <el-button type="primary" @click="checkUser">纭畾</el-button>
+                <el-button>杩斿洖</el-button>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        const checkName = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎵垮姙闃熷憳鍚嶅瓧涓嶈兘涓虹┖'));
+            }
+        }
+        const checkName2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鍗忓姙闃熷憳鍚嶅瓧涓嶈兘涓虹┖'));
+            }
+        }
+        const checkTime2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姝ゅ鏃堕棿涓嶈兘涓虹┖'));
+            }
+        }
+        const checkAddress2 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姝ゅ鍦板潃涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCase = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('妗堢敱涓嶈兘绌�'));
+            }
+        }
+        const checkDesc = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎯呭喌鎻忚堪涓嶈兘涓虹┖'));
+            }
+        }
+        const checkPic = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback();
+            }
+        }
+        const checkIll = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('妗堜欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkName3 = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('褰撲簨浜哄鍚嶄笉鑳戒负绌�'));
+            }
+        }
+        const checkPhone = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎵嬫満鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCard = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCode = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('璇佷欢鍙风爜涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWh = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鏂囧寲绋嬪害涓嶈兘涓虹┖'));
+            }
+        }
+        const checkCareer = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鑱屼笟涓嶈兘涓虹┖'));
+            }
+        }
+        const checkWork = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('宸ヤ綔鍗曚綅鍙婅亴鍔′笉鑳戒负绌�'));
+            }
+        }
+        const checkNation = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('姘戞棌涓嶈兘涓虹┖'));
+            }
+        }
+        const checkNaP = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('绫嶈疮涓嶈兘涓虹┖'));
+            }
+        }
+        const checkLiveAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鐜颁綇鍧�涓嶈兘涓虹┖'));
+            }
+        }
+        const checkRegAdd = (rule, value, callback) => {
+            if (value) {
+                callback()
+            } else {
+                callback(new Error('鎴风睄鎵�鍦ㄥ湴涓嶈兘涓虹┖'));
+            }
+        }
+        const checkFlag = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('鐢ㄦ埛淇℃伅涓嶈兘涓虹┖'))
+            }
+        }
+        return {
+            evidence: {
+                pic: [],
+                userInfo: false,
+            },
+            evidenceRules: {
+                userInfo: [
+                    { trigger: 'change', validator: checkFlag }
+                ],
+                undertaker: [
+                    {
+                        trigger: 'blur', validator: checkName
+                    }
+                ],
+                assistant: [
+                    {
+                        trigger: 'blur', validator: checkName2
+                    }
+                ],
+                investigationTime: [
+                    {
+                        trigger: 'change', validator: checkTime2
+                    }
+                ],
+                address: [
+                    {
+                        trigger: 'blur', validator: checkAddress2
+                    }
+                ],
+                caseAction: [
+                    {
+                        trigger: 'blur', validator: checkCase
+                    }
+                ],
+                description: [
+                    {
+                        trigger: 'blur', validator: checkDesc
+                    }
+                ],
+                pic: [
+                    {
+                        trigger: 'blur', validator: checkPic
+                    }
+                ],
+            },
+            fileList: [],
+            user: {
+                illegalType: '',
+                name: '',
+                phoneCode: '',
+                certificateType: '',
+                certificateCode: '',
+                educationDegree: '',
+                career: '',
+                work: '',
+                nation: '',
+                nativePlace: '',
+                liveAddress: '',
+                registerAddress: '',
+            },
+            userRules: {
+                illegalType: [
+                    {
+                        trigger: 'change', validator: checkIll,
+                    }
+                ],
+                name: [
+                    {
+                        trigger: 'blur', validator: checkName3
+                    }
+                ],
+                phoneCode: [
+                    {
+                        trigger: 'blur', validator: checkPhone
+                    }
+                ],
+                certificateType: [
+                    {
+                        trigger: 'change', validator: checkCard
+                    }
+                ],
+                certificateCode: [
+                    {
+                        trigger: 'blur', validator: checkCode
+                    }
+                ],
+                educationDegree: [
+                    {
+                        trigger: 'change', validator: checkWh
+                    }
+                ],
+                career: [
+                    {
+                        trigger: 'blur', validator: checkCareer
+                    }
+                ],
+                work: [
+                    {
+                        trigger: 'blur', validator: checkWork
+                    }
+                ],
+                nation: [
+                    {
+                        trigger: 'blur', validator: checkNation
+                    }
+                ],
+                nativePlace: [
+                    {
+                        trigger: 'blur', validator: checkNaP
+                    }
+                ],
+                liveAddress: [
+                    {
+                        trigger: 'blur', validator: checkLiveAdd
+                    }
+                ],
+                registerAddress: [
+                    {
+                        trigger: 'blur', validator: checkRegAdd
+                    }
+                ],
+            },
+            userFlag: false,
+            typeOptions: [
+                {
+                    label: '杩濇硶',
+                    value: 1,
+                },
+                {
+                    label: '杩濆缓',
+                    value: 2
+                }
+            ],
+            cardOptions: [
+                {
+                    label: '韬唤璇�',
+                    value: 1,
+                },
+                {
+                    label: '鍏朵粬',
+                    value: 2
+                }
+            ],
+            degreeOptions:[
+                {
+                    label:'灏忓',
+                    value:1
+                },
+                {
+                    label:'鍒濅腑',
+                    value:2
+                },
+                {
+                    label:'楂樹腑',
+                    value:3
+                },
+                {
+                    label:'澶у鍙婁互涓�',
+                    value:4
+                },
+            ]
+        }
+    },
+    props:['getEvidence'],
+    methods: {
+        handleSuccess2(res, file, filelist) {
+            const baseUrl = 'http://140.143.152.226:8410/';
+            console.log(res);
+            if (this.evidence.pic.length < 4) {
+                this.evidence.pic.push(baseUrl + res.data.url1)
+            }
+        },
+        getToken() {
+            const token = sessionStorage.getItem('token');
+            const tokenHead = sessionStorage.getItem('tokenHead');
+            if (token && tokenHead) {
+                return { Authorization: tokenHead + token }
+            }
+        },
+        // 鎵撳紑褰撲簨浜轰俊鎭~鍐欒〃
+        openDialog(e) {
+            this.userFlag = true;
+            this.userInfo = true;
+        },
+        // 妫�楠寀ser
+        checkUser() {
+            // console.log(this.$refs.userForm.validate);
+            this.$refs.userForm.validate((valid) => {
+                console.log(valid);
+                if (valid) {
+                    this.evidence.userInfo = true;
+                    this.userFlag = false;
+                } else {
+                    this.evidence.userInfo = false;
+                    return false;
+                }
+            })
+        },
+        // 鍏抽棴褰撲簨浜轰俊鎭晫闈�
+        closeUserForm(){
+            this.userFlag = false;
+        },
+        // 杩斿洖褰撳墠evidence鍜寀ser瀵硅薄
+        backData(){
+            const {user,evidence} = this;
+            this.$emit('getEvidence',{user,evidence});
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.evidence {
+    line-height: 60px;
+    position: relative;
+    .evidence-title {
+        line-height: 60px;
+        font-weight: 650;
+        font-size: 20px;
+        width: 160px;
+        padding-right: 12px;
+        text-align: right;
+        color: #4b9bb7;
+    }
+}
+
+.upImg {
+    display: flex;
+
+    .tip {
+        position: absolute;
+        bottom: 0;
+        right: 0;
+    }
+
+    .img-list {
+        height: 80px;
+        position: relative;
+
+        img {
+            width: 60px;
+            height: 60px;
+        }
+    }
+}
+
+.upload {
+    width: 60px;
+    height: 60px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    font-size: 20px;
+    background-color: #fbfdff;
+    border-radius: 4px;
+}
+.user-form{
+    position: absolute;
+    top: 0;
+    z-index: 3000;
+    background-color: #06122c;
+    .user-form-header{
+        background-color: #fff;
+        color: #4b9bb7;
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+        padding: 0 20px;
+    }
+    padding-bottom: 60px;
+}
+.user-form-content {
+    padding-top:20px;
+
+    .user-item {
+        display: flex;
+
+        .el-input {
+            flex: 1;
+        }
+    }
+
+    ::v-deep .el-textarea__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
+    ::v-deep .el-input__count {
+        background-color: #09152f;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+}
+
+.user-form-footer {
+    display: flex;
+    justify-content: flex-end;
+}
+
+::v-deep .el-textarea__inner {
+    background-color: #09152f;
+    border: 1px solid #17324c;
+}
+
+::v-deep .el-input__count {
+    background-color: #09152f;
+}
+
+::v-deep .el-form-item__label {
+    color: #4b9bb7;
+}
+
+::v-deep .el-dialog__header,
+::v-deep .el-dialog__body {
+    background-color: #06122c;
+}
+
+::v-deep .el-dialog__header {
+    display: flex;
+    align-items: center;
+    background-color: #fff;
+    padding: 20px;
+    line-height: 60px;
+}
+
+::v-deep .el-dialog__title {
+    color: #4b9bb7;
+}
+
+::v-deep .el-dialog__close {
+    width: 20px;
+    height: 20px;
+    // color: #fff;
+}
+
+::v-deep .el-dialog__body {
+    padding: 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/ill/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/ill/index.vue
new file mode 100644
index 0000000..b74dfdb
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/ill/index.vue
@@ -0,0 +1,48 @@
+<template>
+    <div class="ill">
+        <!-- 鍒拌揪鐜板満鎯呭喌 -->
+        <MyArrive></MyArrive>
+        <!-- 璋冩煡鍙栬瘉 -->
+        <MyEvidence></MyEvidence>
+        <!-- 鏂囩涔︾被 -->
+        <MyBook></MyBook>
+        <!-- 搴曢儴鎸夐挳 -->
+        <div class="footer">
+            <el-button @click="handleSubmit" type="primary">纭畾</el-button>
+            <el-button>杩斿洖</el-button>
+        </div>
+    </div>
+</template>
+<script>
+import MyArrive from '../components/arrive'
+import MyEvidence from "../components/evidence"
+import MyBook from "../components/book"
+export default {
+    components:{
+        MyArrive,MyEvidence,MyBook
+    },
+    data() {
+        return {
+
+        }
+    },
+    props:['caseId'],
+    created(){
+        console.log(this.caseId);
+    },
+    methods:{
+        handleSubmit(){
+
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+    .ill{
+        padding: 20px 200px;
+    }
+.footer {
+        display: flex;
+        justify-content: flex-end;
+    }
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/vio/index.vue b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/vio/index.vue
new file mode 100644
index 0000000..a12edc3
--- /dev/null
+++ b/src/views/operate/disposal/casepool/notDeal/updateUser/uploadResult/vio/index.vue
@@ -0,0 +1,123 @@
+<template>
+    <div class="vio">
+        <!-- 鍒拌揪鐜板満鎯呭喌 -->
+        <MyArrive ref="arrive" @getArrive="getArrive"></MyArrive>
+        <!-- 璋冩煡鍙栬瘉 -->
+        <MyEvidence ref="evidence" @getEvidence="getEvidence"></MyEvidence>
+        <!-- 搴曢儴鎸夐挳 -->
+        <div class="footer">
+            <el-button @click="handleSubmit" type="primary">纭畾</el-button>
+            <el-button>杩斿洖</el-button>
+        </div>
+    </div>
+</template>
+<script>
+import MyArrive from '../components/arrive'
+import MyEvidence from "../components/evidence"
+export default {
+    components: {
+        MyArrive, MyEvidence
+    },
+    data() {
+        return {
+
+        }
+    },
+    props: ['caseId', 'closeDialog'],
+    created() {
+        console.log(this.caseId);
+    },
+    methods: {
+        handleSubmit() {
+            const { arrive, evidence } = this.$refs;
+            const { arriveForm } = arrive.$refs;
+            const { evidenceForm } = evidence.$refs;
+            // console.log(evidence.$refs);
+            arriveForm.validate((valid) => {
+                // console.log(valid);
+                if (valid) {
+                    evidenceForm.validate((flag) => {
+                        if (flag) {
+                            // arrive.arrive;evidence.user;evidence.evidence;
+                            this.$axios({
+                                method: 'post',
+                                url: `sccg/dispatch_handle/addition_dispose_result/${this.caseId}/${1}`,
+                                data:{
+                                    // arrivalAddress: arrive.arrive.arrivalAddress,
+                                    // arrivalTime: arrive.arrive.arrivalTime,
+                                    // situationExplain: arrive.arrive.situationExplain,
+                                    // replyExplain: arrive.arrive.replyExplain,
+                                    // situationPic: arrive.arrive.situationPic,
+                                    // // 
+                                    // undertaker: evidence.evidence.undertaker,
+                                    // assistant: evidence.evidence.assistant,
+                                    // investigationTime: evidence.evidence.investigationTime,
+                                    // address: evidence.evidence.address,
+                                    // caseAction: evidence.evidence.caseAction,
+                                    // description: evidence.evidence.description,
+                                    // pic: evidence.evidence.pic,
+                                    // // 
+                                    // illegalType: evidence.user.illegalType,
+                                    // name: evidence.user.name,
+                                    // phoneCode: evidence.user.phoneCode,
+                                    // certificateType: evidence.user.certificateType,
+                                    // certificateCode: evidence.user.certificateCode,
+                                    // educationDegree: evidence.user.educationDegree,
+                                    // career: evidence.user.career,
+                                    // work: evidence.user.work,
+                                    // nation: evidence.user.nation,
+                                    // nativePlace: evidence.user.nativePlace,
+                                    // liveAddress: evidence.user.liveAddress,
+                                    // registerAddress: evidence.user.registerAddress,
+                                }
+                            })
+                                .then(res => {
+                                    console.log(res);
+                                    if (res.code === 200) {
+                                        this.$message({
+                                            type: 'success',
+                                            message:'涓婁紶鎴愬姛',
+                                        })
+                                        this.$emit('closeDialog', { flag: false });
+                                    }else{
+                                        this.$message({
+                                            type:'warning',
+                                            message:res.message
+                                        })
+                                    }
+                                })
+                        } else {
+                            return false;
+                        }
+                    })
+                } else {
+                    evidenceForm.validate((flag) => {
+                        if (!flag) {
+                            return false;
+                        }
+                    })
+                    return false;
+                }
+            })
+        },
+        // 鑾峰緱arrive鐨勪俊鎭�
+        getArrive(obj) {
+            console.log(obj);
+        },
+        // 鑾峰緱evidence瀵硅薄
+        getEvidence(obj) {
+            console.log(obj);
+        }
+    }
+}
+</script>
+<style lang="scss" scoped>
+.vio {
+    padding: 20px 200px;
+}
+
+.footer {
+    display: flex;
+    justify-content: flex-end;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/management/myIndex/components/examine/index.vue b/src/views/operate/management/myIndex/components/examine/index.vue
new file mode 100644
index 0000000..ae20c85
--- /dev/null
+++ b/src/views/operate/management/myIndex/components/examine/index.vue
@@ -0,0 +1,286 @@
+<template>
+    <div class="view">
+        <div class="view-data">
+            <el-form :model="baseCase" label-position="right" ref="viewForm" :rules="Rules" label-width="100px">
+                <div class="data-item">
+                    <el-form-item label="闂鏉ユ簮:">
+                        <span class="data-detail">{{baseCase.eventSource === 2 ? '浜哄伐涓婃姤' : '瑙嗛宸℃煡'}}</span>
+                    </el-form-item>
+                    <el-form-item label="鐧昏浜哄憳:">
+                        <span class="data-detail">{{baseCase.createUser}}</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="闂绫诲瀷:">
+                        <span class="data-detail">{{baseCase.category === 1 ? '杩濊' : '杩濆缓'}}</span>
+                    </el-form-item>
+                    <el-form-item label="澶х被鍚嶇О:">
+                        <span class="data-detail">xxxxxx</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="灏忕被鍚嶇О:">
+                        <span class="data-detail">xxxxxx</span>
+                    </el-form-item>
+                    <el-form-item label="浜嬩欢绛夌骇:">
+                        <span class="data-detail">xxxxxx</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="妗堢敱:">
+                        <span class="data-detail">xxxxx</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="鎵�灞炲尯鍘�:">
+                        <span class="data-detail">xxxx</span>
+                    </el-form-item>
+                    <el-form-item label="鎵�灞炶閬�:">
+                        <span class="data-detail">{{baseCase.streetId}}</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="鎵�灞炵ぞ鍖�:">
+                        <span class="data-detail">{{baseCase.communityId}}</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="浜嬪彂鍦扮偣:">
+                        <span class="data-detail">{{baseCase.site}}</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="闂鎻忚堪:">
+                        <span class="data-detail">xxxxxx</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="澶勭疆鏂瑰紡:">
+                        <span class="data-detail">xxxxxxx</span>
+                    </el-form-item>
+                </div>
+                <div class="data-item">
+                    <el-form-item label="澶勭疆鎵嬫:">
+                        <span class="data-detail">xxxxxxx</span>
+                    </el-form-item>
+                </div>
+                <!-- 瀹℃牳鎰忚 -->
+                <el-form-item label="瀹℃牳鎰忚" prop="auditOpinion">
+                    <el-input type="textarea" placeholder="璇疯緭鍏ュ鏍告剰瑙�" v-model="baseCase.auditOpinion"></el-input>
+                </el-form-item>
+                <div class="el-form-footer">
+                    <el-button @click.native.prevent="handleSubmit(0)">椹冲洖</el-button>
+                    <el-button type="primary" @click.native.prevent="handleSubmit(1)">閫氳繃</el-button>
+                </div>
+            </el-form>
+        </div>
+        <div class="view-process">
+            <div class="process-header">
+                <div class="process-title-item" v-for="item in titleList" :key="item.title"
+                    @click="changeComponent(item.index)">
+                    <div :class="['process-title',activeIndex===item.index ? 'title-active' : '' ]">{{item.title}}</div>
+                    <div :class="['under-line',activeIndex===item.index ? 'line-active' : '' ]"></div>
+                </div>
+            </div>
+            <div class="show-item">
+                <div class="show-wrap">
+                    <MyProcess v-if="activeIndex === 1" :handlePassVo="handlePassVo"></MyProcess>
+                    <MyFilePicture v-else-if="activeIndex === 2" :filesPictureVo="filesPictureVo"></MyFilePicture>
+                    <MySovleProblem v-else-if="activeIndex === 3" :problemProVo="problemProVo"></MySovleProblem>
+                    <MyScene v-else :currentSitVo="currentSitVo"></MyScene>
+                </div>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+import MyProcess from '@/components/process'
+import MyFilePicture from '@/components/filePictrue'
+import MySovleProblem from '@/components/solveProblem'
+import MyScene from '@/components/scene'
+export default {
+    components: {
+        MyProcess, MyFilePicture, MySovleProblem, MyScene
+    },
+    data() {
+        const checkOpinion = (rule, value, callback) => {
+            if (value) {
+                callback();
+            } else {
+                callback(new Error('瀹℃牳鎰忚涓嶈兘涓虹┖'))
+            }
+        }
+        return {
+            myInfo: {
+
+            },
+            activeIndex: 1,
+            titleList: [
+                {
+                    title: '鍔炵悊缁忚繃',
+                    index: 1,
+                },
+                {
+                    title: '妗堝嵎鍥剧墖',
+                    index: 2,
+                },
+                {
+                    title: '闂澶勭悊',
+                    index: 3,
+                },
+                {
+                    title: '鐜板満鎯呭喌',
+                    index: 4,
+                },
+            ],
+            Rules: {
+                auditOpinion: [
+                    { required: true, trigger: 'blur', validator: checkOpinion }
+                ]
+            },
+            baseCase: {},
+            handlePassVo: {},
+            currentSitVo: {},
+            problemProVo: {},
+            filesPictureVo: {}
+
+        }
+    },
+    created() {
+        const { info } = this;
+        this.baseCase = info.baseCase;
+        this.handlePassVo = info.handlePassVo;
+        this.currentSitVo = info.currentSitVo;
+        this.problemProVo = info.problemProVo;
+        this.filesPictureVo = info.filesPictureVo;
+    },
+    methods: {
+        changeComponent(index) {
+            this.activeIndex = index;
+        },
+        // 鎻愪氦瀹℃牳鎰忚
+        handleSubmit(mystatus) {
+            // this.getUserLoginInfo();
+            const {baseCase} = this;
+            this.$refs.viewForm.validate((valid) => {
+                if (valid) {
+                    this.$axios({
+                        method: 'post',
+                        url: 'sccg/check_handle/check',
+                        data: {
+                            baseCaseId: baseCase.id,
+                            checkOpinion: baseCase.auditOpinion,
+                            currentUser: baseCase.createUser,
+                            status: mystatus,
+                        }
+                    })
+                    .then(res=>{
+                        console.log(res);
+                        if(res.code===200){
+                            this.$message({
+                                type:'success',
+                                message:mystatus === 0 ? '椹冲洖鎴愬姛' : '瀹℃牳閫氳繃'
+                            })
+                            this.$emit('closeDialog',{flag:false});
+                        }
+                        
+                    })
+                    .catch(err=>{console.log(err)});
+                } else {
+                    return false;
+                }
+            })
+        },
+        // 鑾峰彇褰撳墠鐢ㄦ埛鐧诲綍淇℃伅
+        getUserLoginInfo() {
+            // 鑾峰彇鐧诲綍鍚�;
+            const username = sessionStorage.getItem('name');
+            this.$axios({
+                method: 'get',
+                url: 'sccg/admin/info',
+                data: {
+                    name: 'username'
+                }
+            })
+                .then(res => {
+                    console.log(res);
+                })
+        }
+    },
+    props: ['info','closeDialog']
+}
+</script>
+<style lang="scss" scoped>
+.view {
+    display: flex;
+    padding: 20px;
+
+    .view-data {
+        color: #4b9bb7;
+        flex: 4;
+        padding: 20px;
+
+        .data-item {
+            display: flex;
+            justify-content: space-between;
+            line-height: 40px;
+        }
+
+        :deep(.el-form-item__label) {
+            color: #4b9bb7;
+        }
+
+        :deep(.el-textarea__inner) {
+            background-color: #17324c;
+            color: #4b9bb7;
+        }
+
+        .el-form-footer {
+            display: flex;
+            justify-content: flex-end;
+        }
+
+        border: 1px solid #17324c;
+    }
+
+    .view-process {
+        flex: 6;
+        margin-left: 20px;
+
+        .process-header {
+            display: flex;
+            line-height: 40px;
+
+            .process-title-item {
+                width: 120px;
+                text-align: center;
+
+                .under-line {
+                    height: 2px;
+                    width: 100%;
+                }
+
+                .title-active {
+                    color: #4b9bb7;
+                }
+
+                .line-active {
+                    background-color: #4b9bb7;
+                    border-radius: 20px;
+                }
+            }
+        }
+
+        .show-item {
+            overflow: hidden;
+            height: 600px;
+            position: relative;
+
+            .show-wrap {
+                overflow: scroll;
+                height: 600px;
+            }
+        }
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/management/myIndex/index.vue b/src/views/operate/management/myIndex/index.vue
index ff2f68a..c7c4723 100644
--- a/src/views/operate/management/myIndex/index.vue
+++ b/src/views/operate/management/myIndex/index.vue
@@ -10,21 +10,19 @@
             </div>
             <div class="status">
                 <div class="status-title">瀹℃牳鐘舵��</div>
-                <el-radio-group v-model="mystatus">
-                    <el-radio :label="1">寰呭鏍�</el-radio>
-                    <el-radio :label="2">宸插鏍�</el-radio>
-                    <el-radio :label="3">宸茬粨妗�</el-radio>
+                <el-radio-group v-model="instatus">
+                    <el-radio :label="7">寰呭鏍�</el-radio>
+                    <el-radio :label="8">宸插鏍�</el-radio>
+                    <el-radio :label="9">宸茬粨妗�</el-radio>
                 </el-radio-group>
             </div>
         </header>
-        <!-- <el-button @click="dialogCreate = true">鎵撳紑</el-button>
-        <div class="dialog">
-            <el-dialog title="瀹℃牳璇︽儏椤甸潰" v-if="dialogCreate" :visible.sync="dialogCreate" width="80%" :before-close="handleClose">
-                <MyDetail />
-            </el-dialog>
-        </div> -->
         <main>
             <div class="mainContent">
+                <div class="type-nav">
+                    <div @click="changeTypeChecked(index)" v-for="(item,index) in typeList" :key="item.name"
+                        :class="[item.checked ? 'is-active':'','type-item']">{{item.name}}</div>
+                </div>
                 <!-- 鏁版嵁灞曠ず -->
                 <el-table ref="multipleTable"
                     :header-cell-style="{background:'#06122c','font-size':'12px',color:'#4b9bb7','font-weight':'650','line-height':'45px'}"
@@ -32,31 +30,42 @@
                     @selection-change="tableChange">
                     <el-table-column type="selection" min-width="5">
                     </el-table-column>
-                    <el-table-column prop="name" label="瑙掕壊鍚嶇О" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="sort" label="瑙掕壊绫诲瀷" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="adminCount" label="榛樿瑙掕壊" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="description" label="澶囨敞" min-width="10">
-                    </el-table-column>
-                    <el-table-column prop="status" label="鍚敤" min-width="5">
+                    <el-table-column prop="id" label="浜嬩欢缂栧彿" min-width="10">
                         <template slot-scope="scope">
-                            <el-switch class="switchStyle" v-model="scope.row.status" active-text="寮�" inactive-text="鍏�"
-                                active-color="#3fef9a" inactive-color="#000212" @change="handleChangeStatus(scope.row)">
-                            </el-switch>
+                            <el-link @click="JumpView(scope.row)">{{scope.row.id}}</el-link>
                         </template>
                     </el-table-column>
-                    <el-table-column prop="operation" label="鎿嶄綔" min-width="15">
+                    <el-table-column prop="eventSource" label="闂鏉ユ簮" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="category" label="澶х被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="type" label="灏忕被鍚嶇О" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="actionCause" label="妗堢敱" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="site" label="鎶ヨ鐐逛綅" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="streetId" label="鎵�灞炲尯鍩�" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="alarmTime" label="鎶ヨ鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="continueTime" label="鎸佺画鏃堕棿" min-width="10">
+                    </el-table-column>
+                    <el-table-column prop="operation" label="鎿嶄綔" min-width="20">
                         <template slot-scope="scope">
-                            <div class="operation">
-                                <span>鏌ョ湅</span>
+                            <div class="btn">
+                                <span @click="handleExamine(scope.row)">瀹℃牳</span>
                                 <span class="line">|</span>
                                 <span>缁撴</span>
                             </div>
                         </template>
                     </el-table-column>
                 </el-table>
+                <!-- 瀹℃牳椤甸潰 -->
+                <el-dialog :visible.sync="dialogExamine" width="80%" title="鍩虹淇℃伅(浜哄伐)" v-if="dialogExamine"
+                    :before-close="handleClose">
+                    <MyExamine :info="info" @closeDialog="closeDialog"></MyExamine>
+                </el-dialog>
                 <!-- tools -->
                 <div class="tools">
                     <div class="funs">
@@ -86,16 +95,16 @@
     </div>
 </template>
 <script>
-import helper from "@/utils/mydate.js"
-import MyDetail from "@/components/detail"
+import MyExamine from './components/examine'
 export default {
-    components:{
-        MyDetail,
+    components: {
+        MyExamine
     },
     data() {
         return {
             tableData: [],
-            dialogCreate: false,
+            dialogExamine:false,
+            info: {},
             totalNum: null,
             pageSize: 10,
             currentPage: 1,
@@ -123,20 +132,48 @@
                 }
             ],
             tempList: [],
-            myproblem: 0,
-            mystatus: 0,
+            typeList: [
+                {
+                    name: '杩濊',
+                    value: 1,
+                    checked: true
+                },
+                {
+                    name: '杩濆缓',
+                    value: 2,
+                    checked: false,
+                },
+            ],
+            caseId: '',
+            myproblem: 1,
+            instatus: 7,
         }
     },
     created() {
         this.getUserList();
     },
     methods: {
+        // 鎵归噺鍒犻櫎
+        mulDelete(idArr) {
+            console.log(idArr);
+            this.$axios({
+                method: 'delete',
+                url: 'sccg/violations/batch_delete?ids=' + idArr,
+            }).then(res => {
+                this.getUserList();
+                this.$message({
+                    message: res.message,
+                    type: res.code === 200 ? 'success' : 'warning'
+                })
+            })
+        },
+        // 鎵ц涓嬫媺妗嗘搷浣�
         selectChange(list) {
             console.log(this.tempList);
             if (this.tempList.length !== 0) {
                 if (list === 3) {
                     this.preMyIdx = list;
-                    this.handleDelete(this.tempList);
+                    this.mulDelete(this.tempList);
                 }
             } else {
                 this.myIdx = this.preMyIdx;
@@ -146,10 +183,11 @@
                 })
             }
         },
+        // 鐩戝惉琛ㄦ牸
         tableChange(list) {
             this.tempList = [];
             list.forEach(item => {
-                this.tempList.push(item.id);
+                this.tempList.push(item.code);
             })
             if (list.length === this.tableData.length) {
                 this.all = true;
@@ -157,97 +195,59 @@
                 this.all = false
             }
         },
-        changeTime({ createTime }) {
-            return helper(createTime);
-        },
+        // 鍏ㄩ��
         selectAll() {
             this.$refs.multipleTable.toggleAllSelection();
         },
+        // 鍙嶉��
         disSame(list) {
             list.forEach(row => {
                 this.$refs.multipleTable.toggleRowSelection(row)
             })
         },
-        handleDelete(id) {
-            const that = this;
-            // let arr = [];
-            // arr.push(id);
+        // 鍒犻櫎鍗曟潯鏁版嵁
+        handleDelete({ number }) {
+            console.log(number);
             this.$confirm('纭鍒犻櫎锛�')
                 .then(_ => {
-                    that.$axios({
-                        method: 'post',
-                        url: 'sccg/role/delete?ids=' + id,
+                    console.log(1);
+                    this.$axios({
+                        method: 'delete',
+                        url: `sccg/violations/delete?id=${number}`,
                     })
                         .then(res => {
-                            this.myIdx = 0;
-                            this.preMyIdx = 0;
                             console.log(res);
                             this.$message({
-                                type: 'success',
+                                type: res.code === 200 ? 'success' : 'warning',
                                 message: res.message
                             })
 
                             this.getUserList();
                         })
                 })
-                .catch(_ => { });
-        },
-        // 淇敼瑙掕壊
-        handleChangeRole(obj) {
-            this.dialogUpdate = true
-            this.user = obj;
-            // console.log(obj)
-        },
-        // 淇敼鐢ㄦ埛鐘舵��
-        handleChangeStatus(obj) {
-            let { id, status } = obj;
-            status == true ? status = 1 : status = 0;
-            console.log(id, status);
-            this.$axios.post(`/sccg/role/updateStatus/` + id + '?status=' + status).then(res => {
-                console.log(res);
-            })
+                .catch(_ => { console.log(2) });
         },
         // 鑾峰彇鐢ㄦ埛鍒楄〃
         getUserList() {
-            const that = this;
-            this.dialogCreate = false;
-            // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
-            this.$axios.get('sccg/role/listAll').then(res => {
-                this.totalNum = res.data.length;
-                this.search();
+            const { currentPage, pageSize, instatus, myproblem } = this;
+            this.$axios({
+                method: 'get',
+                url: `sccg/base_case/query?state=${instatus}&current=${currentPage}&size=${pageSize}&resource=2&type=${myproblem}`
+            }).then(res => {
+                this.totalNum = res.data.total;
+                this.tableData = res.data.records;
             })
         },
-        search() {
-            const that = this;
-            const { currentPage, pageSize, context } = this;
-            this.dialogCreate = false;
-            // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
-            if (context == '') {
-                this.$axios.get('sccg/role/list?keyword=' + '&pageNum=' + currentPage + '&pageSize=' + pageSize).then(res => {
-                    if (res.code === 200) {
-                        console.log(res);
-                        res.data.list.forEach(item => {
-                            // item.createTime = helper(item.createTime);
-                            item.status == 1 ? item.status = true : item.status = false;
-                        })
-                        that.tableData = res.data.list;
-                        this.totalNum = res.data.list.length;
-                    }
-                })
-            } else {
-                this.$axios({
-                    method: 'get',
-                    url: 'sccg/role/list?keyword=' + context + '&pageNum=' + currentPage + '&pageSize=' + pageSize,
-                }).then(res => {
-                    if (res.code === 200) {
-                        res.data.list.forEach(item => {
-                            item.status == 1 ? item.status = true : item.status = false;
-                        })
-                        that.tableData = res.data.list
-                        this.totalNum = res.data.list.length;
-                    }
-                })
-            }
+        // 鏇存敼杩濊/杩濆缓
+        changeTypeChecked(idx) {
+            this.typeList.forEach((item, index) => {
+                if (index === idx) {
+                    item.checked = true;
+                } else {
+                    item.checked = false;
+                }
+            })
+            this.getUserList();
         },
         // 璁剧疆琛ㄦ牸鏂戦┈绾�
         tableRowClassName({ row, rowIndex }) {
@@ -258,47 +258,51 @@
             }
             return '';
         },
-        // 鏌ョ湅鐢ㄦ埛淇℃伅(涓嶅彲淇敼)
-        handleFind(rowData) {
-            this.dialogUpdate = true;
-            this.updateFlag = false;
-            this.userInfo = rowData;
-        },
-        // 淇敼鐢ㄦ埛閮ㄩ棬淇℃伅
-        handleUpdate(rowData) {
-            this.dialogUpdate = true;
-            this.updateFlag = true;
-            this.userInfo = rowData
-        },
         // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
         changeCurrentPage(page) {
             this.currentPage = page;
-            this.search();
+            this.getUserList();
         },
         // 涓婁竴椤电偣鍑讳簨浠�
         handlePrev(page) {
             this.currentPage = page;
-            this.search();
+            this.getUserList();
         },
         // 涓嬩竴椤电偣鍑讳簨浠�
         handleNext(page) {
             this.currentPage = page;
-            this.search();
-        },
-        changeDialog(val) {
-            this.dialogUpdate = val.dialogUpdate;
-            this.$message({
-                type: 'success',
-                message: '鏇存敼鎴愬姛',
-            })
+            this.getUserList();
         },
         handleClose(done) {
             this.$confirm('纭鍏抽棴锛�')
                 .then(_ => {
-                    this.dialogCreate = false;
+                    this.dialogExamine = false;
                     done();
                 })
                 .catch(_ => { });
+        },
+        async JumpView(data) {
+            await this.getEventInfo(data.code);
+        },
+        // 鑾峰彇妗堜欢淇℃伅
+        getEventInfo(code) {
+            this.$axios({
+                method: 'get',
+                url: `sccg/base_case/baseCaseDetail/${code}`
+            })
+                .then(res => {
+                    console.log(res);
+                    this.info = res.data;
+                    this.dialogExamine = true;
+                })
+        },
+        // 鍘诲鏍�
+        handleExamine({code}) {
+            this.getEventInfo(code);
+        },
+        // 鍏抽棴dialog
+        closeDialog({flag}){
+            this.dialogExamine = flag;
         }
     }
 }
@@ -326,14 +330,38 @@
         }
     }
 
+    &::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+    }
+
     main {
         background-color: #09152f;
         margin-top: 20px;
         padding-bottom: 50px;
         border: 1pox solid #fff;
 
-        .mainTitle {
-            line-height: 60px;
+        .type-nav {
+            display: flex;
+            line-height: 40px;
+            margin-left: 30px;
+            padding-top: 10px;
+            margin-bottom: 10px;
+
+            .type-item {
+                width: 80px;
+                text-align: center;
+
+                &:hover {
+                    cursor: pointer;
+                }
+            }
+
+            .is-active {
+                background-color: #070f22;
+                border-radius: 4px;
+                color: #fff;
+            }
         }
 
         .tools {
@@ -406,6 +434,12 @@
             color: #4b9bb7;
             font-size: 10px;
 
+            &::v-deep .cell {
+                text-overflow: ellipsis;
+                white-space: nowrap;
+                overflow: hidden;
+            }
+
             &::v-deep .el-table__empty-block {
                 background-color: #09152f;
             }
@@ -465,6 +499,10 @@
         }
     }
 
+    .line {
+        padding: 0 5px;
+    }
+
     &::v-deep .el-dialog__header,
     &::v-deep .el-dialog__body {
         background-color: #06122c;
diff --git a/src/views/operate/myWait/components/createInterface/index.vue b/src/views/operate/myWait/components/createInterface/index.vue
deleted file mode 100644
index 1be774b..0000000
--- a/src/views/operate/myWait/components/createInterface/index.vue
+++ /dev/null
@@ -1,260 +0,0 @@
-<template>
-    <div class="createmyInterface">
-        <main>
-            <div class="mainContent">
-                <el-form ref="user" label-width="140px" autoComplete="on" :model="myInterface"
-                    :rules="createmyInterfaceRules" label-position="right">
-                    <!-- 搴旂敤鍚嶇О -->
-                    <el-form-item label="搴旂敤鍚嶇О:" prop="applicationName">
-                        <el-input v-model="myInterface.applicationName" placeholder="濉啓搴旂敤鍚嶇О"></el-input>
-                    </el-form-item>
-                    <!-- 搴旂敤鍥炬爣 -->
-                    <el-form-item label="搴旂敤鍥炬爣:" prop="applicationIconUrl">
-                        <div class="iconBox">
-                            <div class="upload">
-                                <img src="@/assets/imgs/user/default-avatar.jpg" alt="">
-                            </div>
-                            <div class="iconView">
-                                <span>绀烘剰鍥�</span>
-                                <img src="@/assets/imgs/user/default-avatar.jpg" alt="">
-                            </div>
-                            <div class="tip">
-                                <span>鍙厑璁镐笂浼爅pg,jpeg,png,svg鏍煎紡鐨勫浘鐗囷紝寤鸿灏哄涓�105px*105px</span>
-                            </div>
-                        </div>
-                    </el-form-item>
-                    <!-- 搴旂敤绫诲瀷 -->
-                    <el-form-item label="搴旂敤绫诲瀷:" prop="applicationType">
-                        <div class="optionItem">
-                            <el-radio-group v-model="myInterface.applicationType">
-                                <el-radio :label="1">缃戦〉搴旂敤</el-radio>
-                            </el-radio-group>
-                        </div>
-                    </el-form-item>
-                    <!--缃戠珯url  -->
-                    <el-form-item label="缃戠珯url:" prop="websiteUrl">
-                        <el-input v-model="myInterface.websiteUrl"></el-input>
-                    </el-form-item>
-                    <!-- 搴旂敤鎻忚堪 -->
-                    <el-form-item label="搴旂敤鎻忚堪:" prop="description">
-                        <el-input v-model="myInterface.description" placeholder="璇峰~鍐欐弿杩�"></el-input>
-                    </el-form-item>
-                    <!-- 鎸夐挳 -->
-                    <el-form-item>
-                        <div class="optionBtn">
-                            <el-button type="primary" class="btn submit" @click.native.prevent="handleUser">鎻愪氦
-                            </el-button>
-                            <el-button class="btn reset">閲嶇疆</el-button>
-                        </div>
-                    </el-form-item>
-                </el-form>
-            </div>
-        </main>
-    </div>
-</template>
-<script>
-export default {
-    data() {
-        const validateApplicationName = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑敤鎴峰悕绉�"));
-            }
-        };
-        const validateApplicationIconUrl = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑櫥褰曞瘑鐮�"));
-            } else {
-                const rep = /^\w+$/;
-                if (!rep.test(value)) {
-                    callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆"));
-                }
-            }
-        };
-        const validateApplicationType = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑敤鎴峰鍚�"));
-            } else {
-                const rep = /^[\u4E00-\u9FA5]{2,4}$/;
-                if (!rep.test(value)) {
-                    callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕");
-                }
-            }
-        };
-        const validatePhone = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欐墜鏈哄彿鐮�"));
-            } else {
-                const rep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/
-                if (!rep.test(value)) {
-                    callback("璇疯緭鍏ユ纭殑鎵嬫満鍙风爜");
-                }
-            }
-        };
-        return {
-            myInterface: {
-            },
-            createmyInterfaceRules: {
-                applicationName: [
-                    { required: true, trigger: "blur", validator: validateApplicationName},
-                ],
-                applicationIconUrl: [
-                    { required: true, trigger: "blur", validator: validateApplicationIconUrl },
-                ],
-                applicationType: [
-                    { required: true, trigger: "blur", validator: validateApplicationType },
-                ],
-                websiteUrl: [
-                    { required: true, trigger: "blur" },
-                ],
-                description: [
-                    { required: false, trigger: "blur" },
-                ],
-            },
-        }
-    },
-    created() {
-        const that = this;
-    },
-    methods: {
-        handleUser() {
-            const { myInterface } = this;
-            this.$axios.post('sccg/system/portal/thirdApp/add', {
-                websiteUrl:myInterface.websiteUrl,
-                applicationIconUrl:myInterface.applicationIconUrl,
-                applicationType:0,
-                description:myInterface.description,
-                applicationName:myInterface.applicationName
-            }).then(res => {
-                console.log(res);
-                // if (res.code === 200) {
-                //     this.refresh();
-                // }
-            })
-        },
-    },
-    props: ['refresh']
-}
-</script>
-<style lang="scss" scoped>
-.createmyInterface {
-    border-radius: 1px;
-    background-color: #09152f;
-
-    main {
-        text-align: left;
-        padding: 0 55px;
-        background-color: #09152f;
-        padding-bottom: 50px;
-        .mainContent {
-            display: flex;
-            justify-content: center;
-            padding-top: 50px;
-
-            .iconBox {
-                display: flex;
-
-                .upload {
-                    display: flex;
-                    align-items: flex-end;
-
-                    img {
-                        width: 120px;
-                        height: 120px;
-                        border-radius: 4px;
-                    }
-                }
-
-                .iconView {
-                    display: flex;
-                    flex-direction: column;
-                    margin-left: 30px;
-                    justify-content: flex-end;
-
-                    img {
-                        width: 70px;
-                        height: 70px;
-                        border-radius: 4px;
-                    }
-                }
-
-                .tip {
-                    display: flex;
-                    align-items: flex-end;
-                    margin-left: 30px;
-                    font-size: 12px;
-
-                    span {
-                        line-height: 20px;
-                    }
-                }
-            }
-            .optionBtn{
-                margin-top: 30px;
-                &::v-deep .el-button{
-                    padding: 12px 40px;
-                }
-                .reset{
-                    border: 1px solid #0079fe;
-                    color: #0079fe;
-                }
-            }
-            &::v-deep .el-form-item__label {
-                color: #4b9bb7;
-            }
-
-            &::v-deep .el-input__inner {
-                background-color: #09152f;
-                border: 1px solid #17324c;
-            }
-
-            .addPerson {
-                display: flex;
-                list-style: none;
-                padding: 0;
-
-                li {
-                    background-color: #cccccc;
-                    width: 36px;
-                    height: 36px;
-                    border-radius: 50%;
-                    color: #fff;
-                    text-align: center;
-                    font-size: 30px;
-                    margin-left: 10px;
-                }
-            }
-
-            .el-form-item__content {
-                width: 400px;
-
-                .el-select {
-                    width: 100%;
-                }
-            }
-
-            .optionHandleSp {
-                display: flex;
-
-                .areaNumber,
-                .moreNumber {
-                    flex: 1;
-                }
-
-                .telNumber {
-                    flex: 2;
-                }
-            }
-
-        }
-    }
-
-    footer {
-        border-top: 1px solid #fff;
-        height: 80px;
-        display: flex;
-        align-items: center;
-        justify-content: flex-end;
-        padding-right: 20px;
-    }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/operate/myWait/components/viewInterface/index.vue b/src/views/operate/myWait/components/viewInterface/index.vue
deleted file mode 100644
index 6b28ebb..0000000
--- a/src/views/operate/myWait/components/viewInterface/index.vue
+++ /dev/null
@@ -1,246 +0,0 @@
-<template>
-    <div class="createmyInterface">
-        <main>
-            <div class="mainContent">
-                <el-form ref="user" label-width="140px" autoComplete="on" :model="myInterface"
-                    :rules="createmyInterfaceRules" label-position="right">
-                    <!-- 搴旂敤鍚嶇О -->
-                    <el-form-item label="搴旂敤鍚嶇О:" prop="applicationName">
-                        <el-input v-model="myInterface.applicationName" placeholder="濉啓搴旂敤鍚嶇О"></el-input>
-                    </el-form-item>
-                    <!-- 搴旂敤鍥炬爣 -->
-                    <el-form-item label="搴旂敤鍥炬爣:" prop="applicationIconUrl">
-                        <div class="iconBox">
-                            <div class="upload">
-                                <img src="@/assets/imgs/user/default-avatar.jpg" alt="">
-                            </div>
-                            <div class="iconView">
-                                <span>绀烘剰鍥�</span>
-                                <img src="@/assets/imgs/user/default-avatar.jpg" alt="">
-                            </div>
-                            <div class="tip">
-                                <span>鍙厑璁镐笂浼爅pg,jpeg,png,svg鏍煎紡鐨勫浘鐗囷紝寤鸿灏哄涓�105px*105px</span>
-                            </div>
-                        </div>
-                    </el-form-item>
-                    <!-- 搴旂敤绫诲瀷 -->
-                    <el-form-item label="搴旂敤绫诲瀷:" prop="applicationType">
-                        <div class="optionItem">
-                            <el-radio-group v-model="myInterface.applicationType">
-                                <el-radio :label="1">缃戦〉搴旂敤</el-radio>
-                            </el-radio-group>
-                        </div>
-                    </el-form-item>
-                    <!--缃戠珯url  -->
-                    <el-form-item label="缃戠珯url:" prop="websiteUrl">
-                        <el-input v-model="myInterface.websiteUrl"></el-input>
-                    </el-form-item>
-                    <!-- 搴旂敤鎻忚堪 -->
-                    <el-form-item label="搴旂敤鎻忚堪:" prop="description">
-                        <el-input v-model="myInterface.description" placeholder="璇峰~鍐欐弿杩�"></el-input>
-                    </el-form-item>
-                    <!-- 鎸夐挳 -->
-                    <!-- <el-form-item>
-                        <div class="optionBtn">
-                            <el-button type="primary" class="btn submit" @click.native.prevent="handleUser">鎻愪氦
-                            </el-button>
-                            <el-button class="btn reset">閲嶇疆</el-button>
-                        </div>
-                    </el-form-item> -->
-                </el-form>
-            </div>
-        </main>
-    </div>
-</template>
-<script>
-export default {
-    data() {
-        const validateApplicationName = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑敤鎴峰悕绉�"));
-            }
-        };
-        const validateApplicationIconUrl = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑櫥褰曞瘑鐮�"));
-            } else {
-                const rep = /^\w+$/;
-                if (!rep.test(value)) {
-                    callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆"));
-                }
-            }
-        };
-        const validateApplicationType = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欑敤鎴峰鍚�"));
-            } else {
-                const rep = /^[\u4E00-\u9FA5]{2,4}$/;
-                if (!rep.test(value)) {
-                    callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕");
-                }
-            }
-        };
-        const validatePhone = (rule, value, callback) => {
-            if (!value) {
-                callback(new Error("璇峰~鍐欐墜鏈哄彿鐮�"));
-            } else {
-                const rep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/
-                if (!rep.test(value)) {
-                    callback("璇疯緭鍏ユ纭殑鎵嬫満鍙风爜");
-                }
-            }
-        };
-        return {
-            myInterface: {
-            },
-            createmyInterfaceRules: {
-                applicationName: [
-                    { required: true, trigger: "blur", validator: validateApplicationName},
-                ],
-                applicationIconUrl: [
-                    { required: true, trigger: "blur", validator: validateApplicationIconUrl },
-                ],
-                applicationType: [
-                    { required: true, trigger: "blur", validator: validateApplicationType },
-                ],
-                websiteUrl: [
-                    { required: true, trigger: "blur" },
-                ],
-                description: [
-                    { required: false, trigger: "blur" },
-                ],
-            },
-        }
-    },
-    created() {
-        const that = this;
-        const {userInfo} = this;
-        this.myInterface = JSON.parse(JSON.stringify(userInfo));
-    },
-    methods: {
-    },
-    props: ['updateFlag','userInfo']
-}
-</script>
-<style lang="scss" scoped>
-.createmyInterface {
-    border-radius: 1px;
-    background-color: #09152f;
-
-    main {
-        text-align: left;
-        padding: 0 55px;
-        background-color: #09152f;
-
-        .mainContent {
-            display: flex;
-            justify-content: center;
-            padding-top: 50px;
-
-            .iconBox {
-                display: flex;
-
-                .upload {
-                    display: flex;
-                    align-items: flex-end;
-
-                    img {
-                        width: 120px;
-                        height: 120px;
-                        border-radius: 4px;
-                    }
-                }
-
-                .iconView {
-                    display: flex;
-                    flex-direction: column;
-                    margin-left: 30px;
-                    justify-content: flex-end;
-
-                    img {
-                        width: 70px;
-                        height: 70px;
-                        border-radius: 4px;
-                    }
-                }
-
-                .tip {
-                    display: flex;
-                    align-items: flex-end;
-                    margin-left: 30px;
-                    font-size: 12px;
-
-                    span {
-                        line-height: 20px;
-                    }
-                }
-            }
-            .optionBtn{
-                &::v-deep .el-button{
-                    padding: 12px 40px;
-                }
-                .reset{
-                    border: 1px solid #0079fe;
-                    color: #0079fe;
-                }
-            }
-            &::v-deep .el-form-item__label {
-                color: #4b9bb7;
-            }
-
-            &::v-deep .el-input__inner {
-                background-color: #09152f;
-                border: 1px solid #17324c;
-            }
-
-            .addPerson {
-                display: flex;
-                list-style: none;
-                padding: 0;
-
-                li {
-                    background-color: #cccccc;
-                    width: 36px;
-                    height: 36px;
-                    border-radius: 50%;
-                    color: #fff;
-                    text-align: center;
-                    font-size: 30px;
-                    margin-left: 10px;
-                }
-            }
-
-            .el-form-item__content {
-                width: 400px;
-
-                .el-select {
-                    width: 100%;
-                }
-            }
-
-            .optionHandleSp {
-                display: flex;
-
-                .areaNumber,
-                .moreNumber {
-                    flex: 1;
-                }
-
-                .telNumber {
-                    flex: 2;
-                }
-            }
-
-        }
-    }
-
-    footer {
-        border-top: 1px solid #fff;
-        height: 80px;
-        display: flex;
-        align-items: center;
-        justify-content: flex-end;
-        padding-right: 20px;
-    }
-}
-</style>
\ No newline at end of file
diff --git a/src/views/operate/myWait/createUser/index.vue b/src/views/operate/myWait/createUser/index.vue
new file mode 100644
index 0000000..c53e2d0
--- /dev/null
+++ b/src/views/operate/myWait/createUser/index.vue
@@ -0,0 +1,230 @@
+<template>
+    <div class="createUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" :rules="createThings" label-width="140px" autoComplete="on" :model="things" label-position="right">
+                    <!-- 杩濊浜嬮」缂栧彿 -->
+                    <!-- <el-form-item class="optionItem" label="杩濊浜嬮」缂栧彿:" prop="number">
+                        <el-input v-model="things.number" placeholder="璇峰~鍐欒繚瑙勪簨椤圭紪鍙�"></el-input>
+                    </el-form-item>  -->
+                    <!-- 鏂板鐨勭被鍨嬫垨澶х被鎴栧皬绫� -->
+                    <el-form-item class="optionItem" label="鏂板鍚嶇О:" prop="name">
+                        <el-input v-model="things.name" placeholder="璇疯緭鍏ユ柊澧炲悕绉�"></el-input>
+                    </el-form-item>
+                    <!-- 鎵�灞炵被鍨� -->
+                    <el-form-item class="optionItems" label="鎵�灞炵被鍨�:" prop="typeThird">
+                        <el-select v-model="things.typeThird" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeThirdList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲ぇ绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲ぇ绫�:" prop="typeSecond">
+                        <el-select v-model="things.typeSecond" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in typeSecondList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 璇疯緭鍏ユ柊澧炵瓑绾� -->
+                    <el-form-item class="optionItem" label="妗堜欢绛夌骇:" prop="level">
+                        <el-select v-model="things.level" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" >
+                            <el-option v-for="item in eventLevelList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲皬绫� -->
+                    <!-- <el-form-item class="optionItem" label="鎵�灞炲皬绫�:" prop="typeFirst">
+                        <el-select v-model="things.typeFirst" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeFirstList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item> -->
+                    <!-- 妗堢敱 -->
+                    <el-form-item class="optionItem" label="妗堢敱:" prop="type">
+                        <el-input type="textarea" autosize v-model="things.type" placeholder="璇疯緭鍏ユ鐢辨弿杩板唴瀹�"></el-input>
+                    </el-form-item>
+                    <el-form-item>
+                        <div class="optionBtn">
+                            <el-button type="primary" class="btn submit" @click.native.prevent="handleSubmit">纭
+                            </el-button>
+                        </div>
+                    </el-form-item>
+                </el-form>
+            </div>
+        </main>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        const checkName = (rule,value,callback)=>{
+            if(value){
+                callback();
+            }else{
+                callback(new Error('鏂板杩濊绫诲瀷涓嶈兘涓虹┖'));
+            }
+        }
+        const checkLevel = (rule,value,callback)=>{
+            if(value){
+                callback();
+            }else{
+                callback(new Error('鏂板杩濊绛夌骇涓嶈兘涓虹┖'));
+            }
+        }
+        return {
+            things: {
+                // number: 0,
+                // type: '',
+                name:'',
+                typeFirst: '',
+                typeSecond: '',
+                typeThird: '',
+                level:'',
+            },
+            createThings:{
+                name:[
+                    {
+                        required:true,trigger:'blur',validator:checkName
+                    }
+                ],
+                level:[
+                    {
+                        required:true,trigger:'change',validator:checkLevel
+                    }
+                ]
+            },
+            roleList: [],
+            typeThirdList:[],
+            typeSecondList:[],
+            // typeFirstList:[],
+            eventLevelList:[]
+        }
+    },
+    created() {
+        // 鑾峰彇鎵�灞炵被鍨嬪垪琛�
+        this.getTypeThird();
+        this.getTypeSecond();
+        // this.getTypeFirst();
+        this.getEventLevel();
+    },
+    methods: {
+        // 鏌ヨ鎵�灞炵被鍨�
+        getTypeThird() {
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_first",
+            })
+                .then(res => {
+                    this.typeThirdList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲ぇ绫�
+        getTypeSecond(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_second",
+            })
+                .then(res => {
+                    this.typeSecondList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲皬绫�
+        // getTypeFirst(){
+        //     this.$axios({
+        //         method: 'get',
+        //         url: "sccg/violations/query/type_third",
+        //     })
+        //         .then(res => {
+        //             this.typeFirstList = res.data;
+        //         })
+        // },
+        // 鑾峰彇妗堜欢绛夌骇鍒楄〃
+        getEventLevel() {
+            this.$axios({
+                method: 'get',
+                url: 'sccg/violations/query/event_type'
+            })
+                .then(res => {
+                    console.log(res);
+                    this.eventLevelList = res.data;
+                })
+        },
+        // 鎻愪氦鏂板杩濊绫诲瀷
+        handleSubmit(){
+            console.log(this.things);
+        }
+    },
+    props: ['getUserList']
+}
+</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;
+        font-size: 10px;
+    }
+
+    ::v-deep .el-form-item__label {
+        color: #4b9bb7;
+    }
+
+    ::v-deep .el-input__inner {
+        background-color: #09152f;
+        border: 1px solid #17324c;
+        font-size: 10px;
+    }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/myWait/index.vue b/src/views/operate/myWait/index.vue
index 2271aa5..163a582 100644
--- a/src/views/operate/myWait/index.vue
+++ b/src/views/operate/myWait/index.vue
@@ -1,100 +1,256 @@
 <template>
-    <div class="otherInterface">
+    <div class="userList">
+        <div class="headerTitle">
+            杩愯惀绠$悊銆嬪熀纭�璁剧疆銆嬭繚瑙勪簨椤硅缃�
+        </div>
         <header>
-            <div class="headerTitle">杩愯惀绠$悊 >> 鍩虹璁剧疆 > 鎴戠殑寰呭姙</div>
+            <div class="headerContent">
+                <div class="search">
+                    <span>绛涢�夋潯浠�:</span>
+                    <el-input placeholder="璇疯緭鍏ュ唴瀹�" v-model="context"></el-input>
+                    <div class="findBtn">
+                        <el-button type="primary" @click="getUserList">鏌ヨ</el-button>
+                    </div>
+                </div>
+                <!-- <div class="addUser">
+                    <el-button class="addBtn" type="primary" @click="dialogCreate = true">鏂板杩濊绫诲瀷</el-button>
+                    <el-dialog :visible.sync="dialogCreate" title="鏂板杩濊绫诲瀷" width="45%" v-if="dialogCreate"
+                        :before-close="handleClose">
+                        <createUser :refresh="getUserList" />
+                    </el-dialog>
+                </div> -->
+            </div>
         </header>
         <main>
-            <div class="mainHeader">
-                <span>绛涢�夋潯浠�:</span>
-                <el-input placeholder="璇疯緭鍏ュ唴瀹�"></el-input>
-            </div>
             <div class="mainContent">
-                <!-- @selection-change="handleSelectionChange" -->
-                <!-- 鏁版嵁娓叉煋 -->
-                <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%"
+                <!-- 鏁版嵁灞曠ず -->
+                <el-table ref="multipleTable"
                     :header-cell-style="{background:'#06122c','font-size':'12px',color:'#4b9bb7','font-weight':'650','line-height':'45px'}"
-                    :row-class-name="tableRowClassName">
-                    <el-table-column type="selection" width="55">
+                    :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 label="浜嬩欢缂栧彿" prop="applicationName" min-width="10">
+                    <el-table-column prop="number" label="浜嬩欢缂栧彿" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="applicationType" label="闂灏忕被" min-width="10">
+                    <el-table-column prop="typeThird" label="闂灏忕被" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="websiteUrl" label="闂鎻忚堪" min-width="10">
+                    <el-table-column prop="typeSecond" label="闂鎻忚堪" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="applicationType" label="鍒涘缓鏃堕棿" min-width="10">
+                    <el-table-column prop="typeFirst" label="鍒涘缓鏃堕棿" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="applicationType" label="鍓╀綑鏃堕棿" min-width="10">
+                    <el-table-column prop="type" label="鍓╀綑鏃堕棿" min-width="10">
                     </el-table-column>
-                    <el-table-column prop="applicationType" label="闂鐘舵��" min-width="10">
+                    <el-table-column prop="type" label="闂鐘舵��" min-width="10">
                     </el-table-column>
-                    <!-- <el-table-column label="鎿嶄綔" min-width="10">
+                    <el-table-column  min-width="10">
+                    </el-table-column>
+                    <!-- <el-table-column prop="operation" label="鎿嶄綔" min-width="10">
                         <template slot-scope="scope">
-                            <span @click="handleView(scope.row)">鏌ョ湅</span>
-                            <span class="line">|</span>
-                            <span @click="handleDelete(scope.row)">鍒犻櫎</span>
+                            <div class="operation">
+                                <span @click="handleFind(scope.row)">鏌ョ湅</span>
+                                <span class="line">|</span>
+                                <span @click="handleDelete(scope.row)">鍒犻櫎</span>
+                            </div>
                         </template>
                     </el-table-column> -->
                 </el-table>
-                <!-- 鍒嗛〉 -->
-                <!-- <div class="pagination">
-                    <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
-                        :page-size="pageSize" @current-change="changeCurrentPage" @prev-click="handlePrev"
-                        @next-click="handleNext">
-                    </el-pagination>
-                </div> -->
+                <!-- 鏌ョ湅淇敼椤甸潰 -->
+                <el-dialog :visible.sync="dialogUpdate" width="45%" :title="updateFlag ? '鏉冮檺璁剧疆' :'鏌ョ湅瑙掕壊淇℃伅'"
+                    v-if="dialogUpdate" :before-close="handleClose">
+                    <updateUser :updateFlag="updateFlag" :userInfo=userInfo
+                        :getUserList=" context ? getUserList : getUserList" @changeDialog="changeDialog" />
+                </el-dialog>
+                <!-- tools -->
+                <div class="tools">
+                    <div class="funs">
+                        <div class="funsItem">
+                            <el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-checkbox v-model="unsame" @change="disSame(tableData)">鍙嶉��</el-checkbox>
+                        </div>
+                        <div class="funsItem">
+                            <el-select v-model="myIdx" placeholder="鎵归噺鎿嶄綔" @change="selectChange">
+                                <el-option v-for="item in options" :key="item.value" :label="item.label"
+                                    :value="item.value" :disabled="item.disabled">
+                                </el-option>
+                            </el-select>
+                        </div>
+                    </div>
+                    <div class="pagination">
+                        <el-pagination background :current-page="currentPage" layout="prev, pager, next"
+                            :total="totalNum" :page-size="pageSize" @current-change="changeCurrentPage"
+                            @prev-click="handlePrev" @next-click="handleNext">
+                        </el-pagination>
+                    </div>
+                </div>
             </div>
         </main>
-        <footer>
-            <!-- 鍒涘缓寮圭獥 -->
-            <el-dialog :visible.sync="dialogCreate" title="鏂板绗笁鏂规帴鍙�" width="45%" v-if="dialogCreate"
-                :before-close="handleClose">
-                <createInterface />
-            </el-dialog>
-            <!-- 鏌ョ湅寮圭獥 -->
-            <el-dialog :visible.sync="dialogUpdate" :title="updateFlag ?'淇敼绗笁鏂规帴鍙�':'鏌ョ湅绗笁鏂规帴鍙�'" width="45%"
-                v-if="dialogUpdate" :before-close="handleClose">
-                <viewInterface :updateFlag="updateFlag" :userInfo=userInfo />
-            </el-dialog>
-        </footer>
     </div>
 </template>
 <script>
-import createInterface from './components/createInterface';
-import viewInterface from './components/viewInterface'
+import updateUser from "./updateUser"
+import createUser from "./createUser"
 export default {
     components: {
-        createInterface, viewInterface
+        updateUser,createUser
     },
     data() {
         return {
             tableData: [],
-            search: "",
+            context: "",
             dialogCreate: false,
             dialogUpdate: false,
             updateFlag: false,
             userInfo: '',
-            // totalNum: 200,
-            // pageSize: 10,
-            // currentPage: 1,
+            totalNum: null,
+            pageSize: 10,
+            currentPage: 1,
+            all: false,
+            unsame: false,
+            myIdx: 0,
+            options: [
+                {
+                    value: 0,
+                    label: '鎵归噺鎿嶄綔',
+                    disabled: true,
+                },
+                {
+                    value: 1,
+                    label: '鎵归噺鍚敤',
+                },
+                {
+                    value: 2,
+                    label: '鎵归噺绂佺敤',
+                },
+                {
+                    value: 3,
+                    label: '鎵归噺鍒犻櫎',
+                }
+            ],
+            tempList: []
         }
     },
     created() {
         this.getUserList();
     },
     methods: {
-        // 鑾峰彇鎺ュ彛鍒楄〃
-        getUserList() {
-            const that = this;
-            // const { currentPage, pageSize, search } = this;
-            this.dialogCreate = false;
-            this.$axios.get("sccg/system/portal/thirdApp/search").then(res => {
-                const { code, data } = res;
-                if (code == 200) {
-                    this.tableData = data;
-                }
+        // 鎵归噺鍒犻櫎
+        mulDelete(idArr){
+            console.log(idArr);
+            this.$axios({
+                method:'delete',
+                url:'sccg/violations/batch_delete?ids='+idArr,
+            }).then(res=>{
+                this.getUserList();
+                this.$message({
+                    message:res.message,
+                    type:res.code === 200 ? 'success' : 'warning'
+                })
             })
         },
+        // 鎵ц涓嬫媺妗嗘搷浣�
+        selectChange(val) {
+            let ids = [];
+            this.tempList.forEach(item => {
+                ids.push(item.number);
+            })
+            if (ids.length !== 0) {
+                if (val === 3) {
+                    this.mulDelete(ids);
+                }
+            } else {
+                this.$message({
+                    type: 'warning',
+                    message: '鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁',
+                })
+            }
+        },
+        // 鐩戝惉琛ㄦ牸閫変腑鐘舵��
+        tableChange(list) {
+            this.tempList = list;
+            if (list.length === this.tableData.length) {
+                this.all = true;
+            } else {
+                this.all = false
+            }
+        },
+        // 鍏ㄩ��
+        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) });
+        },
+        // 鑾峰彇鐢ㄦ埛鍒楄〃
+        getUserList() {
+            const { currentPage, pageSize, context } = this;
+            // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
+            this.$axios({
+                method: 'get',
+                url: `sccg/violations/query?current=${currentPage}&size=${pageSize}&keyWord=${context}`,
+            })
+                .then(res => {
+                    this.tableData = res.data.records;
+                    this.totalNum = res.data.total;
+                })
+        },
+        // search() {
+        //     const that = this;
+        //     const { currentPage, pageSize, context } = this;
+        //     // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
+        //     if (context == '') {
+        //         this.$axios.get('sccg/role/list?keyword=' + '&pageNum=' + currentPage + '&pageSize=' + pageSize).then(res => {
+        //             if (res.code === 200) {
+        //                 console.log(res);
+        //                 res.data.list.forEach(item => {
+        //                     // item.createTime = helper(item.createTime);
+        //                     item.status == 1 ? item.status = true : item.status = false;
+        //                 })
+        //                 that.tableData = res.data.list;
+        //                 this.totalNum = res.data.list.length;
+        //             }
+        //         })
+        //     } else {
+        //         this.$axios({
+        //             method: 'get',
+        //             url: 'sccg/role/list?keyword=' + context + '&pageNum=' + currentPage + '&pageSize=' + pageSize,
+        //         }).then(res => {
+        //             if (res.code === 200) {
+        //                 res.data.list.forEach(item => {
+        //                     item.status == 1 ? item.status = true : item.status = false;
+        //                 })
+        //                 that.tableData = res.data.list
+        //                 this.totalNum = res.data.list.length;
+        //             }
+        //         })
+        //     }
+        // },
         // 璁剧疆琛ㄦ牸鏂戦┈绾�
         tableRowClassName({ row, rowIndex }) {
             if ((rowIndex + 1) % 2 == 0) {
@@ -104,149 +260,276 @@
             }
             return '';
         },
-        // 鎵撳紑鏂板鐣岄潰
-        handleAdd() {
-            this.dialogCreate = true;
+        // 鏌ョ湅鐢ㄦ埛淇℃伅(涓嶅彲淇敼)
+        handleFind(rowData) {
+            this.dialogUpdate = true;
+            this.updateFlag = false;
+            this.userInfo = rowData;
         },
-        // 鍒涘缓寮圭獥鍏抽棴
+        // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
+        changeCurrentPage(page) {
+            this.currentPage = page;
+            this.getUserList();
+        },
+        // 涓婁竴椤电偣鍑讳簨浠�
+        handlePrev(page) {
+            this.currentPage = page;
+            this.getUserList();
+        },
+        // 涓嬩竴椤电偣鍑讳簨浠�
+        handleNext(page) {
+            this.currentPage = page;
+            this.getUserList();
+        },
+        changeDialog(val) {
+            this.dialogUpdate = val.dialogUpdate;
+            console.log(val);
+        },
         handleClose(done) {
-            const that = this;
             this.$confirm('纭鍏抽棴锛�')
                 .then(_ => {
-                    that.dialogCreate = false;
+                    this.dialogCreate = false;
+                    this.dialogUpdate = false;
                     done();
                 })
                 .catch(_ => { });
-        },
-        // 鍒涘缓鏌ョ湅寮圭獥
-        handleView(rowData) {
-            this.userInfo = rowData;
-            this.dialogUpdate = true;
-        },
-        // 鍒犻櫎绗笁鏂规帴鍙�
-        handleDelete({ id }) {
-            console.log(id);
-            this.$axios.delete('sccg/system/portal/thirdApp/delete', {
-                params: {
-                    id
-                }
-            }).then(res => {
-                console.log(res);
-            })
         }
-        // // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠�
-        // changeCurrentPage(page) {
-        //     this.currentPage = page;
-        //     this.getUserList();
-        // },
-        // // 涓婁竴椤电偣鍑讳簨浠�
-        // handlePrev(page) {
-        //     this.currentPage = page;
-        //     this.getUserList();
-        // },
-        // // 涓嬩竴椤电偣鍑讳簨浠�
-        // handleNext(page) {
-        //     this.currentPage = page;
-        //     this.getUserList();
-        // },
     }
 }
 </script>
-<!-- sccg/system/portal/thirdApp/search -->
 <style lang="scss" scoped>
-.otherInterface {
+.userList {
+    text-align: left;
+    margin: 10px 20px;
+    color: #4b9bb7;
+
+    .headerTitle {
+        line-height: 40px;
+    }
+
     header {
-        display: flex;
-        line-height: 60px;
-        justify-content: space-between;
-        padding: 0 20px;
-        color: #4b9bb7;
-        &::v-deep .el-button {
-            background-color: #eb5d01;
-            border: none;
-            color: #fff;
-            border-radius: 20px;
+        background-color: #09152f;
+        border: 1pox solid #fff;
+
+        .headerContent {
+            padding: 0 40px;
+            display: flex;
+            line-height: 100px;
+            justify-content: space-between;
+            align-items: center;
+
+            .search {
+                display: flex;
+                justify-content: flex-start;
+
+                span {
+                    flex: 1;
+                }
+
+                .el-input {
+                    flex: 2;
+                    color: #1d3f57;
+
+                    &::v-deep .el-input__inner {
+                        background-color: #09152f;
+                        border: 1px solid #17324c;
+                    }
+                }
+
+            }
+
+            .findBtn {
+                line-height: 100px;
+                margin-left: 15px;
+                display: flex;
+                align-items: center;
+                margin-top: -2px;
+
+                .el-button {
+                    padding: 12px 25px;
+                    border-radius: 20px;
+                }
+            }
+
+            .addBtn {
+                background-color: #eb5d01;
+                border: none;
+                border-radius: 20px;
+                padding: 12px 30px;
+            }
         }
     }
 
     main {
-        padding: 10px 20px;
+        background-color: #09152f;
+        margin-top: 20px;
+        padding-bottom: 50px;
+        border: 1pox solid #fff;
 
-        .mainHeader {
-            padding-left: 20px;
-            display: flex;
+        .mainTitle {
             line-height: 60px;
-            color: #4b9bb7;
-            background-color: #09152f;
-            .el-input {
-                width: 180px;
-                height: 35px;
-                margin-left: 10px;
+        }
 
-                &::v-deep .el-input__inner {
-                    background-color: #09152f;
+        .tools {
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+            padding: 0 20px;
+
+            .funs {
+                display: flex;
+
+                .funsItem {
+                    line-height: 28px;
+                    display: flex;
+                    align-items: center;
                     border: 1px solid #17324c;
+                    border-radius: 4px;
+                    font-size: 12px;
+                    margin-left: 10px;
+
+                    .el-checkbox {
+                        width: 80px;
+                        padding: 0 10px;
+                    }
+
+                    .el-select {
+                        width: 120px;
+                    }
+
+                    &::v-deep .el-input__inner {
+                        border: none;
+                        background-color: #09152f;
+                    }
+
+                    &:hover {
+                        border: 1px solid #4b9bb7;
+                    }
+
+                    &:hover .el-checkbox {
+                        color: #4b9bb7;
+                    }
+                }
+
+            }
+
+            .pagination {
+                margin-top: 50px;
+                display: flex;
+                line-height: 50px;
+                justify-content: center;
+
+                .el-pagination {
+
+                    &::v-deep li,
+                    &::v-deep .btn-prev,
+                    &::v-deep .btn-next {
+                        background-color: #071f39;
+                        color: #4b9bb7;
+                    }
+
+                    &::v-deep .active {
+                        background-color: #409eff;
+                        color: #fff;
+                    }
                 }
             }
         }
 
-        .mainContent {
-            margin-top: 20px;
-            .el-table {
+        .el-table {
+            color: #4b9bb7;
+            font-size: 10px;
+
+            &::v-deep .cell {
+                text-overflow: ellipsis;
+                white-space: nowrap;
+                overflow: hidden;
+            }
+
+            &::v-deep .el-table__empty-block {
+                background-color: #09152f;
+            }
+
+            &::v-deep .el-table__empty-block {
                 color: #4b9bb7;
-
-                &::v-deep .el-table__empty-block {
-                    background-color: #06122c;
-                }
-
-                &::v-deep .el-table__empty-text {
-                    color: #4b9bb7;
-                }
-
-                &::v-deep .warning-row {
-                    background-color: #06122c;
-                }
-
-                &::v-deep .success-row {
-                    background-color: #071f39;
-                }
             }
 
-            .line {
-                padding: 0 5px;
-                // margin-top: -10px;
+            .operation {
+                display: flex;
+
+                .line {
+                    padding: 0 5px;
+                }
+
+                span:hover {
+                    cursor: pointer;
+                }
             }
+        }
+
+        .el-table::v-deep .warning-row {
+            background: #06122c;
+        }
+
+        .el-table::v-deep .success-row {
+            background: #071f39;
+        }
+
+        &::v-deep .switchStyle .el-switch__label {
+            position: absolute;
+            display: none;
+            color: #fff;
+        }
+
+        &::v-deep .el-switch__core {
+            background-color: rgba(166, 166, 166, 1);
+        }
+
+        &::v-deep .switchStyle .el-switch__label--left {
+            z-index: 9;
+            left: 20px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label--right {
+            z-index: 9;
+            left: 4px;
+        }
+
+        &::v-deep .switchStyle .el-switch__label.is-active {
+            display: block;
+        }
+
+        &::v-deep .switchStyle.el-switch .el-switch__core,
+        &::v-deep .el-switch .el-switch__label {
+            width: 50px !important;
         }
     }
 
-    footer {
+    &::v-deep .el-dialog__header,
+    &::v-deep .el-dialog__body {
+        background-color: #06122c;
+    }
 
-        &::v-deep .el-dialog__header,
-        &::v-deep .el-dialog__body {
-            background-color: #06122c;
-        }
+    &::v-deep .el-dialog__header {
+        display: flex;
+        align-items: center;
+        background-color: #fff;
+        padding: 20px;
+        line-height: 60px;
+    }
 
-        &::v-deep .el-dialog__header {
-            display: flex;
-            align-items: center;
-            background-color: #fff;
-            padding: 20px;
-            line-height: 60px;
-        }
+    &::v-deep .el-dialog__title {
+        color: #4b9bb7;
+    }
 
-        &::v-deep .el-dialog__title {
-            color: #4b9bb7;
-        }
+    &::v-deep .el-dialog__close {
+        width: 20px;
+        height: 20px;
+        // color: #fff;
+    }
 
-        &::v-deep .el-dialog__close {
-            width: 20px;
-            height: 20px;
-            // color: #fff;
-        }
-
-        &::v-deep .el-dialog__body {
-            padding: 0;
-        }
+    &::v-deep .el-dialog__body {
+        padding: 0;
     }
 }
 </style>
\ No newline at end of file
diff --git a/src/views/operate/myWait/updateUser/index.vue b/src/views/operate/myWait/updateUser/index.vue
new file mode 100644
index 0000000..5b0cf9a
--- /dev/null
+++ b/src/views/operate/myWait/updateUser/index.vue
@@ -0,0 +1,195 @@
+<template>
+    <div class="updateUser">
+        <main>
+            <div class="mainContent">
+                <el-form ref="user" label-width="140px" autoComplete="on" :model="things" label-position="right">
+                    <!-- 杩濊浜嬮」缂栧彿 -->
+                    <el-form-item class="optionItem" label="杩濊浜嬮」缂栧彿:" prop="number">
+                        <el-input v-model="things.number" placeholder="璇峰~鍐欒繚瑙勪簨椤圭紪鍙�" :disabled="!updateFlag"></el-input>
+                    </el-form-item>
+                    <!-- 鎵�灞炵被鍨� -->
+                    <el-form-item class="optionItems" label="鎵�灞炵被鍨�:" prop="typeThird">
+                        <el-select v-model="things.typeThird" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeThirdList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲ぇ绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲ぇ绫�:" prop="typeSecond">
+                        <el-select v-model="things.typeSecond" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeSecondList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 鎵�灞炲皬绫� -->
+                    <el-form-item class="optionItem" label="鎵�灞炲皬绫�:" prop="typeFirst">
+                        <el-select v-model="things.typeFirst" placeholder="璇烽�夋嫨鎵�灞炵被鍨�" disabled>
+                            <el-option v-for="item in typeFirstList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 妗堢敱 -->
+                    <el-form-item class="optionItem" label="妗堢敱:" prop="type">
+                        <el-input type="textarea" autosize v-model="things.type" placeholder="璇疯緭鍏ユ鐢辨弿杩板唴瀹�"
+                            :disabled="!updateFlag" disabled></el-input>
+                    </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>
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            things: {
+                number: 0,
+                type: '',
+                typeFirst: '',
+                typeSecond: '',
+                typeThird: '',
+            },
+            roleList: [],
+            typeThirdList:[],
+            typeSecondList:[],
+            typeFirstList:[],
+        }
+    },
+    created() {
+        console.log(this.userInfo);
+        this.things = JSON.parse(JSON.stringify(this.userInfo));
+        // 鑾峰彇鎵�灞炵被鍨嬪垪琛�
+        this.getTypeThird();
+        this.getTypeSecond();
+        this.getTypeFirst();
+    },
+    methods: {
+        // handleUser() {
+        //     this.$refs.user.validate((valid) => {
+        //         if (valid) {
+        //             const { role } = this;
+        //             console.log(role);
+        //             this.$axios.post('/sccg/role/update/' + role.id, {
+        //                 id: role.id,
+        //                 status: role.status,
+        //                 description: role.description,
+        //                 name: role.name,
+        //                 sort: 0
+        //             }).then(res => {
+        //                 this.$emit('changeDialog', { dialogUpdate: false });
+        //                 this.getUserList();
+        //             })
+        //         } else {
+        //             return false;
+        //         }
+        //     })
+        // },
+        // 鏌ヨ鎵�灞炵被鍨�
+        getTypeThird() {
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_first",
+            })
+                .then(res => {
+                    this.typeThirdList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲ぇ绫�
+        getTypeSecond(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_second",
+            })
+                .then(res => {
+                    this.typeSecondList = res.data;
+                })
+        },
+        // 鏌ヨ鎵�灞炲皬绫�
+        getTypeFirst(){
+            this.$axios({
+                method: 'get',
+                url: "sccg/violations/query/type_third",
+            })
+                .then(res => {
+                    this.typeFirstList = res.data;
+                })
+        }
+    },
+    props: ['userInfo', 'updateFlag', 'getUserList', 'changeDialog']
+}
+</script>
+<style lang="scss" scoped>
+.updateUser {
+    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/systemSetting/baseSetting/user/components/updateUser/index.vue b/src/views/systemSetting/baseSetting/user/components/updateUser/index.vue
index 26bdb87..f41388a 100644
--- a/src/views/systemSetting/baseSetting/user/components/updateUser/index.vue
+++ b/src/views/systemSetting/baseSetting/user/components/updateUser/index.vue
@@ -10,8 +10,7 @@
                     </el-form-item>
                     <!-- 鐢ㄦ埛瀵嗙爜 -->
                     <el-form-item class="optionItems" label="鐢ㄦ埛瀵嗙爜:" prop="password">
-                        <el-input v-model="user.password" type="password" placeholder="璇疯緭鍏ョ敤鎴峰瘑鐮�"
-                            disabled>
+                        <el-input v-model="user.password" type="password" placeholder="璇疯緭鍏ョ敤鎴峰瘑鐮�" disabled>
                         </el-input>
                     </el-form-item>
                     <!-- 鎵�灞炵敤鎴峰鍚� -->
@@ -19,7 +18,7 @@
                         <el-input v-model="user.true_name" placeholder="璇峰~鍐欑敤鎴峰鍚�"></el-input>
                     </el-form-item> -->
                     <!-- 鎬у埆 -->
-                    <el-form-item class="optionItem" label="鎬у埆:" prop="sex" >
+                    <el-form-item class="optionItem" label="鎬у埆:" prop="sex">
                         <el-radio-group v-model="user.sex" :disabled="!flag.role">
                             <el-radio :label="1">鐢�</el-radio>
                             <el-radio :label="0">濂�</el-radio>
@@ -42,11 +41,16 @@
                     </el-form-item>
                     <!-- 閫夋嫨瑙掕壊 -->
                     <el-form-item class="optionItem" label="閫夋嫨瑙掕壊:" prop="role">
-                        <el-select v-model="user.role" placeholder="璇烽�夋嫨鎵�灞炶鑹�" :disabled="!flag.role">
+                        <el-select v-model="user.role" placeholder="璇烽�夋嫨鎵�灞炶鑹�" multiple collapse-tags @change="handleChangeRole">
+                            <el-option v-for="item in roleList" :key="item.id" :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                        <!-- <el-select v-model="user.role" placeholder="璇烽�夋嫨鎵�灞炶鑹�" :disabled="!flag.role">
                             <el-option v-for="item in roleList" :key="item.id" :label="item.name" :value="item.id"
                                 :disabled="item.disabled">
                             </el-option>
-                        </el-select>
+                        </el-select> -->
                     </el-form-item>
                     <!-- 鐢ㄦ埛绫诲瀷 -->
                     <el-form-item class="optionItem" label="鐢ㄦ埛绫诲瀷:" prop="userType">
@@ -68,7 +72,8 @@
                     </el-form-item> -->
                     <!-- 鎵�灞為儴闂� -->
                     <el-form-item class="optionItem" label="鎵�灞為儴闂�:" prop="departmentId">
-                        <el-select v-model="user.departmentId" placeholder="璇烽�夋嫨鎵�灞為儴闂�" :disabled="!flag.depart" @change="changeDepart">
+                        <el-select v-model="user.departmentId" placeholder="璇烽�夋嫨鎵�灞為儴闂�" :disabled="!flag.depart"
+                            @change="changeDepart">
                             <el-option v-for="item in departList" :key="item.id" :label="item.departName"
                                 :value="item.id">
                             </el-option>
@@ -167,7 +172,7 @@
         //     }
         // };
         const validateType = (rule, value, callback) => {
-            if (!value && value!==0) {
+            if (!value && value !== 0) {
                 callback(new Error("璇烽�夋嫨鐢ㄦ埛绫诲瀷"));
             } else {
                 callback();
@@ -277,19 +282,20 @@
         const that = this;
         this.user = JSON.parse(JSON.stringify(that.userInfo));
         console.log(this.user);
-        // 鑾峰彇瑙掕壊鍒楄〃
+        // 鑾峰彇鎵�鏈夎鑹插垪琛�
         this.getRoleList();
-        // 鑾峰彇鍏ㄩ儴閮ㄩ棬鍒楄〃
+        // 鑾峰彇褰撳墠鐢ㄦ埛瑙掕壊鍒楄〃
+        this.getUserRole(this.user.id)
         // 鑾峰彇鍏ㄩ儴閮ㄩ棬鍒楄〃
         this.$axios.get('sccg/depart/page').then(res => {
             that.departList = res.data.records;
         })
     },
     methods: {
-        changeDepart(data){
+        changeDepart(data) {
             console.log(data);
-            this.departList.forEach(item=>{
-                if(item.id===data){
+            this.departList.forEach(item => {
+                if (item.id === data) {
                     this.user.departName = item.departName;
                 }
             })
@@ -301,13 +307,13 @@
                     const { user } = this;
                     this.$axios({
                         method: 'post',
-                        url: 'sccg/admin/update/' + user.id,
+                        url: 'sccg/admin/role/update?adminId=' + user.id + '&roleIds='+user.role,
                         data: user
                     })
                         .then(res => {
                             this.$message({
-                                type:res.code===200 ? 'success' : 'warning',
-                                message:res.message,
+                                type: res.code === 200 ? 'success' : 'warning',
+                                message: res.message,
                             })
                             this.getUserList();
                             this.$emit('closeDialog', { flag: false });
@@ -326,16 +332,46 @@
                 .then(res => {
                     this.roleList = res.data;
                 })
+        },
+        // 鏀瑰彉鐢ㄦ埛瑙掕壊
+        handleChangeRole(data){
+            console.log(this.user.role);
+            // console.log(data);
+        },
+        // 鑾峰彇鐢ㄦ埛鐨勮鑹插垪琛�
+        getUserRole(id){
+            this.$axios({
+                method:'get',
+                url:`sccg/admin/role/${id}`
+            })
+            .then(res=>{
+                console.log(res);
+                const arr = [];
+                res.data.forEach(item=>{
+                    arr.push(item.id);
+                })
+                this.user.role = arr;
+            })
         }
     },
-    props: ['userInfo', 'updateFlag', 'flag','closeDialog','getUserList']
+    props: ['userInfo', 'updateFlag', 'flag', 'closeDialog', 'getUserList']
 }
 </script>
 <style lang="scss" scoped>
 .updateUser {
     border-radius: 1px;
     background-color: #09152f;
-
+    :deep(.el-tag){
+        background-color: #09152f;
+    }
+    .el-select-dropdown.is-multiple .el-select-dropdown__item.selected{
+        background-color: #09152f;
+        color: #4b9bb7;
+    }
+    // .el-select-dropdown__item :deep(.selected){
+    //     background-color: #09152f;
+    //     color: #4b9bb7;
+    // }
     main {
         text-align: left;
         padding: 0 55px;

--
Gitblit v1.8.0