From 3a22df383af6fc137fd66cc29408b120619ee95f Mon Sep 17 00:00:00 2001
From: liudong <liudong>
Date: 星期五, 16 八月 2024 20:25:11 +0800
Subject: [PATCH] 会话页面开发
---
src/views/authority/role/index.vue | 73 ++++++++++++++++++++++++------------
1 files changed, 48 insertions(+), 25 deletions(-)
diff --git a/src/views/authority/role/index.vue b/src/views/authority/role/index.vue
index baa7842..48ceba2 100644
--- a/src/views/authority/role/index.vue
+++ b/src/views/authority/role/index.vue
@@ -111,8 +111,8 @@
@cancel="handleCancel(1)"
@ok="editHandleOk"
>
- <a-form :model="editform">
- <a-form-item required field="roleName" label="瑙掕壊鍚�">
+ <a-form ref="formRef" :model="editform">
+ <a-form-item required field="roleName" label="瑙掕壊鍚�" :rules="[{required:true,message:'瑙掕壊鍚嶅繀濉�'},{maxLength:50,message:'闀垮害涓嶈秴杩�50'}]">
<a-input v-model="editform.roleName" />
</a-form-item>
<a-form-item field="remark" label="澶囨敞">
@@ -142,7 +142,6 @@
v-model:expanded-keys="expandKdysMenu"
:checkable="true"
:data="treeDataMenu"
- :show-line="showLineMenu"
@check="onCheckMenu"
:fieldNames="{
key: 'menuId',
@@ -193,8 +192,8 @@
</a-checkbox>
</a-checkbox-group>
<a-checkbox-group
- v-model="checkedKeysDialog"
- @change="onCheckDialog"
+ v-model="checkedKeysAgent"
+ @change="onCheckAgent"
>
<a-checkbox
v-for="(agent, index) of AgentList"
@@ -248,6 +247,13 @@
@close="handleDialogRemove(tag)"
>
{{ tag.dialogName }}
+ </a-tag>
+ <a-tag
+ v-for="(tag, index) of checkStrictlyAgent"
+ :key="tag.agentId"
+ @close="handleDialogRemove(tag)"
+ >
+ {{ tag.agentTitle }}
</a-tag>
</a-space>
</a-card>
@@ -414,7 +420,7 @@
(tag) => tag !== key
);
};
-
+ let formRef = ref();
const basePagination: Pagination = {
current: 1,
pageSize: 15,
@@ -480,6 +486,7 @@
const editResourceHandleOk = async () => {
let resources: Array = [],
dialogs: Array = [],
+ agents: Array = [],
Knowledges: Array = [],
role: Role = { roleId: selectRole.value.roleId };
checkStrictlyMenu.value.forEach((val) => {
@@ -497,32 +504,39 @@
});
role.dialogs = dialogs;
+ checkStrictlyAgent.value.forEach((val) => {
+ agents.push(val.agentId);
+ });
+ role.agents = agents;
+
await RoleEdit(role).then((res) => {
fetchData();
});
};
- const editHandleOk = async () => {
- if(editform.value.roleName==""){
- Modal.warning({
- title: '璀﹀憡',
- content: '鍚嶇О涓嶈兘涓虹┖'
- });
- return;
- }
- if (editform.value.roleId.length > 0) {
- await RoleEdit({
- ...editform.value,
- } as unknown as Role).then((res) => {
- fetchData();
- });
+ const cb = async (err) => {
+ if (err) {
+ visible.value = true;
} else {
- await RoleAdd({
- ...editform.value,
- } as unknown as Role).then((res) => {
- fetchData();
- });
+ if (editform.value.roleId.length > 0) {
+ await RoleEdit({
+ ...editform.value,
+ } as unknown as Role).then((res) => {
+ fetchData();
+ });
+ } else {
+ await RoleAdd({
+ ...editform.value,
+ } as unknown as Role).then((res) => {
+ fetchData();
+ });
+ }
}
+
+ };
+
+ const editHandleOk = () => {
+ formRef.value.validate(cb);
};
const operation = async (t, record) => {
if (t == 0) {
@@ -580,6 +594,15 @@
checkedKeysDialog.value.push(val.id);
});
}
+ if (record.agents) {
+ record.agents.forEach((val) => {
+ checkStrictlyAgent.value.push({
+ agentId: val.id,
+ agentTitle: val.title,
+ });
+ checkedKeysAgent.value.push(val.id);
+ });
+ }
}
};
--
Gitblit v1.8.0