@@ -172,6 +172,21 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="数据管理权限" prop="dataScopeDeptIds">
|
||||
<el-cascader
|
||||
v-model="dataScopeCascaderValue"
|
||||
:options="permissionDeptTree"
|
||||
:props="deptCascaderProps"
|
||||
:disabled="isUserViewMode"
|
||||
clearable
|
||||
filterable
|
||||
collapse-tags
|
||||
collapse-tags-tooltip
|
||||
placeholder="请选择数据管理组织(可多选)"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6"><el-form-item label="工号"><el-input v-model="form.code" :disabled="isUserViewMode" /></el-form-item></el-col>
|
||||
<el-col :span="6"><el-form-item label="OA登录名"><el-input v-model="form.oaLoginId" :disabled="isUserViewMode" maxlength="128" placeholder="请输入OA登录名" /></el-form-item></el-col>
|
||||
<el-col :span="6"><el-form-item label="人员类别"><el-select v-model="form.personCategory" :disabled="isUserViewMode"><el-option label="内部员工" :value="1" /><el-option label="承运商" :value="2" /></el-select></el-form-item></el-col>
|
||||
@@ -592,6 +607,26 @@ export default {
|
||||
this.$refs.userFormRef?.validateField('deptId');
|
||||
},
|
||||
},
|
||||
// 数据管理权限多选级联:form.dataScopeDeptIds 为 id 数组
|
||||
dataScopeCascaderValue: {
|
||||
get() {
|
||||
const ids = Array.isArray(this.form.dataScopeDeptIds)
|
||||
? this.form.dataScopeDeptIds
|
||||
: this.form.dataScopeDeptIds
|
||||
? String(this.form.dataScopeDeptIds).split(',').filter(Boolean)
|
||||
: [];
|
||||
return ids
|
||||
.filter(item => item !== undefined && item !== null && item !== '')
|
||||
.map(item => (typeof item === 'number' ? item : String(item)));
|
||||
},
|
||||
set(value) {
|
||||
this.form.dataScopeDeptIds = Array.isArray(value)
|
||||
? value.filter(item => item !== undefined && item !== null && item !== '')
|
||||
: value
|
||||
? [value]
|
||||
: [];
|
||||
},
|
||||
},
|
||||
isUserViewMode() {
|
||||
return this.userDialogMode === 'view';
|
||||
},
|
||||
@@ -1034,6 +1069,7 @@ export default {
|
||||
sex: undefined,
|
||||
postId: '',
|
||||
deptId: [],
|
||||
dataScopeDeptIds: [],
|
||||
code: '',
|
||||
personCategory: 1,
|
||||
remark: '',
|
||||
@@ -1046,9 +1082,13 @@ export default {
|
||||
getUser(row.id).then(res => {
|
||||
const user = res.data.data;
|
||||
const deptIds = func.split(user.deptId || '');
|
||||
const dataScopeDeptIds = Array.isArray(user.dataScopeDeptIds)
|
||||
? user.dataScopeDeptIds.map(item => String(item))
|
||||
: [];
|
||||
this.form = {
|
||||
...user,
|
||||
deptId: Array.isArray(deptIds) ? deptIds : [],
|
||||
dataScopeDeptIds,
|
||||
postId: func.split(user.postId || '')[0] || '',
|
||||
roleId: func.join(user.roleId || ''),
|
||||
personCategory: user.personCategory || 1,
|
||||
@@ -1064,9 +1104,13 @@ export default {
|
||||
submitUserForm() {
|
||||
this.$refs.userFormRef.validate(valid => {
|
||||
if (!valid) return;
|
||||
const dataScopeDeptIds = Array.isArray(this.form.dataScopeDeptIds)
|
||||
? this.form.dataScopeDeptIds.filter(item => item !== undefined && item !== null && item !== '')
|
||||
: [];
|
||||
const row = {
|
||||
...this.form,
|
||||
deptId: func.join(this.form.deptId),
|
||||
dataScopeDeptIds,
|
||||
postId: func.join(this.form.postId),
|
||||
roleId: func.join(this.form.roleId),
|
||||
leaderId: func.join(this.form.leaderId),
|
||||
|
||||
Reference in New Issue
Block a user