diff --git a/src/assets/css/index.css b/src/assets/css/index.css index 57b282d9032c42c29746592a026ed006866c8b8f..359d9f9eb843ea0ba8a2a7d80c9f28dc1a06ea23 100644 --- a/src/assets/css/index.css +++ b/src/assets/css/index.css @@ -243,6 +243,7 @@ div { .el-dialog__header { border-bottom: 1px solid #edf0ff; padding: 16px; + margin-right: 0; } .el-dialog__title { @@ -1518,10 +1519,6 @@ border-radius:8px; color: #404a62; padding-left: 20px; } -.name_btn { - color: #3759be; - cursor: pointer; -} .fr { float: right; } @@ -1539,4 +1536,15 @@ border-radius:8px; vertical-align: baseline; cursor: pointer; } +/* 可点击文字颜色、指针样式 */ +.can_click_text { + cursor: pointer; + color: #3759be; +} +.can_click_text:hover { + color: #738bd2; +} +.can_click_text:active { + color: #2c4798; +} diff --git a/src/bg-ui/bg-table-btns.vue b/src/bg-ui/bg-table-btns.vue index 53e6fe18e43a1574f3c270d6c908cede0c421ac5..f2adb807ce35e18bf1029c136af180a803201c2f 100644 --- a/src/bg-ui/bg-table-btns.vue +++ b/src/bg-ui/bg-table-btns.vue @@ -1,6 +1,7 @@ diff --git a/src/page/main/config/dict/index.vue b/src/page/main/config/dict/index.vue index ecbea23f93b6cbd43b26bb8b35f032ea8cd82191..d02af739e714457fd489e3f3cfb2829dfb273420 100644 --- a/src/page/main/config/dict/index.vue +++ b/src/page/main/config/dict/index.vue @@ -9,7 +9,7 @@
- +
@@ -164,6 +164,7 @@ import { reactive, ref,onBeforeMount,toRefs,computed, watch, nextTick } from 'vu import { useRouter } from 'vue-router'; import { ElMessage } from 'element-plus' import axios from '../../../../request/http.js' +import { Search } from '@element-plus/icons-vue' const bgForm = ref(null) const state = reactive({ bgForm, diff --git a/src/page/main/develop/account/index.vue b/src/page/main/develop/account/index.vue index 289756c5b9175d1c5be9552cd3f8e3aab271f8ee..b56519343dbeb9153da836ffed315f7cb00a2374 100644 --- a/src/page/main/develop/account/index.vue +++ b/src/page/main/develop/account/index.vue @@ -50,14 +50,14 @@ 重置密码 已选择{{selected.length}} - 清空 + 清空
@@ -65,13 +65,13 @@ diff --git a/src/page/main/develop/menu/index.vue b/src/page/main/develop/menu/index.vue index 1c254706eda777897b16c09062e8e2aa5efda3a0..2c3d232a54d06b33cc033c24b7ea2dce95b07caf 100644 --- a/src/page/main/develop/menu/index.vue +++ b/src/page/main/develop/menu/index.vue @@ -55,7 +55,7 @@
新建本级
-
+
新建下级
@@ -217,6 +217,15 @@ const handleNodeClick = (data) => { state.selectData = data menuFormRef.value.setForm(state.selectData) closeAction() + if (menuFormRef) { + nextTick().then(() => { + menuFormRef.value.menuRef.validate(valid => { + if (!valid) { + menuFormRef.value.menuRef.clearValidate() + } + }) + }) + } // 清除表单验证 } // 菜单树节点点击 const filterNode = (val,data) => { @@ -237,6 +246,7 @@ const fileAction = (val,data,parent,disabled=false) => { state: 1, menu_url: "", menu_logo: "", + level: data.level } state.menuTree.insertAfter(newChild,parent? parent.Child[parent.Child.length-1] : state.data[state.data.length -1]) state.menuTree && state.menuTree.setCurrentKey(newChild.menu_id); @@ -250,11 +260,12 @@ const fileAction = (val,data,parent,disabled=false) => { let newChild = { menu_name: "新菜单", menu_id: 'new' + state.newMenuId, - menu_type: 0, + menu_type: data.menu_type == 0 ? 0 : data.menu_type == 1 ? 1 : 2, dict_group_id: "", state: 1, menu_url: "", menu_logo: "", + p_menu_type: data.menu_type } state.menuTree.append(newChild,data) state.menuTree && state.menuTree.setCurrentKey(newChild.menu_id); diff --git a/src/page/main/develop/menu/menu-form.vue b/src/page/main/develop/menu/menu-form.vue index 8bf536f55843a70b8a689c00d4f4358dcdd63c9d..b05a821a103d643e1f4b481ff62b6062d71b9ba1 100644 --- a/src/page/main/develop/menu/menu-form.vue +++ b/src/page/main/develop/menu/menu-form.vue @@ -11,14 +11,14 @@ - + - 目录 - 菜单 + 目录 + 菜单 子页面 - + - + - +
@@ -129,7 +129,7 @@ const state = reactive({ { required: true, message: '请选择菜单分组', trigger: 'change' }, ], menu_url: [ - { required: true, message: '请输入菜单路径', trigger: 'blur' }, + { required: true, message: '请输入菜单路径', trigger: 'blur' }, ] }, groupList: [], @@ -139,6 +139,8 @@ const state = reactive({ showIconArr: [], // 展示的图标 timer: null, radioDisabled: false, + topLevel: false, + typeDisFlag: null, }) const getGroupList = () => { @@ -180,6 +182,13 @@ const searchIcon = () => { const setForm = (data) => { console.log(data) + if (data.level && data.level == 1) { + state.topLevel = true + }else { + state.topLevel = false + } + state.typeDisFlag = data.p_menu_type + console.log(state.topLevel) if (data.id) { // 编辑状态 state.radioDisabled = true }else { @@ -217,6 +226,8 @@ const { showIconArr, icon_search, radioDisabled, + topLevel, + typeDisFlag, } = toRefs(state) defineExpose({ setForm , menuForm, menuRef }) diff --git a/src/page/main/system/organization/index.vue b/src/page/main/system/organization/index.vue index 2e8d100e009d9df77fec0e62dfd6c08ae17b4260..e432b6e9508d52d97870afbb45e1344a7bae3e1f 100644 --- a/src/page/main/system/organization/index.vue +++ b/src/page/main/system/organization/index.vue @@ -53,7 +53,7 @@
@@ -61,13 +61,13 @@ diff --git a/src/page/main/system/role/add/role_form.vue b/src/page/main/system/role/add/role_form.vue index c8121e1d32eddf533c96411cf450a8416fa92033..f355f43fad26d0fd6d5f31601668b6a24448f5d9 100644 --- a/src/page/main/system/role/add/role_form.vue +++ b/src/page/main/system/role/add/role_form.vue @@ -5,7 +5,7 @@ 系统管理 角色管理 - 新建 + {{route.query.id ? "编辑" : "新建"}}
@@ -95,7 +95,7 @@ const roleState = reactive({ data_purview: 3, state: 1, permission_arr: [], - }, + }, // 表单项 rules: { role_name: [ { required: true, message: "请输入角色名称", trigger: "blur" }, @@ -112,13 +112,13 @@ const roleState = reactive({ permission_arr: [ { required: true, type: "array", validator: checkMenuLength, trigger: "change" } ] - }, + }, // 表单校验规则 defaultProps: { name: 'menu_name', value: 'id', children: 'Child', - }, - permissionData: [], + }, // 菜单框默认配置 + permissionData: [], // 菜单数据 }) const getMenuTree = () => { axios @@ -130,22 +130,37 @@ const getMenuTree = () => { ElMessage.error(res.data.data) } }) -} +} // 获取菜单数据 const changeMenu = (val) => { roleState.formData.permission_arr = val -} +} // 修改选中的菜单 + const getRoleDetail = () => { axios .get(`/apaas/system/v5/role/detail/${route.query.id}`) .then((res) => { if (res.data.code == 200) { - console.log(res.data.data) + let { role_name, role_desc, data_purview, state, menus } = res.data.data + let permission_arr = [] + if (menus && menus.length > 0) { + menus.forEach(e => { + permission_arr.push(e.id) + }) + } + roleState.formData = { + role_name, + role_desc, + data_purview, + state, + permission_arr:[...permission_arr] + } + console.log(roleState.formData.permission_arr) }else { ElMessage.error(res.data.data) } }) -} +} // 获取角色详情 const saveRole = () => { roleState.form.validate(valid => { @@ -169,7 +184,7 @@ const saveRole = () => { } }) }else { // 编辑 - params.id = route.query.id + params.id = +route.query.id axios .post(`/apaas/system/v5/role/update`,params) .then((res) => { @@ -183,10 +198,12 @@ const saveRole = () => { } } }) -} +} // 新增或编辑角色的保存 + onBeforeMount(() => { getMenuTree() if (route.query.id) { + // 有id表示是编辑,请求详情,回显 getRoleDetail() } }) diff --git a/src/page/main/system/role/index.vue b/src/page/main/system/role/index.vue index 2b510b8d164b23442138526b06f8065df6480071..7b14e8b508418307b2b739824689d466ca515568 100644 --- a/src/page/main/system/role/index.vue +++ b/src/page/main/system/role/index.vue @@ -22,20 +22,26 @@ 批量删除 +
+ 已选择 + {{selection.length}} + + 清空 +
+ \ No newline at end of file