Browse Source

1. 将 BasePage 重命名为 PageParam
2. 增加代码注释
3. 调整 menu 重置表单的逻辑,避免写 2 遍 null 的数据

YunaiV 2 years ago
parent
commit
08c772fede

+ 1 - 1
yudao-ui-admin-vue3/src/api/system/errorCode/index.ts

@@ -9,7 +9,7 @@ export interface ErrorCodeVO {
   createTime: string
 }
 
-export interface ErrorCodePageReqVO extends BasePage {
+export interface ErrorCodePageReqVO extends PageParam {
   type?: number
   applicationName?: string
   code?: number

+ 1 - 1
yudao-ui-admin-vue3/src/api/system/loginLog/index.ts

@@ -12,7 +12,7 @@ export interface LoginLogVO {
   createTime: string
 }
 
-export interface LoginLogReqVO extends BasePage {
+export interface LoginLogReqVO extends PageParam {
   userIp?: string
   username?: string
   status?: boolean

+ 1 - 0
yudao-ui-admin-vue3/src/api/system/menu/index.ts

@@ -20,6 +20,7 @@ export interface MenuPageReqVO {
   name?: string
   status?: number
 }
+
 // 查询菜单(精简)列表
 export const listSimpleMenusApi = () => {
   return request.get({ url: '/system/menu/list-all-simple' })

+ 1 - 1
yudao-ui-admin-vue3/src/api/system/notice/index.ts

@@ -12,7 +12,7 @@ export interface NoticeVO {
   updateTime: string
 }
 
-export interface NoticePageReqVO extends BasePage {
+export interface NoticePageReqVO extends PageParam {
   title?: string
   status?: number
 }

+ 1 - 1
yudao-ui-admin-vue3/src/api/system/oauth2/token.ts

@@ -11,7 +11,7 @@ export interface OAuth2TokenVO {
   expiresTime: string
 }
 
-export interface OAuth2TokenPageReqVO extends BasePage {
+export interface OAuth2TokenPageReqVO extends PageParam {
   code?: string
   name?: string
   status?: number

+ 1 - 1
yudao-ui-admin-vue3/src/api/system/operatelog/index.ts

@@ -22,7 +22,7 @@ export type OperateLogVO = {
   resultMsg: string
   resultData: string
 }
-export interface OperateLogPageReqVO extends BasePage {
+export interface OperateLogPageReqVO extends PageParam {
   module?: string
   userNickname?: string
   type?: number

+ 2 - 1
yudao-ui-admin-vue3/src/api/system/post/index.ts

@@ -10,7 +10,7 @@ export interface PostVO {
   createTime?: string
 }
 
-export interface PostPageReqVO extends BasePage {
+export interface PostPageReqVO extends PageParam {
   code?: string
   name?: string
   status?: number
@@ -31,6 +31,7 @@ export const getPostPageApi = async (params: PostPageReqVO) => {
 export const listSimplePostsApi = async () => {
   return await request.get({ url: '/system/post/list-all-simple' })
 }
+
 // 查询岗位详情
 export const getPostApi = async (id: number) => {
   return await request.get({ url: '/system/post/get?id=' + id })

+ 9 - 18
yudao-ui-admin-vue3/src/views/system/menu/index.vue

@@ -277,6 +277,7 @@ import { required } from '@/utils/formRules.js'
 import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
 import { SystemMenuTypeEnum, CommonStatusEnum } from '@/utils/constants'
 import { handleTree } from '@/utils/tree'
+import { deepCopy } from 'windicss/utils'
 
 const { t } = useI18n() // 国际化
 const message = useMessage() // 消息弹窗
@@ -291,7 +292,7 @@ const actionType = ref('') // 操作按钮的类型
 const actionLoading = ref(false) // 遮罩层
 // 新增和修改的表单值
 const formRef = ref<FormInstance>()
-const menuForm = ref<MenuApi.MenuVO>({
+const menuFormNull = {
   id: 0,
   name: '',
   permission: '',
@@ -305,7 +306,8 @@ const menuForm = ref<MenuApi.MenuVO>({
   visible: true,
   keepAlive: true,
   createTime: ''
-})
+}
+const menuForm = ref<MenuApi.MenuVO>(menuFormNull)
 // 新增和修改的表单校验
 const rules = reactive({
   name: [required],
@@ -323,6 +325,7 @@ const menuProps = {
   value: 'id'
 }
 const menuOptions = ref<any[]>([]) // 树形结构
+// 获取下拉框[上级菜单]的数据
 const getTree = async () => {
   menuOptions.value = []
   const res = await MenuApi.listSimpleMenusApi()
@@ -336,6 +339,7 @@ const queryParams = reactive<MenuApi.MenuPageReqVO>({
   name: undefined,
   status: undefined
 })
+// 执行查询
 const getList = async () => {
   tableLoading.value = true
   const res = await MenuApi.getMenuListApi(queryParams)
@@ -368,27 +372,14 @@ const setDialogTile = async (type: string) => {
 // 新增操作
 const handleCreate = () => {
   setDialogTile('create')
+  // 重置表单
   formRef.value?.resetFields()
-  menuForm.value = {
-    id: 0,
-    name: '',
-    permission: '',
-    type: SystemMenuTypeEnum.DIR,
-    sort: 1,
-    parentId: 0,
-    path: '',
-    icon: '',
-    component: '',
-    status: CommonStatusEnum.ENABLE,
-    visible: true,
-    keepAlive: true,
-    createTime: ''
-  }
+  menuForm.value = deepCopy(menuFormNull)
 }
 
 // 修改操作
 const handleUpdate = async (rowId: number) => {
-  setDialogTile('update')
+  await setDialogTile('update')
   // 设置数据
   const res = await MenuApi.getMenuApi(rowId)
   menuForm.value = res

+ 2 - 1
yudao-ui-admin-vue3/types/global.d.ts

@@ -37,10 +37,11 @@ declare global {
     data: T extends any ? T : T & any
   }
 
-  declare interface BasePage {
+  declare interface PageParam {
     pageSize?: number
     pageNo?: number
   }
+
   declare interface Tree {
     id: number
     name: string