From df28a6407a79e36c200c677802e4ace1ebd3319c Mon Sep 17 00:00:00 2001 From: kun <1422840143@qq.com> Date: Mon, 6 Nov 2023 10:19:31 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/DialogForm/index.vue | 11 +- src/components/TreeFilter/index.scss | 1 + src/components/TreeFilter/index.vue | 4 +- src/stores/index.ts | 5 + src/stores/interface/index.ts | 1 + .../videoMonitoring/index.scss | 3 + .../userManagement/roleManage/index.vue | 138 ++++++++++++------ src/views/login/components/LoginForm.vue | 1 + 8 files changed, 111 insertions(+), 53 deletions(-) diff --git a/src/components/DialogForm/index.vue b/src/components/DialogForm/index.vue index 93d01fe..07b1547 100644 --- a/src/components/DialogForm/index.vue +++ b/src/components/DialogForm/index.vue @@ -27,7 +27,6 @@ :style="{ display: item.hidden == true ? 'none' : '' }" style="width: 90%; display: flex; align-items: center" :prop="item.prop" - v-if="!item.hidden" > - {{ - option.label - }} + {{ option.label }} { - emit("changeForm", form); -}; // 确定按钮触发 const confirm = async (formEl: FormInstance | undefined) => { if (!formEl) return; diff --git a/src/components/TreeFilter/index.scss b/src/components/TreeFilter/index.scss index 8013b97..7af94e3 100644 --- a/src/components/TreeFilter/index.scss +++ b/src/components/TreeFilter/index.scss @@ -4,6 +4,7 @@ height: 100%; padding: 18px; margin-right: 10px; + margin-top: 10px; .title { margin: 0 0 15px; font-size: 22px; diff --git a/src/components/TreeFilter/index.vue b/src/components/TreeFilter/index.vue index b906940..438d8b1 100644 --- a/src/components/TreeFilter/index.vue +++ b/src/components/TreeFilter/index.vue @@ -1,14 +1,14 @@ - - - + + + + + + + + + + + + 启用 + 禁用 + + + + + 政务 + 企业 + 项目 + + + + + + + + + + + + + @@ -88,11 +114,29 @@ import { } from "@/api/modules/goverment"; import DialogForm from "@/components/DialogForm/index.vue"; import { getentNamelist, getproNamelist } from "@/api/modules/goverment"; +import type { FormRules, FormInstance } from "element-plus"; // import { getProjectRecordPage } from "@/api/modules/project"; import { Delete } from "@element-plus/icons-vue"; import { GlobalStore } from "@/stores"; - +const ruleFormRef = ref(); +const typeList = ref([]); +const rules = reactive({ + roleName: [ + { + required: true, + message: "请输入角色名称", + trigger: "blur" + } + ], + priority: [ + { + required: true, + message: "请输入角色顺序", + trigger: "blur" + } + ] +}); const treeRef = ref(null); const datas = reactive([]); @@ -109,7 +153,7 @@ const title = ref(""); const formData = ref({ roleName: "", priority: 1, - state: 0, + state: 1, roleType: 2, sn: "", roleDesc: "" @@ -237,24 +281,23 @@ const dataCallback = (data: any) => { // 获取下拉数据 const getSelectData = async () => { + typeList.value.length = 0; if (formData.value.roleType == 3) { const res = await getentNamelist({}); - formConfig.formItemConfig[4].data = res.result.map(item => { + typeList.value = res.result.map(item => { return { label: item.enterpriseName, value: item.enterpriseSn }; }); - console.log(formConfig.formItemConfig[4].data, "111111"); } else if (formData.value.roleType == 4) { const res = await getproNamelist({}); - formConfig.formItemConfig[4].data = res.result.map(item => { + typeList.value = res.result.map(item => { return { label: item.projectName, value: item.projectSn }; }); - console.log(formConfig.formItemConfig[4].data, "22222"); } }; const closeDrawer = done => { @@ -309,7 +352,7 @@ const handleAddItem = (index: number, row: any) => { formData.value = reactive({ roleName: "", priority: 1, - state: 0, + state: 1, roleType: 2, sn: "", roleDesc: "" @@ -317,6 +360,7 @@ const handleAddItem = (index: number, row: any) => { } else { title.value = "编辑角色"; formData.value = reactive({ ...row }); + getSelectData(); } visible.value = true; }; @@ -336,29 +380,31 @@ const handleEditItem = async (row: any) => { treeRef.value.setCheckedKeys(res.result.map(item => item.authorityId)); }); }; -// 更新表单数据 -const changeForm = (form: any) => { - console.log(form); - formData.value = { ...form }; - if (form.roleType == 2) { - formConfig.formItemConfig[4].hidden = true; - } else { - formConfig.formItemConfig[4].hidden = false; - } - getSelectData(); -}; -const saveItem = async (form: any) => { - if (form.roleId) { - // console.log(form.dictCode); - const res = await editRole(form); - proTable.value.getTableList(); - ElMessage.success("编辑成功"); - } else { - const res = await addRole(form); - ElMessage.success("新增成功"); - proTable.value.getTableList(); - } - visible.value = false; +const saveItem = async (formEl: FormInstance | undefined, form: any) => { + // 标记表单校验 + if (!formEl) return; + await formEl.validate(async (valid, fields) => { + if (valid) { + if (form.roleId) { + // console.log(form.dictCode); + const res = await editRole(form); + proTable.value.getTableList(); + ElMessage.success("编辑成功"); + } else { + const res = await addRole(form); + ElMessage.success("新增成功"); + proTable.value.getTableList(); + } + visible.value = false; + } else { + console.log("error submit!", fields); + ElMessage({ + showClose: true, + message: "请完善表单信息!", + type: "error" + }); + } + }); }; // 删除用户信息 @@ -406,5 +452,13 @@ const changeTreeFilter = () => { font-size: 18px; color: var(--el-menu-text-color); } + .el-input-number__decrease { + border-right-color: var(--el-color-primary); + color: var(--el-menu-text-color); + } + .el-input-number__increase { + border-left-color: var(--el-color-primary); + color: var(--el-menu-text-color); + } } diff --git a/src/views/login/components/LoginForm.vue b/src/views/login/components/LoginForm.vue index d0ed268..19b3dad 100644 --- a/src/views/login/components/LoginForm.vue +++ b/src/views/login/components/LoginForm.vue @@ -79,6 +79,7 @@ const login = (formEl: FormInstance | undefined) => { globalStore.setToken(result.token); globalStore.setAccount(result.account); globalStore.setAccountType(result.accountType); + globalStore.setEnterpriseType(result.enterpriseType); globalStore.setProjectDateAuth(result.projectDateAuth); globalStore.setIsManager(result.isManager); //我已知晓