fix: bug 修复
This commit is contained in:
@@ -19,7 +19,7 @@ export const appConfig = {
|
|||||||
projectType: 'web',
|
projectType: 'web',
|
||||||
baseApi: '/api',
|
baseApi: '/api',
|
||||||
projectName: '济阳站_AI智能BAS系统',
|
projectName: '济阳站_AI智能BAS系统',
|
||||||
enablePermissions: true,
|
enablePermissions: false,
|
||||||
// themeColor: '#eee',
|
// themeColor: '#eee',
|
||||||
siderPosition: 'left',
|
siderPosition: 'left',
|
||||||
baseHeader: '/parkingManage',
|
baseHeader: '/parkingManage',
|
||||||
|
@@ -45,6 +45,10 @@ const organizationManage = {
|
|||||||
title: '冻结',
|
title: '冻结',
|
||||||
code: 'userFrozen',
|
code: 'userFrozen',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '解冻',
|
||||||
|
code: 'userUnFrozen',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '重置密码',
|
title: '重置密码',
|
||||||
code: 'userCodeReset',
|
code: 'userCodeReset',
|
||||||
|
@@ -11,6 +11,7 @@ export const formConfig = (disabled: Boolean) => {
|
|||||||
disabled: disabled,
|
disabled: disabled,
|
||||||
placeholder: '请输入部门名称',
|
placeholder: '请输入部门名称',
|
||||||
maxLength: 20,
|
maxLength: 20,
|
||||||
|
onKeydown: (e) => e.keyCode === 32 && e.preventDefault(),
|
||||||
},
|
},
|
||||||
rules: [
|
rules: [
|
||||||
{
|
{
|
||||||
@@ -44,6 +45,7 @@ export const formConfig = (disabled: Boolean) => {
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
disabled: disabled,
|
disabled: disabled,
|
||||||
placeholder: '请输入部门编码',
|
placeholder: '请输入部门编码',
|
||||||
|
onKeydown: (e) => e.keyCode === 32 && e.preventDefault(),
|
||||||
maxLength: 20,
|
maxLength: 20,
|
||||||
},
|
},
|
||||||
rules: [
|
rules: [
|
||||||
@@ -56,11 +58,14 @@ export const formConfig = (disabled: Boolean) => {
|
|||||||
{
|
{
|
||||||
label: '排序',
|
label: '排序',
|
||||||
field: 'sort',
|
field: 'sort',
|
||||||
component: 'NsInput',
|
component: 'NsInputNumber',
|
||||||
componentProps: {
|
componentProps: {
|
||||||
disabled: disabled,
|
disabled: disabled,
|
||||||
placeholder: '请输入排序',
|
placeholder: '请输入排序',
|
||||||
maxLength: 2,
|
maxLength: 2,
|
||||||
|
min: 0,
|
||||||
|
max: 99,
|
||||||
|
precision: 0,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -87,6 +92,7 @@ export const formConfig2 = (disabled2: Boolean) => {
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
disabled: disabled2,
|
disabled: disabled2,
|
||||||
placeholder: '请输入角色名称',
|
placeholder: '请输入角色名称',
|
||||||
|
onKeydown: (e) => e.keyCode === 32 && e.preventDefault(),
|
||||||
maxLength: 20,
|
maxLength: 20,
|
||||||
},
|
},
|
||||||
rules: [
|
rules: [
|
||||||
@@ -111,6 +117,7 @@ export const formConfig2 = (disabled2: Boolean) => {
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
disabled: disabled2,
|
disabled: disabled2,
|
||||||
placeholder: '请输入节点编码',
|
placeholder: '请输入节点编码',
|
||||||
|
onKeydown: (e) => e.keyCode === 32 && e.preventDefault(),
|
||||||
maxLength: 20,
|
maxLength: 20,
|
||||||
},
|
},
|
||||||
rules: [
|
rules: [
|
||||||
|
@@ -10,13 +10,13 @@
|
|||||||
新增部门
|
新增部门
|
||||||
</ns-button>
|
</ns-button>
|
||||||
<ns-button type="primary" @click="pipe(addApartmentSon, true)">新增子部门</ns-button>
|
<ns-button type="primary" @click="pipe(addApartmentSon, true)">新增子部门</ns-button>
|
||||||
<ns-button style="margin: 10px" type="primary" @click="pipe(deleteDept)">
|
<ns-button style="margin: 10px" type="primary" @click="pipe(deleteDept, true)">
|
||||||
删除
|
删除
|
||||||
</ns-button>
|
</ns-button>
|
||||||
<a-tree
|
<a-tree
|
||||||
v-if="apartmentTreeData?.length"
|
v-if="deptTreeData?.length"
|
||||||
:tree-data="apartmentTreeData"
|
:tree-data="deptTreeData"
|
||||||
v-model:checkedKeys="deptTreeCheckedKeys"
|
:selectedKeys="deptTreeSelectedKeys"
|
||||||
defaultExpandAll
|
defaultExpandAll
|
||||||
@select="SelectApartmentTree">
|
@select="SelectApartmentTree">
|
||||||
<template #title="data">
|
<template #title="data">
|
||||||
@@ -35,11 +35,11 @@
|
|||||||
formLayout="vertical"
|
formLayout="vertical"
|
||||||
class="form" />
|
class="form" />
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
<a-tab-pane :key="2" tab="部门权限">
|
<a-tab-pane :key="2" :disabled="selectRef?.hasOwnProperty('orgInfo')" tab="部门权限">
|
||||||
<a-tree
|
<a-tree
|
||||||
:tree-data="apartmentAdminTreeData"
|
:tree-data="deptPermissionTreeData"
|
||||||
:fieldNames="{ children: 'menus', title: 'label', key: 'permissionId' }"
|
:fieldNames="{ children: 'menus', title: 'label', key: 'permissionId' }"
|
||||||
v-model:checkedKeys="ApartcheckedKeys"
|
v-model:checkedKeys="deptcheckedKeys"
|
||||||
checkable
|
checkable
|
||||||
:selectable="false"
|
:selectable="false"
|
||||||
defaultExpandAll
|
defaultExpandAll
|
||||||
@@ -49,7 +49,9 @@
|
|||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
</a-tabs>
|
</a-tabs>
|
||||||
<ns-button style="margin: 16px" type="primary" @click="CancelApartment">取消 </ns-button>
|
<ns-button style="margin: 16px" type="primary" @click="CancelApartment">取消 </ns-button>
|
||||||
<ns-button v-show="disabled" type="primary" @click="pipe(deptEdit)">编辑</ns-button>
|
<ns-button v-show="disabled" type="primary" @click="pipe(deptEdit, true, false)"
|
||||||
|
>编辑</ns-button
|
||||||
|
>
|
||||||
<ns-button v-show="!disabled" type="primary" @click="deptSure">确定</ns-button>
|
<ns-button v-show="!disabled" type="primary" @click="deptSure">确定</ns-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
@@ -66,8 +68,9 @@
|
|||||||
删除
|
删除
|
||||||
</ns-button>
|
</ns-button>
|
||||||
<a-tree
|
<a-tree
|
||||||
v-if="userTreeData.length"
|
v-if="roleTreeData.length"
|
||||||
:tree-data="userTreeData"
|
:tree-data="roleTreeData"
|
||||||
|
:selectedKeys="roleTreeSelectedKeys"
|
||||||
defaultExpandAll
|
defaultExpandAll
|
||||||
@select="SelectUserTree">
|
@select="SelectUserTree">
|
||||||
<template #title="data">
|
<template #title="data">
|
||||||
@@ -88,8 +91,8 @@
|
|||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
<a-tab-pane :key="2" tab="角色权限">
|
<a-tab-pane :key="2" tab="角色权限">
|
||||||
<a-tree
|
<a-tree
|
||||||
:tree-data="userAdminTreeData"
|
:tree-data="rolePermissionTreeData"
|
||||||
v-model:checkedKeys="UsercheckedKeys"
|
v-model:checkedKeys="roleCheckedKeys"
|
||||||
defaultExpandAll
|
defaultExpandAll
|
||||||
:fieldNames="{ children: 'menus', title: 'label', key: 'permissionId' }"
|
:fieldNames="{ children: 'menus', title: 'label', key: 'permissionId' }"
|
||||||
:selectable="false"
|
:selectable="false"
|
||||||
@@ -98,8 +101,10 @@
|
|||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
</a-tabs>
|
</a-tabs>
|
||||||
<ns-button style="margin: 16px" type="primary" @click="CancelUser">取消</ns-button>
|
<ns-button style="margin: 16px" type="primary" @click="CancelUser">取消</ns-button>
|
||||||
<ns-button v-show="roleDisabled" type="primary" @click="roleEdit"> 编辑 </ns-button>
|
<ns-button v-show="roleDisabled" type="primary" @click="rolePipe(roleEdit, false, false)">
|
||||||
<ns-button v-show="!roleDisabled" type="primary" @click="UserSure"> 确定 </ns-button>
|
编辑
|
||||||
|
</ns-button>
|
||||||
|
<ns-button v-show="!roleDisabled" type="primary" @click="roleSure"> 确定 </ns-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
@@ -128,9 +133,10 @@
|
|||||||
const roleActiveKey = ref(1);
|
const roleActiveKey = ref(1);
|
||||||
const disabled = ref(true);
|
const disabled = ref(true);
|
||||||
const roleDisabled = ref(true);
|
const roleDisabled = ref(true);
|
||||||
const deptTreeCheckedKeys = ref(['0-0-0']);
|
const deptTreeSelectedKeys = ref([]);
|
||||||
const ApartcheckedKeys = ref<string[]>([]);
|
const roleTreeSelectedKeys = ref([]);
|
||||||
const UsercheckedKeys = ref<string[]>([]);
|
const deptcheckedKeys = ref<string[]>([]);
|
||||||
|
const roleCheckedKeys = ref<string[]>([]);
|
||||||
const currentOrgRef = ref();
|
const currentOrgRef = ref();
|
||||||
const selectKey = ref();
|
const selectKey = ref();
|
||||||
const selectRef = ref();
|
const selectRef = ref();
|
||||||
@@ -138,11 +144,12 @@
|
|||||||
const selectRoleRef = ref();
|
const selectRoleRef = ref();
|
||||||
const formSchema = formConfig(disabled as any);
|
const formSchema = formConfig(disabled as any);
|
||||||
const formSchema2 = formConfig2(roleDisabled as any);
|
const formSchema2 = formConfig2(roleDisabled as any);
|
||||||
const { orgId, orgName, projectId } = JSON.parse(sessionStorage.getItem('userInfo'));
|
const { orgName, projectId, orgId } = JSON.parse(sessionStorage.getItem('userInfo'));
|
||||||
const userAdminTreeData = ref([]);
|
// const orgId = JSON.parse(sessionStorage.getItem('ORGID'));
|
||||||
const apartmentTreeData = ref([]);
|
const roleTreeData = ref([]);
|
||||||
const apartmentAdminTreeData = ref([]);
|
const rolePermissionTreeData = ref([]);
|
||||||
const userTreeData = ref([]);
|
const deptTreeData = ref([]);
|
||||||
|
const deptPermissionTreeData = ref([]);
|
||||||
|
|
||||||
// 包含半选状态的权限数据
|
// 包含半选状态的权限数据
|
||||||
const deptTotalCheckedKeys = ref([]);
|
const deptTotalCheckedKeys = ref([]);
|
||||||
@@ -159,28 +166,34 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
watchEffect(() => {
|
watchEffect(() => {
|
||||||
disabledTree(apartmentAdminTreeData.value, disabled.value);
|
disabledTree(deptPermissionTreeData.value, disabled.value);
|
||||||
disabledTree(userAdminTreeData.value, roleDisabled.value);
|
disabledTree(rolePermissionTreeData.value, roleDisabled.value);
|
||||||
});
|
});
|
||||||
|
|
||||||
/**操作拦截 */
|
/**操作拦截 */
|
||||||
const pipe = (func: Function, flag = false) => {
|
const pipe = (func: Function, flag = false, toggle = true) => {
|
||||||
console.log(selectRef.value);
|
console.log(selectRef.value);
|
||||||
|
|
||||||
if (flag && !selectRef.value?.hasOwnProperty('own')) {
|
if (toggle) activeKey.value = 1;
|
||||||
|
if (flag) {
|
||||||
|
// 只有部门的操作
|
||||||
|
if (selectRef.value?.hasOwnProperty('orgInfo') || !selectRef.value?.deptInfo) {
|
||||||
NsMessage.error('请先选择相关部门');
|
NsMessage.error('请先选择相关部门');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!flag && !selectRef.value?.deptInfo) {
|
} else {
|
||||||
|
if (!selectRef.value?.hasOwnProperty('orgInfo')) {
|
||||||
NsMessage.error('请先选择相关企业');
|
NsMessage.error('请先选择相关企业');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func && func();
|
func && func();
|
||||||
};
|
};
|
||||||
|
|
||||||
const rolePipe = (func: Function, linkDept = false) => {
|
const rolePipe = (func: Function, linkDept = false, toggle = true) => {
|
||||||
console.log(selectRoleRef.value);
|
console.log(selectRoleRef.value);
|
||||||
|
if (toggle) roleActiveKey.value = 1;
|
||||||
// 需要先选择部门
|
// 需要先选择部门
|
||||||
if ((linkDept && !selectRef.value?.deptInfo) || selectRef.value?.hasOwnProperty('own')) {
|
if ((linkDept && !selectRef.value?.deptInfo) || selectRef.value?.hasOwnProperty('own')) {
|
||||||
NsMessage.error('请先选择相关部门');
|
NsMessage.error('请先选择相关部门');
|
||||||
@@ -196,12 +209,12 @@
|
|||||||
|
|
||||||
const getPermissionTree = (params) => {
|
const getPermissionTree = (params) => {
|
||||||
return http.post(permission.queryOrgPermission, params).then((res) => {
|
return http.post(permission.queryOrgPermission, params).then((res) => {
|
||||||
apartmentAdminTreeData.value = get(res, 'data');
|
deptPermissionTreeData.value = get(res, 'data');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const getRolePermissionTree = (params) => {
|
const getRolePermissionTree = (params) => {
|
||||||
return http.post(permission.queryFilterDeptPermission, params).then((res) => {
|
return http.post(permission.queryFilterDeptPermission, params).then((res) => {
|
||||||
userAdminTreeData.value = get(res, 'data');
|
rolePermissionTreeData.value = get(res, 'data');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -223,13 +236,13 @@
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
getDepartList({ orgId }).then((res) => {
|
getDepartList({ orgId }).then((res) => {
|
||||||
apartmentTreeData.value = res;
|
deptTreeData.value = res;
|
||||||
});
|
});
|
||||||
|
|
||||||
// 获取部门树
|
// 获取部门树
|
||||||
const getTree = () => {
|
const getTree = () => {
|
||||||
getDepartList({ orgId }).then((res) => {
|
getDepartList({ orgId }).then((res) => {
|
||||||
apartmentTreeData.value = res;
|
deptTreeData.value = res;
|
||||||
NsMessage.success('操作成功');
|
NsMessage.success('操作成功');
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -237,7 +250,7 @@
|
|||||||
// 获取角色树
|
// 获取角色树
|
||||||
const getUserTree = (params = { deptId: selectRef.value?.deptInfo?.deptId }) => {
|
const getUserTree = (params = { deptId: selectRef.value?.deptInfo?.deptId }) => {
|
||||||
http.post(department.queryRoleTree, params).then((res) => {
|
http.post(department.queryRoleTree, params).then((res) => {
|
||||||
userTreeData.value = res.data;
|
roleTreeData.value = res.data;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
// 根据依赖刷新角色树
|
// 根据依赖刷新角色树
|
||||||
@@ -338,12 +351,13 @@
|
|||||||
// 删除逻辑
|
// 删除逻辑
|
||||||
Modal.confirm({
|
Modal.confirm({
|
||||||
title: '是否确认删除',
|
title: '是否确认删除',
|
||||||
icon: createVNode(ExclamationCircleOutlined),
|
|
||||||
content: createVNode('div', { style: 'color:red;' }, ''),
|
|
||||||
onOk() {
|
onOk() {
|
||||||
http.post(department.deptDel, { deptId: selectRef.value.deptInfo.deptId }).then(() => {
|
http.post(department.deptDel, { deptId: selectRef.value.deptInfo.deptId }).then(() => {
|
||||||
getTree();
|
getTree();
|
||||||
clearDeptData();
|
clearDeptData();
|
||||||
|
// 清空select树
|
||||||
|
deptTreeSelectedKeys.value = [];
|
||||||
|
selectRef.value = '';
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onCancel() {
|
onCancel() {
|
||||||
@@ -355,17 +369,21 @@
|
|||||||
const deleteUser = () => {
|
const deleteUser = () => {
|
||||||
Modal.confirm({
|
Modal.confirm({
|
||||||
title: '是否确认删除',
|
title: '是否确认删除',
|
||||||
icon: createVNode(ExclamationCircleOutlined),
|
|
||||||
content: createVNode('div', { style: 'color:red;' }, ''),
|
|
||||||
onOk() {
|
onOk() {
|
||||||
http.post(department.delRole, { roleId: selectRoleRef.value.roleId }).then(() => {
|
http.post(department.delRole, { roleId: selectRoleRef.value.roleId }).then(() => {
|
||||||
getUserTree({ deptId: selectRef.value.deptInfo.deptId });
|
getUserTree({ deptId: selectRef.value.deptInfo.deptId });
|
||||||
|
clearRoleData();
|
||||||
|
// 清空select树
|
||||||
|
roleTreeSelectedKeys.value = [];
|
||||||
|
selectRoleRef.value = '';
|
||||||
|
NsMessage.success('操作成功');
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
class: 'test',
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
watchEffect(() => {
|
||||||
|
console.log(deptTreeSelectedKeys.value, 'deptTreeData.value');
|
||||||
|
});
|
||||||
|
|
||||||
const clearDeptData = () => {
|
const clearDeptData = () => {
|
||||||
formData.value = {};
|
formData.value = {};
|
||||||
@@ -452,7 +470,7 @@
|
|||||||
http
|
http
|
||||||
.post(permission.queryDeptPermission, { deptId: selectRef.value?.deptInfo.deptId })
|
.post(permission.queryDeptPermission, { deptId: selectRef.value?.deptInfo.deptId })
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
ApartcheckedKeys.value = res.data
|
deptcheckedKeys.value = res.data
|
||||||
?.filter((item) => !item.halfCheck)
|
?.filter((item) => !item.halfCheck)
|
||||||
.map((item) => {
|
.map((item) => {
|
||||||
return item.permissionId;
|
return item.permissionId;
|
||||||
@@ -466,7 +484,7 @@
|
|||||||
http
|
http
|
||||||
.post(permission.queryRolePermission, { roleId: selectRoleRef.value?.roleId })
|
.post(permission.queryRolePermission, { roleId: selectRoleRef.value?.roleId })
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
UsercheckedKeys.value = res.data
|
roleCheckedKeys.value = res.data
|
||||||
?.filter((item) => !item.halfCheck)
|
?.filter((item) => !item.halfCheck)
|
||||||
.map((item) => {
|
.map((item) => {
|
||||||
return item.permissionId;
|
return item.permissionId;
|
||||||
@@ -502,18 +520,19 @@
|
|||||||
const { selected } = info;
|
const { selected } = info;
|
||||||
if (!selectedKeys?.length) return;
|
if (!selectedKeys?.length) return;
|
||||||
|
|
||||||
selectKey.value = [info.node.key];
|
deptTreeSelectedKeys.value = [info.node.key];
|
||||||
selectRef.value = info.node.dataRef;
|
selectRef.value = info.node.dataRef;
|
||||||
|
|
||||||
// 确定是否是企业
|
// 确定是否是企业
|
||||||
if (!selectRef.value.hasOwnProperty('own')) {
|
if (!selectRef.value.hasOwnProperty('own')) {
|
||||||
formData.value = cloneDeep(info.node.dataRef.deptInfo);
|
formData.value = cloneDeep(info.node.dataRef.deptInfo);
|
||||||
} else {
|
} else {
|
||||||
|
activeKey.value = 1;
|
||||||
currentOrgRef.value = selectRef.value;
|
currentOrgRef.value = selectRef.value;
|
||||||
formData.value = {};
|
formData.value = {};
|
||||||
}
|
}
|
||||||
getDeptPermission();
|
getDeptPermission();
|
||||||
ApartcheckedKeys.value = [];
|
deptcheckedKeys.value = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -536,10 +555,10 @@
|
|||||||
// roleDisabled.value = !selected;
|
// roleDisabled.value = !selected;
|
||||||
|
|
||||||
if (!selectedKeys?.length) return;
|
if (!selectedKeys?.length) return;
|
||||||
selectRoleKey.value = selectedKeys[0];
|
roleTreeSelectedKeys.value = [info.node.key];
|
||||||
selectRoleRef.value = info.node.dataRef;
|
selectRoleRef.value = info.node.dataRef;
|
||||||
roleFormData.value = cloneDeep(info.node.dataRef);
|
roleFormData.value = cloneDeep(info.node.dataRef);
|
||||||
UsercheckedKeys.value = [];
|
roleCheckedKeys.value = [];
|
||||||
getRolePermission();
|
getRolePermission();
|
||||||
getRolePermissionTree({ deptId: selectRef.value.deptInfo.deptId });
|
getRolePermissionTree({ deptId: selectRef.value.deptInfo.deptId });
|
||||||
};
|
};
|
||||||
@@ -565,7 +584,7 @@
|
|||||||
opMap.fuc &&
|
opMap.fuc &&
|
||||||
opMap.fuc(formData.value).then(() => {
|
opMap.fuc(formData.value).then(() => {
|
||||||
getTree();
|
getTree();
|
||||||
clearDeptData();
|
opMap.type !== 'editDpet' && clearDeptData();
|
||||||
disabled.value = true;
|
disabled.value = true;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -578,15 +597,16 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 角色确定
|
// 角色确定
|
||||||
const UserSure = () => {
|
const roleSure = () => {
|
||||||
const typeArr = ['addUserSon', 'addUser', 'editRole'];
|
const typeArr = ['addUserSon', 'addUser', 'editRole'];
|
||||||
if (roleActiveKey.value === 1) {
|
if (roleActiveKey.value === 1) {
|
||||||
if (typeArr.includes(opMap.type)) {
|
if (typeArr.includes(opMap.type)) {
|
||||||
opMap.fuc &&
|
opMap.fuc &&
|
||||||
opMap.fuc(roleFormData.value).then(() => {
|
opMap.fuc(roleFormData.value).then(() => {
|
||||||
getUserTree();
|
getUserTree();
|
||||||
clearRoleData();
|
opMap.type !== 'editRole' && clearRoleData();
|
||||||
roleDisabled.value = !roleDisabled.value;
|
roleDisabled.value = !roleDisabled.value;
|
||||||
|
NsMessage.success('操作成功');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@@ -1,12 +1,8 @@
|
|||||||
import { mockData } from './mock';
|
import { ref } from 'vue';
|
||||||
import { cloneDeep } from 'lodash-es';
|
|
||||||
import { Modal } from 'ant-design-vue';
|
|
||||||
import { createVNode, ref } from 'vue';
|
|
||||||
import { NsMessage } from '/nerv-lib/component';
|
|
||||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
|
||||||
import { http } from '/nerv-lib/util';
|
import { http } from '/nerv-lib/util';
|
||||||
import { origanizemanage } from '/@/api/origanizemanage';
|
import { origanizemanage } from '/@/api/origanizemanage';
|
||||||
export const formConfig = [
|
export const formConfig = (disabled) => {
|
||||||
|
return ref([
|
||||||
{
|
{
|
||||||
field: 'field111',
|
field: 'field111',
|
||||||
component: 'NsChildForm',
|
component: 'NsChildForm',
|
||||||
@@ -20,6 +16,7 @@ export const formConfig = [
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
placeholder: '请输入账号',
|
placeholder: '请输入账号',
|
||||||
maxLength: 20,
|
maxLength: 20,
|
||||||
|
disabled,
|
||||||
},
|
},
|
||||||
rules: [
|
rules: [
|
||||||
{
|
{
|
||||||
@@ -79,6 +76,13 @@ export const formConfig = [
|
|||||||
placeholder: '请输入邮箱',
|
placeholder: '请输入邮箱',
|
||||||
maxLength: 30,
|
maxLength: 30,
|
||||||
},
|
},
|
||||||
|
rules: [
|
||||||
|
{
|
||||||
|
pattern: /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/,
|
||||||
|
message: '请输入正确的邮箱格式',
|
||||||
|
trigger: 'blur',
|
||||||
|
},
|
||||||
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '组织关系',
|
label: '组织关系',
|
||||||
@@ -93,7 +97,8 @@ export const formConfig = [
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
];
|
]);
|
||||||
|
};
|
||||||
const options = ref([]);
|
const options = ref([]);
|
||||||
|
|
||||||
const getUserPerList = (transform, params = {}) => {
|
const getUserPerList = (transform, params = {}) => {
|
||||||
@@ -105,16 +110,6 @@ const getUserPerList = (transform, params = {}) => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
export const formConfig2 = (casData: any) => {
|
export const formConfig2 = (casData: any) => {
|
||||||
// const transForm = (data) => {
|
|
||||||
// data['label'] = data.orgName;
|
|
||||||
// data['value'] = data.orgId;
|
|
||||||
// data['isLeaf'] = false;
|
|
||||||
// data['level'] = 1;
|
|
||||||
// return data;
|
|
||||||
// };
|
|
||||||
// getUserPerList(transForm).then((res) => {
|
|
||||||
// options.value = [...res];
|
|
||||||
// });
|
|
||||||
return ref([
|
return ref([
|
||||||
{
|
{
|
||||||
field: 'information',
|
field: 'information',
|
||||||
@@ -129,9 +124,6 @@ export const formConfig2 = (casData: any) => {
|
|||||||
});
|
});
|
||||||
return labels.join('/');
|
return labels.join('/');
|
||||||
},
|
},
|
||||||
// defaultValue: [1, 1, 3],
|
|
||||||
// options: options,
|
|
||||||
// changeOnSelect: true,
|
|
||||||
loadData: (selectedOptions, options) => {
|
loadData: (selectedOptions, options) => {
|
||||||
console.log(selectedOptions, options, 'selectedOptions, options');
|
console.log(selectedOptions, options, 'selectedOptions, options');
|
||||||
|
|
||||||
|
@@ -73,23 +73,26 @@
|
|||||||
|
|
||||||
<a-modal
|
<a-modal
|
||||||
title="用户信息"
|
title="用户信息"
|
||||||
:width="600"
|
:width="520"
|
||||||
:visible="addformvisible"
|
:visible="addformvisible"
|
||||||
cancelText="取消"
|
cancelText="取消"
|
||||||
@ok="handleOk"
|
@ok="handleOk"
|
||||||
@cancel="handleClose">
|
@cancel="handleClose">
|
||||||
<ns-form ref="modalFormRef" :schemas="formSchema2" :model="formData2" formLayout="vertical" />
|
<ns-form
|
||||||
|
ref="modalFormRef"
|
||||||
|
:wrapperCol="{ span: 24 }"
|
||||||
|
:schemas="formSchema2"
|
||||||
|
:model="formData2"
|
||||||
|
formLayout="vertical" />
|
||||||
</a-modal>
|
</a-modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { computed, createVNode, defineComponent, nextTick, reactive, ref } from 'vue';
|
import { computed, createVNode, defineComponent, reactive, ref, watchEffect } from 'vue';
|
||||||
import { http } from '/nerv-lib/util/http';
|
import { http } from '/nerv-lib/util/http';
|
||||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
|
||||||
import { cloneDeep } from 'lodash-es';
|
|
||||||
import { NsMessage, NsModal } from '/nerv-lib/component';
|
import { NsMessage, NsModal } from '/nerv-lib/component';
|
||||||
import { formConfig, formConfig2 } from './config';
|
import { formConfig, formConfig2 } from './config';
|
||||||
import { origanizemanage, department } from '/@/api/origanizemanage';
|
import { origanizemanage } from '/@/api/origanizemanage';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'OrderListIndex',
|
name: 'OrderListIndex',
|
||||||
@@ -97,14 +100,24 @@
|
|||||||
const mainRef = ref();
|
const mainRef = ref();
|
||||||
const data = reactive({});
|
const data = reactive({});
|
||||||
let formData = ref({});
|
let formData = ref({});
|
||||||
let formData2 = ref({ userRoleList: [1, 1, 3] });
|
let formData2 = ref({});
|
||||||
const formRef = ref();
|
const formRef = ref();
|
||||||
const modalFormRef = ref();
|
const modalFormRef = ref();
|
||||||
const visible = ref(false);
|
const visible = ref(false);
|
||||||
const addformvisible = ref(false);
|
const addformvisible = ref(false);
|
||||||
const searchValue = ref<string>('');
|
const searchValue = ref<string>('');
|
||||||
const searchValue2 = ref<string>('');
|
const searchValue2 = ref<string>('');
|
||||||
const formSchema = formConfig;
|
const disabled = ref(false);
|
||||||
|
|
||||||
|
const opMap: any = ref({
|
||||||
|
type: 'add',
|
||||||
|
fuc: () => {},
|
||||||
|
record: {},
|
||||||
|
});
|
||||||
|
watchEffect(() => {
|
||||||
|
disabled.value = opMap.value.type === 'edit';
|
||||||
|
});
|
||||||
|
const formSchema = formConfig(disabled);
|
||||||
const casData = ref([]);
|
const casData = ref([]);
|
||||||
const formSchema2 = formConfig2(casData);
|
const formSchema2 = formConfig2(casData);
|
||||||
const treeData = ref([]);
|
const treeData = ref([]);
|
||||||
@@ -120,7 +133,8 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 企业树
|
// 企业树
|
||||||
fetch(origanizemanage.queryOrgTree).then((res) => {
|
const getOrgTree = (params?) => {
|
||||||
|
fetch(origanizemanage.queryOrgTree, params).then((res) => {
|
||||||
const otherOrg = res.data[0].listOrg;
|
const otherOrg = res.data[0].listOrg;
|
||||||
// 特殊处理
|
// 特殊处理
|
||||||
treeData.value = res.data;
|
treeData.value = res.data;
|
||||||
@@ -128,22 +142,16 @@
|
|||||||
treeData.value.push({ orgInfo: item } as never);
|
treeData.value.push({ orgInfo: item } as never);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
};
|
||||||
|
getOrgTree();
|
||||||
// 部门树
|
// 部门树
|
||||||
fetch(origanizemanage.queryDeptTree).then((res) => {
|
fetch(origanizemanage.queryDeptTree).then((res) => {
|
||||||
treeData2.value = res.data;
|
treeData2.value = res.data;
|
||||||
});
|
});
|
||||||
const opMap: any = {
|
|
||||||
type: 'add',
|
|
||||||
fuc: () => {},
|
|
||||||
record: {},
|
|
||||||
};
|
|
||||||
|
|
||||||
const onSearch = () => {
|
const onSearch = () => {
|
||||||
console.log(searchValue.value);
|
console.log(searchValue.value);
|
||||||
fetch(origanizemanage.queryOrgTree, { orgName: searchValue.value, orgId }).then((res) => {
|
getOrgTree({ orgName: searchValue.value, orgId });
|
||||||
treeData.value = res.data;
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
const onSearch2 = () => {
|
const onSearch2 = () => {
|
||||||
console.log(searchValue2.value);
|
console.log(searchValue2.value);
|
||||||
@@ -190,7 +198,8 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
opMap.fuc && opMap.fuc({ ...formData.value, userRoleList: userAuthList.value, orgId });
|
opMap.value.fuc &&
|
||||||
|
opMap.value.fuc({ ...formData.value, userRoleList: userAuthList.value, orgId });
|
||||||
visible.value = false;
|
visible.value = false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -225,8 +234,14 @@
|
|||||||
name: 'userAdd',
|
name: 'userAdd',
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
handle: () => {
|
handle: () => {
|
||||||
opMap.type = 'add';
|
opMap.value.type = 'add';
|
||||||
opMap.fuc = (formData: any) => {
|
setTimeout(() => {
|
||||||
|
formData.value = {
|
||||||
|
orgName: JSON.parse(sessionStorage.getItem('userInfo')).orgName,
|
||||||
|
};
|
||||||
|
userAuthList.value.splice(0);
|
||||||
|
});
|
||||||
|
opMap.value.fuc = (formData: any) => {
|
||||||
http.post(origanizemanage.addUser, formData).then(() => {
|
http.post(origanizemanage.addUser, formData).then(() => {
|
||||||
mainRef.value?.nsTableRef.reload();
|
mainRef.value?.nsTableRef.reload();
|
||||||
visible.value = false;
|
visible.value = false;
|
||||||
@@ -353,8 +368,8 @@
|
|||||||
formData.value = record;
|
formData.value = record;
|
||||||
userAuthList.value.push(...record.userRoleInfos);
|
userAuthList.value.push(...record.userRoleInfos);
|
||||||
}, 10);
|
}, 10);
|
||||||
opMap.type = 'edit';
|
opMap.value.type = 'edit';
|
||||||
opMap.fuc = (formData: any) => {
|
opMap.value.fuc = (formData: any) => {
|
||||||
http.post(origanizemanage.editUser, formData).then(() => {
|
http.post(origanizemanage.editUser, formData).then(() => {
|
||||||
mainRef.value?.nsTableRef.reload();
|
mainRef.value?.nsTableRef.reload();
|
||||||
visible.value = false;
|
visible.value = false;
|
||||||
@@ -466,7 +481,7 @@
|
|||||||
params: {},
|
params: {},
|
||||||
},
|
},
|
||||||
// pagination: { defaultPageSize: 10 },
|
// pagination: { defaultPageSize: 10 },
|
||||||
rowKey: 'id',
|
rowKey: 'userId',
|
||||||
});
|
});
|
||||||
const tableConfig2 = {
|
const tableConfig2 = {
|
||||||
// api: {
|
// api: {
|
||||||
|
Reference in New Issue
Block a user