From 3fde6efd0326e547d9d5cfdc6e534813cccb52ff Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 17 十月 2022 22:58:52 +0800
Subject: [PATCH] 部门bug修改
---
src/views/systemSetting/baseSetting/user/components/updateUser/index.vue | 142 ++++++++++++++++++++++++++++++++++++-----------
1 files changed, 108 insertions(+), 34 deletions(-)
diff --git a/src/views/systemSetting/baseSetting/user/components/updateUser/index.vue b/src/views/systemSetting/baseSetting/user/components/updateUser/index.vue
index 6d37fec..bdb2020 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="!flag.password">
+ <el-input v-model="user.password" type="password" placeholder="璇疯緭鍏ョ敤鎴峰瘑鐮�" disabled>
</el-input>
</el-form-item>
<!-- 鎵�灞炵敤鎴峰鍚� -->
@@ -19,12 +18,12 @@
<el-input v-model="user.true_name" placeholder="璇峰~鍐欑敤鎴峰鍚�"></el-input>
</el-form-item> -->
<!-- 鎬у埆 -->
- <!-- <el-form-item class="optionItem" label="鎬у埆:" prop="gender">
- <el-radio-group v-model="user.gender">
+ <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="2">濂�</el-radio>
+ <el-radio :label="0">濂�</el-radio>
</el-radio-group>
- </el-form-item> -->
+ </el-form-item>
<!-- 鏄惁鍏氬憳 -->
<el-form-item class="optionItem" label="鏄惁鍏氬憳:" prop="isDy">
<el-radio-group v-model="user.isDy" disabled>
@@ -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" :disabled="!flag.role">
+ <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>
@@ -80,11 +85,11 @@
</el-form-item>
<!-- 濉啓鎵�灞瀖ac鍦板潃 -->
<el-form-item class="optionItem" label="濉啓鎵�灞瀖ac鍦板潃:" prop="mac">
- <el-input v-model="user.mac" placeholder="璇峰~鍐欐墍灞瀖ac鍦板潃"></el-input>
+ <el-input v-model="user.mac" placeholder="璇峰~鍐欐墍灞瀖ac鍦板潃" disabled></el-input>
</el-form-item>
<!-- 濉啓鎵�灞瀒p鍦板潃 -->
<el-form-item class="optionItem" label="濉啓鎵�灞瀒p鍦板潃:" prop="ip">
- <el-input v-model="user.ip" placeholder="璇峰~鍐欐墍灞瀒p鍦板潃"></el-input>
+ <el-input v-model="user.ip" placeholder="璇峰~鍐欐墍灞瀒p鍦板潃" disabled></el-input>
</el-form-item>
<el-form-item v-if="updateFlag">
<div class="optionBtn">
@@ -167,7 +172,7 @@
// }
// };
const validateType = (rule, value, callback) => {
- if (!value && value!==0) {
+ if (!value && value !== 0) {
callback(new Error("璇烽�夋嫨鐢ㄦ埛绫诲瀷"));
} else {
callback();
@@ -206,7 +211,7 @@
nickName: '',
password: '',
username: '',
- // gender: 1,
+ sex: 1,
isDy: 1,
mobile: '',
email: '',
@@ -232,9 +237,9 @@
username: [
{ required: true, trigger: "blur", validator: validateTruename },
],
- // gender: [
- // { required: true, trigger: "blur" },
- // ],
+ sex: [
+ { required: true, trigger: "blur" },
+ ],
isDy: [
{ required: true, trigger: "blur" },
],
@@ -276,41 +281,82 @@
created() {
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;
}
})
},
// 淇敼鐢ㄦ埛淇℃伅
handleUser() {
+ const { depart, role } = this.flag;
this.$refs.user.validate((valid) => {
if (valid) {
const { user } = this;
- this.$axios({
- method: 'post',
- url: 'sccg/admin/update/' + user.id,
- data: user
- })
- .then(res => {
- this.$message({
- type:res.code===200 ? 'success' : 'warning',
- message:res.message,
- })
- this.getUserList();
- this.$emit('closeDialog', { flag: false });
+ user.isDy = `${user.isDy}`;
+ if (depart) {
+ console.log(this.user);
+ this.$axios({
+ method: 'post',
+ url: `sccg/admin/update/${user.id}`,
+ data: {
+ "id": user.id,
+ "username": user.username,
+ "password": user.password,
+ "icon": user.icon,
+ "email": user.email,
+ "nickName": user.nickName,
+ "note": user.note,
+ "createTime": user.createTime,
+ "loginTime": user.loginTime,
+ "status": user.status ? 1 : 0,
+ "macAddress": user.macAddress,
+ "ipAddress": user.ipAddress,
+ "isDy": `${user.isDy}`,
+ "sex": `${user.sex}`,
+ "jobTitle": user.jobTitle,
+ "departmentId": user.departmentId,
+ "departName": user.departName,
+ "userType": user.userType,
+ "zj": user.zj,
+ "mobile": user.mobile,
+ }
})
+ .then(res => {
+ this.$message({
+ type: res.code === 200 ? 'success' : 'warning',
+ message: res.message,
+ })
+ this.getUserList();
+ this.$emit('closeDialog', { flag: false });
+ })
+ } else {
+ this.$axios({
+ method: 'post',
+ url: 'sccg/admin/role/update?adminId=' + user.id + '&roleIds=' + user.role,
+ })
+ .then(res => {
+ this.$message({
+ type: res.code === 200 ? 'success' : 'warning',
+ message: res.message,
+ })
+ this.getUserList();
+ this.$emit('closeDialog', { flag: false });
+ })
+ }
} else {
return false;
}
@@ -325,9 +371,29 @@
.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>
@@ -335,6 +401,14 @@
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;
+ }
main {
text-align: left;
padding: 0 55px;
--
Gitblit v1.8.0