mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-15 05:12:49 +00:00
no message
This commit is contained in:
parent
957201804c
commit
79ca1aea02
@ -191,15 +191,15 @@
|
||||
<FormItem prop="parent_id" :label="$L('上级部门')">
|
||||
<Select v-model="departmentData.parent_id" :placeholder="$L('请选择上级部门')">
|
||||
<Option :value="0">
|
||||
<div class="team-department-level-name level-1">{{ $L('默认部门') }}</div>
|
||||
<div class="department-level-name level-1">{{ $L('默认部门') }}</div>
|
||||
</Option>
|
||||
<Option
|
||||
v-for="(item, index) in departmentList"
|
||||
:disabled="item.level > 3 || item.id == departmentData.id || item.parent_id == departmentData.id"
|
||||
:disabled="item.level > 3 || item.id == departmentData.id || (item.parent_id == departmentData.id && departmentData.id > 0)"
|
||||
:value="item.id"
|
||||
:key="index"
|
||||
:label="item.chains.join(' - ')">
|
||||
<div :class="`team-department-level-name level-${item.level}`">{{ item.name }}</div>
|
||||
<div :class="`department-level-name level-${item.level}`">{{ item.name }}</div>
|
||||
</Option>
|
||||
</Select>
|
||||
</FormItem>
|
||||
@ -311,7 +311,7 @@
|
||||
:value="item.id"
|
||||
:key="index"
|
||||
:label="item.chains.join(' - ')">
|
||||
<div :class="`team-department-level-name level-${item.level - 1}`">{{ item.name }}</div>
|
||||
<div :class="`department-level-name level-${item.level - 1}`">{{ item.name }}</div>
|
||||
</Option>
|
||||
</Select>
|
||||
</FormItem>
|
||||
@ -1238,28 +1238,13 @@ export default {
|
||||
|
||||
getDepartmentLists() {
|
||||
this.departmentLoading++;
|
||||
this.$store.dispatch("call", {
|
||||
url: 'users/department/list',
|
||||
}).then(({data}) => {
|
||||
this.departmentList = []
|
||||
this.generateDepartmentList(data, 0, 1, [])
|
||||
this.$store.dispatch("getDepartmentList").then(list => {
|
||||
this.departmentList = list;
|
||||
}).finally(_ => {
|
||||
this.departmentLoading--;
|
||||
})
|
||||
},
|
||||
|
||||
generateDepartmentList(data, parent_id, level, chains = []) {
|
||||
data.some(item => {
|
||||
if (item.parent_id == parent_id) {
|
||||
this.departmentList.push(Object.assign(item, {
|
||||
chains: chains.concat([item.name]),
|
||||
level: level + 1
|
||||
}))
|
||||
this.generateDepartmentList(data, item.id, level + 1, chains.concat([item.name]))
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
onMultipleMaxBefore(num) {
|
||||
$A.messageError(`最多选择${num}个部门`)
|
||||
return false
|
||||
|
||||
33
resources/assets/js/store/actions.js
vendored
33
resources/assets/js/store/actions.js
vendored
@ -631,7 +631,6 @@ export default {
|
||||
}, typeof timeout === "number" ? timeout : 1000)
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 获取审批待办未读数量
|
||||
* @param state
|
||||
@ -866,6 +865,38 @@ export default {
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取部门列表
|
||||
* @param dispatch
|
||||
* @returns {Promise<unknown>}
|
||||
*/
|
||||
getDepartmentList({dispatch}) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const generateList = (data, parent_id = 0, level = 0, chains = []) => {
|
||||
let result = [];
|
||||
data.some(item => {
|
||||
if (item.parent_id == parent_id) {
|
||||
const newItem = Object.assign({}, item, {
|
||||
chains: chains.concat([item.name]),
|
||||
level: level + 1
|
||||
});
|
||||
result.push(newItem);
|
||||
// 递归获取子部门
|
||||
const children = generateList(data, item.id, level + 1, chains.concat([item.name]));
|
||||
result = result.concat(children);
|
||||
}
|
||||
});
|
||||
return result;
|
||||
};
|
||||
|
||||
dispatch("call", {
|
||||
url: 'users/department/list',
|
||||
}).then(({data}) => {
|
||||
resolve(generateList(data, 0, 1));
|
||||
}).catch(reject);
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* 登出(打开登录页面)
|
||||
* @param state
|
||||
|
||||
13
resources/assets/sass/pages/common.scss
vendored
13
resources/assets/sass/pages/common.scss
vendored
@ -942,3 +942,16 @@ body.window-portrait {
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
}
|
||||
|
||||
/*部门层级*/
|
||||
.department-level-name {
|
||||
&.level-2 {
|
||||
margin-left: 18px;
|
||||
}
|
||||
&.level-3 {
|
||||
margin-left: 36px;
|
||||
}
|
||||
&.level-4 {
|
||||
margin-left: 54px;
|
||||
}
|
||||
}
|
||||
|
||||
@ -157,18 +157,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
.team-department-level-name {
|
||||
&.level-2 {
|
||||
margin-left: 18px;
|
||||
}
|
||||
&.level-3 {
|
||||
margin-left: 36px;
|
||||
}
|
||||
&.level-4 {
|
||||
margin-left: 54px;
|
||||
}
|
||||
}
|
||||
|
||||
.team-department-add-dialog-group {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user