From dc04c05b22a5323925218092a0687555a2a5c9c1 Mon Sep 17 00:00:00 2001
From: “dzb” <2632970487@qq.com>
Date: 星期四, 29 九月 2022 18:39:31 +0800
Subject: [PATCH] 上报管理界面,案件池的违规、违建登记页面
---
src/views/operate/disposal/casepool/pool/createUser/vio/index.vue | 380 ++++++++
src/views/login/index.vue | 6
src/views/operate/disposal/casepool/escalation/index.vue | 615 +++++++++---
src/views/operate/baseSetting/threepack/createUser/index.vue | 177 +--
src/views/systemSetting/baseSetting/role/updateUser/index.vue | 204 +--
src/views/layout/components/Menu/index.vue | 8
src/views/operate/disposal/casepool/escalation/updateUser/filePictrue/index.vue | 93 ++
src/views/operate/disposal/casepool/pool/index.vue | 32
src/views/operate/disposal/casepool/pool/createUser/ill/index.vue | 304 ++++++
src/views/operate/disposal/casepool/escalation/updateUser/process/index.vue | 144 +++
src/views/operate/disposal/casepool/escalation/createUser/index.vue | 195 ++++
src/views/operate/disposal/casepool/escalation/updateUser/index.vue | 234 +++++
src/views/operate/disposal/casepool/escalation/updateUser/solveProblem/index.vue | 67 +
src/views/operate/disposal/casepool/escalation/updateUser/scene/index.vue | 182 +++
src/App.vue | 24
src/views/operate/disposal/casepool/pool/createUser/index.vue | 18
src/views/systemSetting/baseSetting/role/index.vue | 39
src/views/operate/baseSetting/threepack/index.vue | 22
18 files changed, 2,300 insertions(+), 444 deletions(-)
diff --git a/src/App.vue b/src/App.vue
index f77c534..a666192 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -69,4 +69,28 @@
.el-tree-node:focus>.el-tree-node__content{
background-color: #09152f !important;
}
+/*瀹氫箟婊氬姩鏉¢珮瀹藉強鑳屾櫙
+ 楂樺鍒嗗埆瀵瑰簲妯珫婊氬姩鏉$殑灏哄*/
+ ::-webkit-scrollbar
+{
+ width:4px;
+ height:4px;
+ background-color:#070f22;
+}
+/*瀹氫箟婊氬姩鏉¤建閬�
+ 鍐呴槾褰�+鍦嗚*/
+::-webkit-scrollbar-track
+{
+ -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.3);
+ border-radius:10px;
+ background-color:#070f22;
+}
+/*瀹氫箟婊戝潡
+ 鍐呴槾褰�+鍦嗚*/
+::-webkit-scrollbar-thumb
+{
+ border-radius:10px;
+ -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3);
+ background-color:#555;
+}
</style>
\ 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 7638b0d..57e0180 100644
--- a/src/views/layout/components/Menu/index.vue
+++ b/src/views/layout/components/Menu/index.vue
@@ -84,10 +84,10 @@
<span class="secondSpan">浜嬮」澶勭悊绠$悊</span>
</template>
<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/notDeal">鏆備笉澶勭悊</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/notDeal">鏆備笉澶勭悊</el-menu-item>
</el-submenu>
<el-menu-item index="/home/operate/myWait">鎴戠殑寰呭姙</el-menu-item>
<el-submenu index="/home/operate/rectification" class="secondMenu">
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index bfd8c3e..99a1c36 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -125,6 +125,7 @@
})
.then(function (response) {
if (response.code === 200) {
+ // 璁剧疆toke鏃堕棿
// 淇濆瓨token
console.log(response);
sessionStorage.setItem('token',response.data.token);
@@ -135,7 +136,10 @@
}else{
that.$refs.loginForm.validate((valid)=>{
if(valid){
- that.$message.error(response.data.message);
+ that.$message({
+ type:'warning',
+ message:response.message
+ })
}
})
}
diff --git a/src/views/operate/baseSetting/threepack/createUser/index.vue b/src/views/operate/baseSetting/threepack/createUser/index.vue
index b609337..5bfc530 100644
--- a/src/views/operate/baseSetting/threepack/createUser/index.vue
+++ b/src/views/operate/baseSetting/threepack/createUser/index.vue
@@ -2,41 +2,42 @@
<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 ref="user" label-width="140px" autoComplete="on" :rules="storeRules" :model="storeInfo"
+ label-position="right">
+ <!-- 闂ㄥ簵涓讳汉 -->
+ <el-form-item class="optionItem" label="闂ㄥ簵涓讳汉:" prop="owner">
+ <el-input v-model="storeInfo.owner" 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 class="optionItems" label="韬唤璇佷俊鎭�:" prop="idcardinfo">
+ <el-input placeholder="璇峰~鍐欒韩浠借瘉淇℃伅" v-model="storeInfo.idcardinfo"></el-input>
</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 class="optionItem" label="鑱旂郴鏂瑰紡:" prop="contact">
+ <el-input placeholder="璇峰~鍐欓棬搴楄仈绯绘柟寮�" v-model="storeInfo.contact"></el-input>
</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 class="optionItem" label="闂ㄥ簵鍦板潃:" prop="storeaddr">
+ <el-input placeholder="璇峰~鍐欓棬搴楀湴鍧�" v-model="storeInfo.storeaddr"></el-input>
</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 class="optionItem" label="闂ㄥ簵鐓х墖:" prop="storephoto">
+ <el-upload class="upload-demo" :show-file-list="false"
+ action="http://42.193.1.25:8082/sccg/file/medias" :headers="getToken()" multiple
+ :limit="50">
+ <el-button type="primary" v-if="storeInfo.storephoto === '' ">涓婁紶闂ㄥ簵鍥剧墖</el-button>
+ <img :src="storeInfo.storephoto" alt="" v-else>
+ </el-upload>
</el-form-item>
- <el-form-item v-if="updateFlag">
+ <!-- 闂ㄥ簵鍚嶇О -->
+ <el-form-item class="optionItem" label="闂ㄥ簵鍚嶇О:" prop="storename">
+ <el-input type="textarea" v-model="storeInfo.storename" placeholder="璇疯緭鍏ラ棬搴楀悕绉版弿杩板唴瀹�"></el-input>
+ </el-form-item>
+ <!-- 闂ㄥ簵绉垎 -->
+ <el-form-item class="optionItem" label="闂ㄥ簵绉垎:" prop="storescore">
+ <el-input v-model="storeInfo.storescore" 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>
@@ -51,78 +52,68 @@
<script>
export default {
data() {
+ // 鐢ㄦ埛濮撳悕楠岃瘉瑙勫垯
+ const checkName = (rule,value,callback)=>{
+ console.log(rule,value,callback);
+ if(!value){
+
+ }
+ }
return {
- things: {
- number: 0,
- type: '',
- typeFirst: '',
- typeSecond: '',
- typeThird: '',
+ storeInfo: {
+ contact: '',
+ idcardinfo: '',
+ owner: '',
+ storeaddr: '',
+ storename: '',
+ storephoto: '',
+ storescore: '',
},
- roleList: [],
- typeThirdList:[],
- typeSecondList:[],
- typeFirstList:[],
+ storeRules: {
+ owner: [
+ { required: true, trigger: 'blur', validator: checkName },
+ ]
+ }
}
},
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",
+ handleUser() {
+ this.$refs.user.validate((valid) => {
+ if (valid) {
+ const { storeInfo } = this;
+ console.log(storeInfo);
+ // this.$axios({
+ // method: 'post',
+ // url: 'sccg/store/storeinfo/add',
+ // data: storeInfo
+ // }).then(res => {
+ // console.log(res);
+ // })
+ // this.$axios.post('/sccg/role/update/', {
+ // 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;
+ }
})
- .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;
- })
+ // 鑾峰彇token
+ getToken() {
+ const token = sessionStorage.getItem('token');
+ const tokenHead = sessionStorage.getItem('tokenHead');
+ if (token && tokenHead) {
+ return { Authorization: tokenHead + token };
+ }
}
},
props: ['getUserList']
diff --git a/src/views/operate/baseSetting/threepack/index.vue b/src/views/operate/baseSetting/threepack/index.vue
index e8a0bce..3317bbc 100644
--- a/src/views/operate/baseSetting/threepack/index.vue
+++ b/src/views/operate/baseSetting/threepack/index.vue
@@ -13,11 +13,11 @@
</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"
+ <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> -->
+ </el-dialog>
</div>
</div>
</header>
@@ -30,15 +30,19 @@
@selection-change="tableChange">
<el-table-column type="selection" min-width="5">
</el-table-column>
- <el-table-column prop="number" label="杩濊浜嬮」缂栧彿" min-width="10">
+ <el-table-column prop="id" label="闂ㄥ簵缂栧彿" min-width="10">
</el-table-column>
- <el-table-column prop="typeThird" label="鎵�灞炵被鍨�" min-width="10">
+ <el-table-column prop="storePhoto" label="闂ㄥ簵鐓х墖" min-width="10">
</el-table-column>
- <el-table-column prop="typeSecond" label="鎵�灞炲ぇ绫�" min-width="10">
+ <el-table-column prop="sotreName" label="闂ㄥ簵鍚嶇О" min-width="10">
</el-table-column>
- <el-table-column prop="typeFirst" label="鎵�灞炲皬绫�" min-width="10">
+ <el-table-column prop="owner" label="濮撳悕" min-width="10">
</el-table-column>
- <el-table-column prop="type" label="妗堢敱" min-width="45">
+ <el-table-column prop="storeAddress" label="鍦板潃" min-width="10">
+ </el-table-column>
+ <el-table-column prop="contact" label="鑱旂郴鏂瑰紡" min-width="10">
+ </el-table-column>
+ <el-table-column prop="storeScore" label="闂ㄥ簵绉垎" min-width="10">
</el-table-column>
<el-table-column prop="operation" label="鎿嶄綔" min-width="10">
<template slot-scope="scope">
@@ -209,7 +213,7 @@
// 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
this.$axios({
method: 'get',
- url: `sccg/violations/query?current=${currentPage}&size=${pageSize}&keyWord=${context}`,
+ url: `sccg/store/storeinfo/list?pageNum=${currentPage}&size=${pageSize}&keyword=${context}`,
})
.then(res => {
this.tableData = res.data.records;
diff --git a/src/views/operate/disposal/casepool/escalation/createUser/index.vue b/src/views/operate/disposal/casepool/escalation/createUser/index.vue
new file mode 100644
index 0000000..b609337
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/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/escalation/index.vue b/src/views/operate/disposal/casepool/escalation/index.vue
index 6915f9b..3368162 100644
--- a/src/views/operate/disposal/casepool/escalation/index.vue
+++ b/src/views/operate/disposal/casepool/escalation/index.vue
@@ -1,123 +1,237 @@
<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>
+ <el-input placeholder="璇疯緭鍏ュ唴瀹�" v-model="context"></el-input>
+ <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>
- <!-- 鏁版嵁娓叉煋 -->
- <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">
- <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">
- <!-- <template slot-scope="scope">
- <div class="operation">
- <span @click="handleFind(scope.row)">涓婃姤</span>
- <span class="line">|</span>
- <span @click="handleUpdate(scope.row)">璋冨害</span>
- <span class="line">|</span>
- <span>鍐嶅涔�</span>
- <span class="line">|</span>
- <span>鏆備笉澶勭悊</span>
- </div>
- </template> -->
- </el-table-column>
- </el-table>
+ <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="number" label="浜嬩欢缂栧彿" min-width="10">
+ <template slot-scope="scope">
+ <el-link @click="JumpView(scope.row)">{{scope.row.number}}</el-link>
+ </template>
+ </el-table-column>
+ <el-table-column prop="typeThird" label="浜嬩欢鏉ユ簮" min-width="10">
+ </el-table-column>
+ <el-table-column prop="typeSecond" label="澶х被鍚嶇О" min-width="10">
+ </el-table-column>
+ <el-table-column prop="typeFirst" label="灏忕被鍚嶇О" min-width="10">
+ </el-table-column>
+ <el-table-column prop="type" label="妗堢敱" min-width="10">
+ </el-table-column>
+ <el-table-column prop="type" label="鎶ヨ鐐逛綅" min-width="10">
+ </el-table-column>
+ <el-table-column prop="type" label="鎵�灞炲尯鍩�" min-width="10">
+ </el-table-column>
+ <el-table-column prop="type" label="鎶ヨ鏃堕棿" min-width="10">
+ </el-table-column>
+ <el-table-column prop="type" label="鎸佺画鏃堕棿" min-width="10">
+ </el-table-column>
+ <el-table-column prop="operation" label="鎿嶄綔" min-width="5">
+ </el-table-column>
+ </el-table>
+ <!-- 鏌ョ湅淇敼椤甸潰 -->
+ <el-dialog :visible.sync="dialogUpdate" width="80%" title="鍩虹淇℃伅(浜哄伐)"
+ v-if="dialogUpdate" :before-close="handleClose">
+ <updateUser :info=info />
+ </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"
export default {
components: {
- // checkIn,
+ updateUser
},
data() {
return {
- tagList: [
- // {
- // name: '寰呭鐞�',
- // value: 0,
- // },
- // {
- // name: '宸蹭笂鎶�',
- // value: 0,
- // },
- // {
- // name: '宸茶皟搴�',
- // value: 0,
- // },
- // {
- // name: '鍦ㄥ涔�',
- // value: 0,
- // },
- // {
- // name: '鏆備笉澶勭悊',
- // value: 0,
- // },
+ tableData: [],
+ context: "",
+ dialogUpdate: false,
+ info: {},
+ 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: [],
+ 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,
}
},
+ 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(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;
+ })
+ },
+ // 鏇存敼杩濊/杩濆缓
+ changeTypeChecked(idx) {
+ this.typeList.forEach((item, index) => {
+ if (index === idx) {
+ item.checked = true;
+ } else {
+ item.checked = false;
+ }
+ })
+ },
// 璁剧疆琛ㄦ牸鏂戦┈绾�
tableRowClassName({ row, rowIndex }) {
if ((rowIndex + 1) % 2 == 0) {
@@ -127,141 +241,284 @@
}
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;
- done();
- })
- .catch(_ => {});
- }
+ this.$confirm('纭鍏抽棴锛�')
+ .then(_ => {
+ this.dialogUpdate = false;
+ done();
+ })
+ .catch(_ => { });
+ },
+ JumpView(data){
+ this.info = data;
+ this.dialogUpdate = true;
+ console.log(data);
+ }
}
}
</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;
+
+ span {
+ flex: 1;
+ }
+
+ .el-input {
+ flex: 2;
+ color: #1d3f57;
+
+ &::v-deep .el-input__inner {
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+ }
+
}
- .el-input {
- flex: 5;
+ .findBtn {
+ line-height: 100px;
+ margin-left: 15px;
+ display: flex;
+ align-items: center;
+ margin-top: -2px;
- &::v-deep .el-input__inner {
- background-color: #09152f;
- border: 1px solid #17324c;
+ .el-button {
+ padding: 12px 25px;
+ border-radius: 20px;
}
}
- }
- .add {
- .el-button {
+ .addBtn {
background-color: #eb5d01;
border: none;
border-radius: 20px;
+ padding: 12px 30px;
}
}
}
main {
- .mainContent {
- .nav {
- &::v-deep .el-tabs--border-card {
- border: none;
- }
+ background-color: #09152f;
+ margin-top: 20px;
+ padding-bottom: 50px;
+ border: 1pox solid #fff;
- &::v-deep .el-tabs--border-card>.el-tabs__content {
- background-color: #09152f;
- }
+ .type-nav {
+ display: flex;
+ line-height: 40px;
+ margin-left: 30px;
+ padding-top: 10px;
+ margin-bottom: 10px;
- &::v-deep .el-tabs__nav-scroll {
- background-color: #09152f;
- }
+ .type-item {
+ width: 80px;
+ text-align: center;
- &::v-deep .el-tabs__header {
- line-height: 60px;
+ &:hover {
+ cursor: pointer;
}
+ }
- &::v-deep .el-tabs--border-card>.el-tabs__header .el-tabs__item {
- color: #fff;
- }
+ .is-active {
+ background-color: #070f22;
+ border-radius: 4px;
+ color: #fff;
+ }
+ }
- &::v-deep .el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active {
- color: #4b9bb7;
- background-color: #071f39;
- border: none;
- }
+ .tools {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 0 20px;
- .el-table {
+ .funs {
+ display: flex;
+
+ .funsItem {
+ line-height: 28px;
+ display: flex;
+ align-items: center;
+ border: 1px solid #17324c;
+ border-radius: 4px;
font-size: 12px;
- color: #4b9bb7;
+ margin-left: 10px;
- .line {
- padding: 0 5px;
+ .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;
}
}
- &::v-deep .el-table__empty-block {
- background-color: #09152f;
- color: #4b9bb7;
- }
+ }
- .el-table::v-deep .warning-row {
- background: #06122c;
- }
+ .pagination {
+ margin-top: 50px;
+ display: flex;
+ line-height: 50px;
+ justify-content: center;
- .el-table::v-deep .success-row {
- background: #071f39;
+ .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;
+ }
}
- 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/disposal/casepool/escalation/updateUser/filePictrue/index.vue b/src/views/operate/disposal/casepool/escalation/updateUser/filePictrue/index.vue
new file mode 100644
index 0000000..7690f8b
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/updateUser/filePictrue/index.vue
@@ -0,0 +1,93 @@
+<template>
+ <div class="file-picture">
+ <div class="file-tell">
+ <div class="tell-title">涓婃姤</div>
+ <div class="tell-show">
+ <el-upload class="upload-demo" :show-file-list="false" action="http://42.193.1.25:8082/sccg/file/medias"
+ :headers="getToken()" multiple :limit="50">
+ <div class="my-demo">
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__ef98ada722c616eccb097d1352880862.svg"
+ alt="">
+ <div class="tip">
+ <div>銆愬浘鐗囩被鍨嬨�戜笂鎶�</div>
+ <div>銆愪笂鎶ユ椂闂淬��2022-09-08 14:23:34</div>
+ </div>
+ </div>
+ </el-upload>
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__ef98ada722c616eccb097d1352880862.svg"
+ alt="">
+ </div>
+ </div>
+ <div class="file-deal">
+ <div class="tell-title">澶勭疆</div>
+ <div class="tell-show">
+ <el-upload class="upload-demo" :show-file-list="false" action="http://42.193.1.25:8082/sccg/file/medias"
+ :headers="getToken()" multiple :limit="50">
+ <div class="my-demo">
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__ef98ada722c616eccb097d1352880862.svg"
+ alt="">
+ <div class="tip">
+ <div>銆愬浘鐗囩被鍨嬨�戝缃�</div>
+ <div>銆愪笂鎶ユ椂闂淬��2022-09-08 14:23:34</div>
+ </div>
+ </div>
+ </el-upload>
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__ef98ada722c616eccb097d1352880862.svg"
+ alt="">
+ </div>
+ </div>
+ </div>
+</template>
+<script>
+export default {
+ data() {
+ return {
+
+ }
+ },
+ methods: {
+ // 鑾峰彇token
+ getToken() {
+ const token = sessionStorage.getItem('token');
+ const tokenHead = sessionStorage.getItem('tokenHead');
+ if (token && tokenHead) {
+ return { Authorization: tokenHead + token };
+ }
+ }
+ }
+}
+</script>
+<style lang="scss" scoped>
+.file-picture {
+ padding-top: 50px;
+
+ .file-tell,.file-deal {
+ .tell-title {
+ line-height: 40px;
+ }
+
+ .tell-show {
+ display: flex;
+
+ .upload-demo {
+ height: 159px;
+
+ .my-demo {
+ position: relative;
+ height: 100%;
+ }
+
+ .tip {
+ div {
+ line-height: 20px;
+ }
+
+ text-align: left;
+ position: absolute;
+ bottom: 80px;
+ }
+ }
+ }
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/escalation/updateUser/index.vue b/src/views/operate/disposal/casepool/escalation/updateUser/index.vue
new file mode 100644
index 0000000..47a6bad
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/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/escalation/updateUser/process/index.vue b/src/views/operate/disposal/casepool/escalation/updateUser/process/index.vue
new file mode 100644
index 0000000..8221ccc
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/updateUser/process/index.vue
@@ -0,0 +1,144 @@
+<template>
+ <div class="my-process">
+ <div class="my-pro-header">
+ <div class="pro-step" v-for="(item,index) in list" :key="item.title">
+ <div class="pro-step-top">
+ <div
+ :class="['circle',active === item.index ? 'in-process' : active > item.index ? 'finish' : 'wait' ]">
+ </div>
+ <div :class="['line',active > item.index ? 'finish-line' :'']"
+ v-if="index<list.length-1 ? true:false"></div>
+ </div>
+ <div
+ :class="['pro-step-name',active === item.index ? 'in-process' : active > item.index ? 'finish' : 'wait' ]">
+ {{item.title}}</div>
+ </div>
+ </div>
+ <div class="my-pro-main">
+ <div class="pro-step-ver" v-for="(item,index) in list" :key="item.title">
+ <div
+ :class="['pro-step-name',active === item.index ? 'in-process' : active > item.index ? 'finish' : 'wait' ]">
+ {{item.title}}</div>
+ <div class="pro-step-top">
+ <div
+ :class="['circle',active === item.index ? 'in-process' : active > item.index ? 'finish' : 'wait' ]">
+ </div>
+ <div :class="['line',active > item.index ? 'finish-line' :'']"
+ v-if="index<list.length-1 ? true:false"></div>
+ </div>
+ <div class="desc">
+ <div class="desc-title">鐜妭鐢ㄦ椂:</div>
+ <div class="desc-content" v-if="active > index+1">
+ <div class="desc-content-message">1111111</div>
+ <div class="desc-content-endtime">22.09.06 16:40</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
+<script>
+export default {
+ data() {
+ return {
+ active: 2,
+ list: [
+ {
+ title: '涓婃姤',
+ status: 'success',
+ },
+ {
+ title: '绔嬫',
+ status: 'process',
+ },
+ {
+ title: '娲鹃仯',
+ status: 'process',
+ },
+ {
+ title: '澶勭疆',
+ status: 'process',
+ },
+ {
+ title: '鏍告煡',
+ status: 'process',
+ },
+ {
+ title: '缁撴',
+ status: 'process',
+ }
+ ]
+ }
+ }
+}
+</script>
+<style lang="scss" scoped>
+.my-process {
+ padding-top: 50px;
+ .my-pro-header {
+ display: flex;
+
+ .pro-step {
+ flex: 1;
+
+ .pro-step-top {
+ display: flex;
+ align-items: center;
+
+ .line {
+ flex: 1;
+ height: 2px;
+ }
+ }
+
+ .pro-step-name {
+ line-height: 20px;
+ }
+ }
+ }
+
+ .my-pro-main {
+ .pro-step-ver {
+ display: flex;
+ align-items: flex-start;
+ .line {
+ width: 2px;
+ height: 100px;
+ }
+ }
+ .pro-step-top{
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ }
+ .pro-step-name {
+ line-height: 24px;
+ margin-right: 10px;
+ }
+ .desc{
+ flex: 1;
+ line-height: 24px;
+ margin-left: 10px;
+ .desc-content-endtime{
+ display: flex;
+ justify-content: flex-end;
+ }
+ }
+ }
+
+ .circle {
+ width: 24px;
+ height: 24px;
+ border-radius: 50%;
+ background-color: #fff;
+ }
+
+ .line {
+ background-color: #c0c4cc;
+ }
+
+ .finish-line {
+ background-color: #4b9bb7;
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/escalation/updateUser/scene/index.vue b/src/views/operate/disposal/casepool/escalation/updateUser/scene/index.vue
new file mode 100644
index 0000000..d77a8b6
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/updateUser/scene/index.vue
@@ -0,0 +1,182 @@
+<template>
+ <div class="scene">
+ <div class="nav">
+ <div class="nav-item" v-for="o in list" :key="o.index" @click="changeActive(o.index)">
+ <div class="outer" >
+ <div :class="['inner',active === o.index ? 'inner-active' : '']"></div>
+ </div>
+ <div class="innet-title">{{o.label}}</div>
+ </div>
+ </div>
+ <div class="scene-item" v-if="active === 1">
+ <el-form label-position="right" label-width="120px" :model="sceneObj">
+ <el-form-item label="鍒拌揪鏃堕棿:">
+ <el-input v-model="sceneObj.name"></el-input>
+ </el-form-item>
+ <el-form-item label="鍒拌揪鍦板潃:">
+ <el-input v-model="sceneObj.region"></el-input>
+ </el-form-item>
+ <el-form-item label="鐜板満鎯呭喌璇存槑:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="淇¤鍥炲璇存槑:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鐜板満鎯呭喌鐓х墖:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="scene-item" v-if="active === 2">
+ <el-form label-position="right" label-width="120px" :model="sceneObj">
+ <el-form-item label="鎵垮姙闃熷憳:">
+ <el-input v-model="sceneObj.name"></el-input>
+ </el-form-item>
+ <el-form-item label="鍗忓姙闃熷憳:">
+ <el-input v-model="sceneObj.region"></el-input>
+ </el-form-item>
+ <el-form-item label="鏃堕棿:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鍦板潃:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="妗堢敱:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="褰撲簨浜轰俊鎭�:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鎯呭喌鎻忚堪:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鐓х墖闄勪欢:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="绫诲瀷:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="褰撲簨浜哄鍚�:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鎵嬫満鍙风爜:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="璇佷欢绫诲瀷:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="璇佷欢鍙风爜:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鏂囧寲绋嬪害:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鑱屼笟:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="宸ヤ綔鍗曚綅鍙婅亴鍔�:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鍚嶆棌:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="绫嶈疮:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鐜颁綇鍧�:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ <el-form-item label="鎴风睄鎵�鍦ㄥ湴:">
+ <el-input v-model="sceneObj.type"></el-input>
+ </el-form-item>
+ </el-form>
+ <el-button>杩斿洖</el-button>
+ </div>
+ <div class="scene-item" v-if="active === 3">
+ <el-form label-position="right" label-width="120px" :model="sceneObj">
+ <el-form-item label="绫诲瀷:">
+ <el-input v-model="sceneObj.name"></el-input>
+ </el-form-item>
+ </el-form>
+ </div>
+ </div>
+</template>
+<script>
+export default {
+ data() {
+ return {
+ active: 1,
+ list: [
+ {
+ index: 1,
+ label: '鍒拌揪鐜板満鎯呭喌'
+ },
+ {
+ index: 2,
+ label: '璋冩煡鍙栬瘉'
+ },
+ {
+ index: 3,
+ label: '鍛婄煡杩濇硶'
+ }
+ ],
+ sceneObj: {},
+
+ }
+ },
+ methods: {
+ changeActive(idx) {
+ this.active = idx;
+ }
+ }
+}
+</script>
+<style lang="scss" scoped>
+.scene {
+ .nav {
+ padding: 20px 100px;
+ display: flex;
+ justify-content: space-between;
+ .nav-item{
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ }
+ .outer {
+ width: 50px;
+ height: 50px;
+ border-radius: 50%;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ background-color: #0101ff;
+ }
+
+ .inner {
+ background-color: #0101ff;
+ border-radius: 50%;
+ width: 30px;
+ height: 30px;
+ }
+
+ .innet-title {
+ line-height: 20px;
+ padding-top: 20px;
+ }
+
+ .inner-active {
+ background-color: #fff;
+ }
+ }
+
+ .scene-item {
+ padding: 20px 100px;
+
+ ::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/escalation/updateUser/solveProblem/index.vue b/src/views/operate/disposal/casepool/escalation/updateUser/solveProblem/index.vue
new file mode 100644
index 0000000..3480c30
--- /dev/null
+++ b/src/views/operate/disposal/casepool/escalation/updateUser/solveProblem/index.vue
@@ -0,0 +1,67 @@
+<template>
+ <div class="sovle-problem">
+ <div class="sovle-header">
+ <div class="sovle-limit">澶勭悊鏃堕檺:1宸ヤ綔鏃�</div>
+ <div class="sovle-limit">鍓╀綑鏃堕棿:23灏忔椂</div>
+ </div>
+ <div class="sovle-timeline">
+ <el-timeline>
+ <el-timeline-item :color="mycolor">
+ <div class="title">
+ <div class="title-left">銆愭淳閬c�戞淳閬e憳:xxx</div>
+ <div class="title-right">22.09.06 16:40</div>
+ </div>
+ <div class="message">銆愭淳閬f剰瑙併�戣鐩稿叧鎵ф硶闃熷憳鍙婃椂鍓嶅線鐜板満杩涜澶勭疆</div>
+ </el-timeline-item>
+ <el-timeline-item :color="mycolor">
+ <div class="title">
+ <div class="title-left">銆愬鐞嗐�戝鐞嗕汉:xxx</div>
+ <div class="title-right">22.09.06 16:40</div>
+ </div>
+ <div class="message">銆愬鐞嗙粨鏋溿�戣鐩稿叧鎵ф硶闃熷憳鍙婃椂鍓嶅線鐜板満杩涜澶勭疆</div>
+ </el-timeline-item>
+ <el-timeline-item :color="mycolor">
+ <div class="title">
+ <div class="title-left">銆愯瘎瀹氥�戣瘎瀹氫汉:xxx</div>
+ <div class="title-right">22.09.06 16:40</div>
+ </div>
+ <div class="message">銆愯瘎瀹氱粨鏋溿�戣鐩稿叧鎵ф硶闃熷憳鍙婃椂鍓嶅線鐜板満杩涜澶勭疆</div>
+ </el-timeline-item>
+ </el-timeline>
+ </div>
+ </div>
+</template>
+<script>
+ export default{
+ data(){
+ return{
+ mycolor:'#02a7f0'
+ }
+ }
+ }
+</script>
+<style lang="scss" scoped>
+ .sovle-problem{
+ .sovle-header{
+ padding: 0 200px;
+ display: flex;
+ line-height: 60px;
+ justify-content: space-between;
+ }
+ .title{
+ display: flex;
+ justify-content: space-between;
+ line-height: 40px;
+ padding: 0 20px;
+ color: #4b9bb7;
+ font-size: 16px;
+ }
+ .message{
+ padding: 20px;
+ background-color: #070f22;
+ color: #4b9bb7;
+ line-height: 20px;
+ font-size: 10px;
+ }
+ }
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue b/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue
index e894c43..848d2bf 100644
--- a/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue
+++ b/src/views/operate/disposal/casepool/pool/createUser/ill/index.vue
@@ -1,3 +1,303 @@
<template>
- <div>2</div>
-</template>
\ No newline at end of file
+ <div class="ill">
+ <div class="input-area">
+ <div class="input-header">
+ <div class="input-header__title">鍩虹淇℃伅</div>
+ <div class="input-header__tip">濉啓浜嬩欢鍩虹淇℃伅</div>
+ </div>
+ <div class="input-form">
+ <el-form ref="user" label-width="160px" autoComplete="on" :model="role" :rules="createRoleRules"
+ label-position="right">
+ <!-- 闂绫诲瀷 -->
+ <el-form-item class="optionItem" label="闂绫诲瀷:" prop="name">
+ <el-select v-model="role.type" placeholder="杩濆缓">
+ <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 杩濆缓绫诲埆 -->
+ <el-form-item class="optionItems" label="杩濆缓绫诲埆:" prop="status">
+ <el-select v-model="role.big" placeholder="璇烽�夋嫨杩濆缓绫诲埆" size="small">
+ <el-option v-for="item in bigKindList" :key="item.id" :label="item.name" :value="item.id"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 褰撲簨浜哄鍚� -->
+ <el-form-item class="optionItems" label="褰撲簨浜哄鍚�:" prop="status">
+ <el-input placeholder="璇峰~鍐欏綋浜嬩汉濮撳悕"></el-input>
+ </el-form-item>
+ <!-- 褰撲簨浜鸿韩浠借瘉鍙� -->
+ <el-form-item class="optionItems" label="褰撲簨浜鸿韩浠借瘉鍙�:" prop="status">
+ <el-input placeholder="璇峰~鍐欏綋浜嬩汉韬唤璇佸彿"></el-input>
+ </el-form-item>
+ <!-- 褰撲簨浜鸿仈绯荤數璇� -->
+ <el-form-item class="optionItem" label="褰撲簨浜鸿仈绯荤數璇�:" prop="description">
+ <el-input v-model="role.description" placeholder="璇峰~鍐欏綋浜嬩汉鑱旂郴鐢佃瘽"></el-input>
+ </el-form-item>
+ <!-- 杩濆缓鍦扮偣 -->
+ <el-form-item class="optionItems" label="杩濆缓鍦扮偣:" prop="status">
+ <el-input placeholder="璇峰~鍐欒繚寤哄湴鐐�"></el-input>
+ </el-form-item>
+ <!-- 鎵�灞炵ぞ鍖� -->
+ <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="status">
+ <el-select v-model="role.type" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�">
+ <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 韬唤璇佹鍙嶉潰鐓х墖 -->
+ <el-form-item class="optionItems" label="韬唤璇佹鍙嶉潰鐓х墖:" prop="status">
+ <template>
+ <div class="idcard">
+ <el-upload class="upload-demo"
+ :show-file-list = "false"
+ action="http://42.193.1.25:8082/sccg/file/medias"
+ :headers="getToken()" multiple :limit="50">
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg"
+ alt="">
+ <span class="text">韬唤璇佹闈�</span>
+ </el-upload>
+ <el-upload class="upload-demo"
+ :show-file-list = "false"
+ action="http://42.193.1.25:8082/sccg/file/medias"
+ :headers="getToken()" multiple :limit="50">
+ <img src="https://axure-file.lanhuapp.com/90466432-c999-4bf0-80b8-ee3f96a2099e__15f765432d579a14b8f6591c100d30e3.svg"
+ alt="">
+ <span class="text">韬唤璇佸弽闈�</span>
+ </el-upload>
+ </div>
+ </template>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="not-need">
+ <div class="not-need__header">
+ 鎵ф硶杩濆缓鎯呭喌
+ </div>
+ <div class="not-need-item">
+ <label>杩濆缓鍏蜂綋浣嶇疆:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ <div class="not-need-item">
+ <label>杩濇硶寤鸿闀裤�佸銆侀珮:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ <div class="not-need-item">
+ <label>杩濇硶寤鸿闈㈢Н:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ <div class="not-need-item">
+ <label>杩濇硶寤虹瓚鏉愭枡:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ </div>
+ <div class="input-footer">
+ <el-button type="primary" class="confirm">纭畾</el-button>
+ <el-button class="back">杩斿洖</el-button>
+ </div>
+ </div>
+ <div class="map-area">
+ <!-- <MyMap /> -->
+ </div>
+ </div>
+</template>
+<script>
+import MyMap from '@/components/map'
+export default {
+ components: {
+ MyMap
+ },
+ data() {
+ const validateNickname = (rule, value, callback) => {
+ if (!value) {
+ callback(new Error("璇峰~鍐欓棶棰樼被鍨�"));
+ } else {
+ callback();
+ }
+ };
+ const validatePass = (rule, value, callback) => {
+ if (!value) {
+ callback();
+ } else {
+ // const rep = /^\w+$/;
+ // if (!rep.test(value)) {
+ // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆"));
+ // }
+ callback();
+ }
+ };
+ const validateTruename = (rule, value, callback) => {
+ if (value) {
+ callback();
+ } else {
+ // const rep = /^[\u4E00-\u9FA5]{2,4}$/;
+ // if (!rep.test(value)) {
+ // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕");
+ // }
+ callback();
+ }
+ };
+ return {
+ role: {
+ name: '',
+ type: '',
+ description: '',
+ },
+ createRoleRules: {
+ name: [
+ { required: true, trigger: "blur", validator: validateNickname },
+ ],
+ type: [
+ { required: false, trigger: "blur", validator: validatePass },
+ ],
+ description: [
+ { required: false, trigger: "blur", validator: validateTruename },
+ ],
+ },
+ bigKindList: [],
+ typeList: [],
+ }
+ },
+ created() {
+ const { getBigKind, getEventLevel, getSmallKind } = this;
+ getBigKind();
+ },
+ methods: {
+ handleUser() {
+ this.$refs['user'].validate((valid) => {
+ console.log(valid);
+ if (valid) {
+ const { role } = this;
+ console.log(role);
+ this.$axios.post('sccg/role/create', {
+ description: role.description, name: role.name, type: role.type
+ }).then(res => {
+ if (res.code === 200) {
+ this.refresh();
+ }
+ })
+ } else {
+ return false;
+ }
+ })
+ },
+ handleStop() {
+ this.refresh();
+ },
+ // 鑾峰彇澶х被鍒楄〃
+ getBigKind() {
+ this.$axios({
+ method: 'get',
+ url: 'sccg/illegal_building/query/type_second'
+ }).then(res => {
+ this.bigKindList = res.data;
+ // console.log(res);
+ })
+ },
+ // 鑾峰彇琛屾斂鍖哄煙
+ // 鑾峰彇token
+ getToken() {
+ const token = sessionStorage.getItem('token');
+ const tokenHead = sessionStorage.getItem('tokenHead');
+ if (token && tokenHead) {
+ return { Authorization: tokenHead + token };
+ }
+ }
+ }
+}
+</script>
+<style lang="scss" scoped>
+.ill {
+ display: flex;
+
+ .input-area {
+ flex: 1;
+ padding: 10px 20px;
+
+ .input-header {
+ color: #4b9bb7;
+
+ .input-header__title {
+ line-height: 60px;
+ font-weight: 650;
+ font-size: 20px;
+ }
+
+ .input-header__tip {
+ line-height: 40px;
+ }
+ }
+
+ .input-form {
+
+ &::v-deep .el-input__inner {
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+
+ &::v-deep .el-textarea__inner {
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+ .upload-demo{
+ position: relative;
+ .text{
+ position: absolute;
+ top: 22%;
+ left: 20%;
+ }
+ }
+ .idcard {
+ display: flex;
+ }
+
+ .idCardZ {
+ width: 200px;
+ height: 200px;
+ }
+ }
+
+ .input-footer {
+ display: flex;
+ justify-content: center;
+ }
+ }
+
+ .map-area {
+ flex: 1;
+ }
+
+ .not-need {
+ .not-need__header {
+ line-height: 40px;
+ }
+
+ .not-need-item {
+ line-height: 40px;
+ margin-bottom: 22px;
+ display: flex;
+
+ label {
+ width: 160px;
+ padding-right: 12px;
+ text-align: right;
+ }
+
+ .not-need__inner {
+ flex: 1;
+ line-height: 40px;
+ padding: 0 15px;
+ border-radius: 4px;
+ color: #fff;
+ // outline: #409eff solid 1px;
+ outline: none;
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+ }
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/pool/createUser/index.vue b/src/views/operate/disposal/casepool/pool/createUser/index.vue
index f812cab..5fbe248 100644
--- a/src/views/operate/disposal/casepool/pool/createUser/index.vue
+++ b/src/views/operate/disposal/casepool/pool/createUser/index.vue
@@ -1,26 +1,15 @@
<template>
<div class="createUser">
- <div class="chooseArea" v-if="flag">
+ <div class="chooseArea">
<el-button type="primary" @click="toShow(0,'杩濊')">杩濊鐧昏</el-button>
<el-button type="primary" @click="toShow(1,'杩濆缓')">杩濆缓鐧昏</el-button>
- </div>
- <div class="inputArea" v-else>
- <MyIll v-if="index===0" />
- <MyVio v-else />
</div>
</div>
</template>
<script>
-import MyVio from './vio';
-import MyIll from './ill';
export default {
- components: {
- MyIll, MyVio
- },
data() {
return {
- flag: true,
- index: 0,//0:杩濊,1:杩濆缓
}
},
created() {
@@ -30,13 +19,12 @@
toShow(idx, lab) {
this.$confirm('鎮ㄧ‘瀹氳鍘讳笂鎶�' + lab + '浜嬩欢')
.then(_ => {
- console.log(1);
- this.index = idx;
- this.flag = false;
+ this.$emit('getPageProp',{flag:false,type:idx});
})
.catch(_ => { console.log('err') });
}
},
+ props:['getPageProp']
}
</script>
<style lang="scss" scoped>
diff --git a/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue b/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue
index d0ef7c6..8f60473 100644
--- a/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue
+++ b/src/views/operate/disposal/casepool/pool/createUser/vio/index.vue
@@ -1,3 +1,379 @@
<template>
- <div>1</div>
-</template>
\ No newline at end of file
+ <div class="vio">
+ <div class="input-area">
+ <div class="input-header">
+ <div class="input-header__title">鍩虹淇℃伅</div>
+ <div class="input-header__tip">濉啓浜嬩欢鍩虹淇℃伅</div>
+ </div>
+ <div class="input-form">
+ <el-form ref="user" label-width="100px" autoComplete="on" :model="vio" :rules="createRoleRules"
+ label-position="right">
+ <!-- 闂绫诲瀷 -->
+ <el-form-item class="optionItem" label="闂绫诲瀷:" prop="category">
+ <el-select v-model="vio.category" placeholder="杩濊" disabled>
+ <el-option v-for="item in typeList" :key="item.label" :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 澶х被鍚嶇О -->
+ <el-form-item class="optionItems" label="澶х被鍚嶇О:" prop="categoryId">
+ <el-select v-model="vio.categoryId" placeholder="璇烽�夋嫨澶х被鍚嶇О">
+ <el-option v-for="item in bigKindList" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 灏忕被鍚嶇О -->
+ <el-form-item class="optionItems" label="灏忕被鍚嶇О:" prop="typeId">
+ <el-select v-model="vio.typeId" placeholder="璇烽�夋嫨灏忕被鍚嶇О">
+ <el-option v-for="item in smallKindList" :key="item.id" :label="item.name" :value="item.id"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 浜嬩欢绛夌骇 -->
+ <el-form-item class="optionItems" label="浜嬩欢绛夌骇:" prop="status">
+ <el-select v-model="vio.level" placeholder="璇烽�夋嫨妗堜欢绛夌骇">
+ <el-option v-for="item in eventLevelList" :key="item.id" :label="item.name" :value="item.id"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- 妗堢敱 -->
+ <el-form-item class="optionItem" label="妗堢敱:" prop="actionCause">
+ <el-input v-model="vio.actionCause" placeholder="璇疯緭鍏ユ鐢�"></el-input>
+ </el-form-item>
+ <!-- 鎵�灞炲尯鍘� -->
+ <!-- <el-form-item class="optionItems" label="鎵�灞炲尯鍘�:" prop="status">
+ <el-select v-model="vio.type" placeholder="璇烽�夋嫨鎵�灞炲尯鍘�">
+ <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item> -->
+ <!-- 鎵�灞炵ぞ鍖� -->
+ <!-- <el-form-item class="optionItems" label="鎵�灞炵ぞ鍖�:" prop="status">
+ <el-select v-model="vio.type" placeholder="璇烽�夋嫨鎵�灞炵ぞ鍖�">
+ <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item> -->
+ <!-- 鎵�灞炶閬� -->
+ <!-- <el-form-item class="optionItems" label="鎵�灞炶閬�:" prop="status">
+ <el-select v-model="vio.type" placeholder="璇烽�夋嫨鎵�灞炶閬�">
+ <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
+ :disabled="item.disabled">
+ </el-option>
+ </el-select>
+ </el-form-item> -->
+ <!-- 浜嬪彂鍦扮偣 -->
+ <el-form-item class="optionItems" label="浜嬪彂鍦扮偣:" prop="site">
+ <el-input placeholder="璇疯緭鍏ヤ簨鍙戝湴璇︾粏浣嶇疆" v-model="vio.site"></el-input>
+ </el-form-item>
+ <!-- 鏄惁鍏宠仈鍟嗛摵 -->
+ <el-form-item class="optionItems" label="鏄惁鍏宠仈鍟嗛摵:" prop="linkShop">
+ <el-radio-group v-model="vio.linkShop">
+ <el-radio :label="1">鏄�</el-radio>
+ <el-radio :label="0">鍚�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <!-- 鍏宠仈鍟嗛摵鍚嶇О -->
+ <el-form-item class="optionItems" label="鍏宠仈鍟嗛摵鍚嶇О:" prop="shopName">
+ <el-input placeholder="璇峰~鍐欏叧鑱斿晢閾哄悕绉�" v-model="vio.shopName" :disabled="vio.linkShop === 1 ?false : true"></el-input>
+ </el-form-item>
+ <!-- 濉啓杞︾墝鍙� -->
+ <el-form-item class="optionItems" label="濉啓杞︾墝鍙�:" prop="carNumber">
+ <el-input placeholder="璇峰~鍐欒溅鐗屽彿" v-model="vio.carNumber"></el-input>
+ </el-form-item>
+ <!-- 闂鎻忚堪 -->
+ <el-form-item class="optionItems" label="闂鎻忚堪:" prop="description">
+ <el-input type="textarea" placeholder="璇疯緭鍏ュ唴瀹�200瀛椾互鍐�" v-model="vio.description"></el-input>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="not-need">
+ <div class="not-need__header">
+ 濉啓鍙嶆槧浜轰俊鎭�
+ </div>
+ <div class="not-need-item">
+ <label>鍙嶆槧浜�:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ <div class="not-need-item">
+ <label>鑱旂郴鏂瑰紡:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ <div class="not-need-item">
+ <label>韬唤璇佸彿:</label>
+ <input type="text" class="not-need__inner">
+ </div>
+ </div>
+ <div class="input-footer">
+ <el-button type="primary" class="confirm" @click="handleSubmit">纭畾</el-button>
+ <el-button class="back">杩斿洖</el-button>
+ </div>
+ </div>
+ <div class="map-area">
+ <!-- <MyMap /> -->
+ </div>
+ </div>
+</template>
+<script>
+import MyMap from '@/components/map'
+export default {
+ components: {
+ MyMap
+ },
+ data() {
+ const validateNickname = (rule, value, callback) => {
+ if (!value) {
+ callback(new Error("璇峰~鍐欓棶棰樼被鍨�"));
+ } else {
+ callback();
+ }
+ };
+ const validatePass = (rule, value, callback) => {
+ if (!value) {
+ callback();
+ } else {
+ // const rep = /^\w+$/;
+ // if (!rep.test(value)) {
+ // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆"));
+ // }
+ callback();
+ }
+ };
+ const validateTruename = (rule, value, callback) => {
+ if (value) {
+ callback();
+ } else {
+ // const rep = /^[\u4E00-\u9FA5]{2,4}$/;
+ // if (!rep.test(value)) {
+ // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕");
+ // }
+ callback();
+ }
+ };
+ return {
+ vio: {
+ actionCause: "dasdas",//妗堢敱
+ carNumber: "宸漦123456",//杞︾墝鍙�
+ category: '',//1:杩濊2:杩濆缓
+ categoryId: 0,//澶х被
+ communityId: 0,//鎵�灞炵ぞ鍖�
+ description: "澶ф拻澶ф拻",//闂鎻忚堪
+ informant: "澶ц嫃鎵�",//鍙嶆槧浜�
+ informantIdCard: "51102519910082831",//韬唤璇佸彿鐮�
+ informantPhoneCode: "17844631885",//鍙嶆槧浜鸿仈绯绘柟寮�
+ linkShop: 0,//鏄惁鍏宠仈鍟嗛摵(0鍚�1鏄�)
+ shopName: "",//鍏宠仈鍟嗛摵鍚嶇О
+ site: "灏忓湴鏂�",//浜嬪彂鍦扮偣
+ streetId: 0,//鎵�灞炶閬�
+ typeId: 0//灏忕被
+ },
+ createRoleRules: {
+ name: [
+ { required: true, trigger: "blur", validator: validateNickname },
+ ],
+ type: [
+ { required: false, trigger: "blur", validator: validatePass },
+ ],
+ description: [
+ { required: false, trigger: "blur", validator: validateTruename },
+ ],
+ },
+ bigKindList: [],
+ smallKindList: [],
+ eventLevelList: [],
+ typeList: [
+ {
+ label: '杩濊',
+ value: 1.
+ },
+ {
+ label: '杩濆缓',
+ value: 2.
+ }
+ ]
+
+ }
+ },
+ created() {
+ const { getBigKind, getEventLevel, getSmallKind } = this;
+ console.log(this.mytype);
+ this.vio.category = this.mytype + 1;
+ getBigKind();
+ getSmallKind();
+ getEventLevel();
+ },
+ methods: {
+ // handleUser() {
+ // this.$refs['user'].validate((valid) => {
+ // console.log(valid);
+ // if (valid) {
+ // const { role } = this;
+ // console.log(role);
+ // this.$axios.post('sccg/role/create', {
+ // description: role.description, name: role.name, type: role.type
+ // }).then(res => {
+ // if (res.code === 200) {
+ // this.refresh();
+ // }
+ // })
+ // } else {
+ // return false;
+ // }
+ // })
+ // },
+ handleStop() {
+ this.refresh();
+ },
+ // 鑾峰彇澶х被鍒楄〃
+ getBigKind() {
+ this.$axios({
+ method: 'get',
+ url: 'sccg/violations/query/type_first'
+ }).then(res => {
+ this.bigKindList = res.data;
+ // console.log(res);
+ })
+ },
+ // 鑾峰彇灏忕被鍒楄〃
+ getSmallKind() {
+ this.$axios({
+ method: 'get',
+ url: 'sccg/violations/query/type_second'
+ })
+ .then(res => {
+ this.smallKindList = res.data;
+ })
+ },
+ // 鑾峰彇妗堜欢绛夌骇鍒楄〃
+ getEventLevel() {
+ this.$axios({
+ method: 'get',
+ url: 'sccg/violations/query/event_type'
+ })
+ .then(res => {
+ this.eventLevelList = res.data;
+ })
+ },
+ // 鑾峰彇琛屾斂鍖哄煙
+ getRegion() {
+ this.$axios({
+ method: 'get',
+ url: 'sccg/sccg-region/getTree',
+ })
+ .then(res => {
+ // this.
+ })
+ },
+ // 鎻愪氦娉ㄥ唽淇℃伅
+ handleSubmit() {
+ const { vio } = this;
+ console.log(vio);
+ this.$axios({
+ method:'post',
+ url:'sccg/base-case/addition_violation',
+ data:vio
+ })
+ .then(res=>{
+ console.log(res);
+ })
+ // this.$axios.post('sccg/role/create', {
+ // description: role.description, name: role.name, type: role.type
+ // }).then(res => {
+ // if (res.code === 200) {
+ // this.refresh();
+ // }
+ // })
+ }
+ },
+ props: ['mytype']
+}
+</script>
+<style lang="scss" scoped>
+.vio {
+ display: flex;
+
+ .input-area {
+ flex: 1;
+ padding: 10px 20px;
+
+ .input-header {
+ color: #4b9bb7;
+
+ .input-header__title {
+ line-height: 60px;
+ font-weight: 650;
+ font-size: 20px;
+ }
+
+ .input-header__tip {
+ line-height: 40px;
+ }
+ }
+
+ .input-form {
+ .el-form {
+ &::v-deep .el-form-item__label {
+ color: #4b9bb7;
+ }
+
+ &::v-deep .el-input__inner {
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+
+ &::v-deep .el-textarea__inner {
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+ }
+ }
+
+ .input-footer {
+ display: flex;
+ justify-content: center;
+ }
+ }
+
+ .map-area {
+ flex: 1;
+ }
+
+ .not-need {
+ color: #4b9bb7;
+
+ .not-need__header {
+ line-height: 40px;
+ }
+
+ .not-need-item {
+ line-height: 40px;
+ margin-bottom: 22px;
+ display: flex;
+
+ label {
+ width: 100px;
+ padding-right: 12px;
+ text-align: right;
+ }
+
+ .not-need__inner {
+ flex: 1;
+ line-height: 40px;
+ padding: 0 15px;
+ border-radius: 4px;
+ color: #fff;
+ // outline: #409eff solid 1px;
+ outline: none;
+ background-color: #09152f;
+ border: 1px solid #17324c;
+ }
+ }
+ }
+
+}
+</style>
\ No newline at end of file
diff --git a/src/views/operate/disposal/casepool/pool/index.vue b/src/views/operate/disposal/casepool/pool/index.vue
index c0edcb2..3e6c1f7 100644
--- a/src/views/operate/disposal/casepool/pool/index.vue
+++ b/src/views/operate/disposal/casepool/pool/index.vue
@@ -12,7 +12,11 @@
<div class="addUser">
<el-button class="addBtn" type="primary" @click="dialogCreate = true">娣诲姞</el-button>
<el-dialog :before-close="handleClose" :visible.sync="dialogCreate" title="璇烽�夋嫨涓婃姤浜嬩欢绫诲瀷" width="45%" v-if="dialogCreate">
- <createUser />
+ <createUser @getPageProp=setDialog />
+ </el-dialog>
+ <el-dialog :before-close="handleClose" :visible.sync="dialogNewAdd" :title="newAddType === 0 ? '杩濊浜嬩欢鐧昏' : '杩濆缓浜嬩欢鐧昏' " width="45%" v-if="dialogNewAdd">
+ <MyIll v-if="newAddType === 1" :mytype=newAddType />
+ <myVio v-else :mytype=newAddType />
</el-dialog>
</div>
</div>
@@ -104,9 +108,11 @@
<script>
import updateUser from "./updateUser"
import createUser from "./createUser"
+import MyIll from './createUser/ill'
+import MyVio from './createUser/vio'
export default {
components: {
- updateUser, createUser
+ updateUser, createUser,MyIll,MyVio
},
data() {
return {
@@ -114,6 +120,8 @@
context: "",
dialogCreate: false,
dialogUpdate: false,
+ dialogNewAdd:false,
+ newAddType:0,
updateFlag: false,
userInfo: '',
totalNum: null,
@@ -183,6 +191,7 @@
],
mystatus:0,
statusArr:[],
+
}
},
created() {
@@ -196,9 +205,15 @@
this.statusArr[1] = item.value;
}
})
- // this.getUserList();
+ this.getUserList();
},
methods: {
+ setDialog({flag,type}){
+ this.dialogCreate = flag;
+ this.dialogNewAdd = true;
+ this.newAddType = type;
+ console.log(flag,type);
+ },
// 鎵归噺鍒犻櫎
mulDelete(idArr) {
console.log(idArr);
@@ -277,19 +292,10 @@
console.log(statusArr);
this.$axios({
method: 'get',
- url: `sccg/base-case/query/${statusArr[1]}?status=` + statusArr[0]
+ url: `sccg/base-case/query/${statusArr[1]}?state=${statusArr[0]}¤t=${currentPage}&size=${pageSize}&resource=1`
}).then(res => {
console.log(res);
})
- // 鑾峰彇鎵�鏈夌敤鎴蜂俊鎭�
- // 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;
- // })
},
// 璁剧疆琛ㄦ牸鏂戦┈绾�
tableRowClassName({ row, rowIndex }) {
diff --git a/src/views/systemSetting/baseSetting/role/index.vue b/src/views/systemSetting/baseSetting/role/index.vue
index fceb8a6..1eca7a3 100644
--- a/src/views/systemSetting/baseSetting/role/index.vue
+++ b/src/views/systemSetting/baseSetting/role/index.vue
@@ -57,7 +57,7 @@
<span class="line">|</span>
<span @click="handleStop(scope.row)">鍋滅敤</span>
<span class="line">|</span>
- <span @click="handleDelete(scope.row)">鍒犻櫎</span>
+ <span @click="handleDelete([scope.row.id])">鍒犻櫎</span>
</div>
</template>
</el-table-column>
@@ -118,6 +118,7 @@
all: false,
unsame: false,
myIdx: 0,
+ preMyIdx: 0,
options: [
{
value: 0,
@@ -145,11 +146,25 @@
},
methods: {
selectChange(list) {
- console.log(list);
console.log(this.tempList);
+ if (this.tempList.length !== 0) {
+ if (list === 3) {
+ this.preMyIdx = list;
+ this.handleDelete(this.tempList);
+ }
+ } else {
+ this.myIdx = this.preMyIdx;
+ this.$message({
+ type: 'warning',
+ message: '鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁',
+ })
+ }
},
tableChange(list) {
- this.tempList = list;
+ this.tempList = [];
+ list.forEach(item => {
+ this.tempList.push(item.id);
+ })
if (list.length === this.tableData.length) {
this.all = true;
} else {
@@ -160,27 +175,26 @@
return helper(createTime);
},
selectAll() {
-
this.$refs.multipleTable.toggleAllSelection();
},
disSame(list) {
- // console.log(this.$refs.multipleTable);
- // const row = this.$refs.table.data
list.forEach(row => {
this.$refs.multipleTable.toggleRowSelection(row)
})
},
- handleDelete({ id }) {
+ handleDelete(id) {
const that = this;
- let arr = [];
- arr.push(id);
+ // let arr = [];
+ // arr.push(id);
this.$confirm('纭鍒犻櫎锛�')
.then(_ => {
that.$axios({
method: 'post',
- url: 'sccg/role/delete?ids=' + arr,
+ url: 'sccg/role/delete?ids=' + id,
})
.then(res => {
+ this.myIdx = 0;
+ this.preMyIdx = 0;
console.log(res);
this.$message({
type: 'success',
@@ -295,7 +309,10 @@
},
changeDialog(val) {
this.dialogUpdate = val.dialogUpdate;
- console.log(val);
+ this.$message({
+ type:'success',
+ message:'鏇存敼鎴愬姛',
+ })
},
handleClose(done) {
this.$confirm('纭鍏抽棴锛�')
diff --git a/src/views/systemSetting/baseSetting/role/updateUser/index.vue b/src/views/systemSetting/baseSetting/role/updateUser/index.vue
index be1e238..d0d18e1 100644
--- a/src/views/systemSetting/baseSetting/role/updateUser/index.vue
+++ b/src/views/systemSetting/baseSetting/role/updateUser/index.vue
@@ -2,36 +2,19 @@
<div class="updateUser">
<main>
<div class="mainContent">
- <el-form ref="user" label-width="140px" autoComplete="on" :model="role" :rules="createRoleRules"
- label-position="right">
- <!-- 瑙掕壊鍚嶇О -->
- <el-form-item class="optionItem" label="瑙掕壊鍚嶇О:" prop="name">
- <el-input v-model="role.name" placeholder="璇峰~鍐欒鑹插悕绉�" :disabled="!updateFlag"></el-input>
- </el-form-item>
- <!-- 瑙掕壊绫诲瀷 -->
- <el-form-item class="optionItems" label="瑙掕壊绫诲瀷:" prop="sort">
- <!-- <el-input v-model="role.sort" placeholder="璇烽�夋嫨瑙掕壊绫诲瀷" :disabled="!updateFlag"></el-input> -->
- <el-select v-model="role.sort" placeholder="璇烽�夋嫨瑙掕壊绫诲瀷">
- <!-- v-for="item in roleList" :key="item.id" :label="item.departName"
- :value="item.id" -->
- <el-option :value="treeId" :label="treeLabel">
- <el-tree :data="roleList" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
- </el-option>
- </el-select>
- </el-form-item>
- <!-- 瑙掕壊鎻忚堪 -->
- <el-form-item class="optionItem" label="瑙掕壊鎻忚堪:" prop="description">
- <el-input type="textarea" v-model="role.description" placeholder="璇疯緭鍏ユ弿杩板唴瀹�200瀛椾互鍐�"
- :disabled="!updateFlag"></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 class="my-tree">
+ <div class="my-tree__wrap">
+ <el-tree :data="roleList" :props="defaultProps" @node-click="handleNodeClick" show-checkbox
+ @check-change="handleCheckChange" default-expand-all node-key="id">
+ </el-tree>
+ </div>
+ <div class="my-tree__bottom"></div>
+ <div class="my-tree__right"></div>
+ </div>
+ <div class="selection">
+ <el-button class="cancel" @click="resetRole">鍙栨秷</el-button>
+ <el-button class="save" @click="saveRole">淇濆瓨</el-button>
+ </div>
</div>
</main>
</div>
@@ -39,65 +22,25 @@
<script>
export default {
data() {
- const validateNickname = (rule, value, callback) => {
- if (!value) {
- callback(new Error("璇峰~鍐欒鑹插悕绉�"));
- } else {
- callback();
- }
- };
- const validatePass = (rule, value, callback) => {
- if (!value) {
- callback();
- } else {
- // const rep = /^\w+$/;
- // if (!rep.test(value)) {
- // callback(new Error("瀵嗙爜鍙兘鏄互鏁板瓧銆�26涓嫳鏂囧瓧姣嶆垨鑰呬笅鍒掔嚎缁勬垚鐨勫瓧绗︿覆"));
- // }
- callback();
- }
- };
- const validateTruename = (rule, value, callback) => {
- if (value) {
- callback();
- } else {
- // const rep = /^[\u4E00-\u9FA5]{2,4}$/;
- // if (!rep.test(value)) {
- // callback("璇疯緭鍏ユ纭殑鐢ㄦ埛濮撳悕");
- // }
- callback();
- }
- };
return {
role: {
name: '',
sort: '',
description: '',
},
- createRoleRules: {
- name: [
- { required: true, trigger: "blur", validator: validateNickname },
- ],
- sort: [
- { required: false, trigger: "blur", validator: validatePass },
- ],
- description: [
- { required: false, trigger: "blur", validator: validateTruename },
- ],
- },
roleList: [],
defaultProps: {
children: 'children',
label: 'title'
},
- treeLabel:'',
- treeId:23
+ treeLabel: '',
+ treeId: 23,
+ checkedIds: [],
+ resCheckedIds: [],
}
},
created() {
const that = this;
- this.userInfo.status ? this.userInfo.status = 1 : this.userInfo.status = 0;
- this.role = JSON.parse(JSON.stringify(that.userInfo));
this.getMenuList();
},
methods: {
@@ -133,12 +76,38 @@
})
},
// 鐐瑰嚮鏍戣妭鐐�
- handleNodeClick({title,id}) {
+ handleNodeClick({ title, id }) {
// console.log(obj);
this.role.sort = title;
this.treeLabel = title;
this.treeId = id;
+ },
+ // 鏍戝舰鎺т欢閫変腑鏇存敼
+ handleCheckChange(data, checked, indeterminate) {
+ // console.log(data,checked,indeterminate);
+ if (checked) {
+ this.checkedIds.push(data.id);
+ } else {
+ let index = 0;
+ this.checkedIds.forEach((item, idx) => {
+ if (item.id === data.id) {
+ index = idx;
+ }
+ })
+ this.checkedIds.splice(index, 1);
+ }
+ console.log(this.checkedIds);
+ },
+ // 淇濆瓨role
+ saveRole() {
+ this.resCheckedIds = [];
+ this.resCheckedIds = this.checkedIds;
+ this.$emit('changeDialog',{dialogUpdate:false});
+ },
+ // 娑堥櫎role
+ resetRole() {
+ this.resCheckedIds = []
}
},
props: ['userInfo', 'updateFlag', 'getUserList', 'changeDialog']
@@ -148,49 +117,39 @@
.updateUser {
border-radius: 1px;
background-color: #09152f;
-
main {
- // border: 1px solid #fff;
text-align: left;
- padding: 0 55px;
+ padding: 50px 55px;
background-color: #09152f;
- padding-bottom: 50px;
-
.mainContent {
- display: flex;
- justify-content: center;
- padding-top: 50px;
-
- .el-form-item__content {
- width: 400px;
-
- .el-select {
+ .my-tree {
+ height: 200px;
+ overflow: hidden;
+ background-color: #17324c;
+ position: relative;
+ border-radius: 4px;
+ .my-tree__wrap{
+ overflow: scroll;
+ height: 200px;
+ }
+ .my-tree__bottom{
+ position: absolute;
+ left: 0px;
+ bottom: 0px;
+ background-color: #17324c;
width: 100%;
+ height: 20px;
+ border-bottom-left-radius: 4px;
+ }
+ .my-tree__right{
+ position: absolute;
+ right: 0px;
+ top: 0px;
+ background-color: #17324c;
+ width: 20px;
+ height: 100%;
}
}
-
- .optionHandleSp {
- display: flex;
-
- .areaNumber,
- .moreNumber {
- flex: 1;
- }
-
- .telNumber {
- flex: 2;
- }
- }
-
- .optionBtn {
- display: flex;
- margin-top: 20px;
-
- .btn {
- padding: 12px 50px;
- }
- }
-
}
}
@@ -199,14 +158,29 @@
border: 1px solid #17324c;
}
- ::v-deep .el-form-item__label {
- color: #4b9bb7;
- }
-
::v-deep .el-input__inner {
background-color: #09152f;
border: 1px solid #17324c;
}
}
+.selection {
+ margin-top: 10px;
+ display: flex;
+ justify-content: space-between;
+ .el-button {
+ padding: 10px 20px;
+ border-radius: 4px;
+ }
+
+ .save {
+ background-color: #409eff;
+ color: #fff;
+ }
+
+ .cancel {
+ background-color: #09152f;
+ color: #4b9bb7;
+ }
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0