diff --git a/yudao-ui-admin-vue3/src/api/system/role/index.ts b/yudao-ui-admin-vue3/src/api/system/role/index.ts
index efbb75d48..83292c72a 100644
--- a/yudao-ui-admin-vue3/src/api/system/role/index.ts
+++ b/yudao-ui-admin-vue3/src/api/system/role/index.ts
@@ -1,8 +1,24 @@
import request from '@/config/axios'
-import type { RoleVO } from './types'
+
+export type RoleVO = {
+ id: number
+ name: string
+ code: string
+ sort: number
+ status: number
+ type: number
+ createTime: string
+}
+
+export interface RolePageReqVO extends PageParam {
+ name?: string
+ code?: string
+ status?: number
+ createTime?: string[]
+}
// 查询角色列表
-export const getRolePageApi = async (params) => {
+export const getRolePageApi = async (params: RolePageReqVO) => {
return await request.get({ url: '/system/role/page', params })
}
diff --git a/yudao-ui-admin-vue3/src/api/system/role/types.ts b/yudao-ui-admin-vue3/src/api/system/role/types.ts
deleted file mode 100644
index f5e17ea99..000000000
--- a/yudao-ui-admin-vue3/src/api/system/role/types.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-export type RoleVO = {
- id: number
- name: string
- code: string
- sort: number
- status: number
- type: number
- createTime: string
-}
diff --git a/yudao-ui-admin-vue3/src/views/system/role/index.vue b/yudao-ui-admin-vue3/src/views/system/role/index.vue
index a082d4973..666cd8908 100644
--- a/yudao-ui-admin-vue3/src/views/system/role/index.vue
+++ b/yudao-ui-admin-vue3/src/views/system/role/index.vue
@@ -1,42 +1,18 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
-
-
-
-
- {{ dayjs(row.createTime).format('YYYY-MM-DD HH:mm:ss') }}
-
-
+
-
+
@@ -91,10 +67,10 @@
v-if="['create', 'update'].includes(actionType)"
type="primary"
:title="t('action.save')"
- :loading="loading"
+ :loading="actionLoading"
@click="submitForm()"
/>
-
+
@@ -151,56 +127,66 @@
-
-
+
+
diff --git a/yudao-ui-admin-vue3/src/views/system/role/role.data.ts b/yudao-ui-admin-vue3/src/views/system/role/role.data.ts
index 5bfc4f04f..5043cc22a 100644
--- a/yudao-ui-admin-vue3/src/views/system/role/role.data.ts
+++ b/yudao-ui-admin-vue3/src/views/system/role/role.data.ts
@@ -2,7 +2,7 @@ import { reactive } from 'vue'
import { useI18n } from '@/hooks/web/useI18n'
import { required } from '@/utils/formRules'
import { DICT_TYPE } from '@/utils/dict'
-import { CrudSchema, useCrudSchemas } from '@/hooks/web/useCrudSchemas'
+import { VxeCrudSchema, useVxeCrudSchemas } from '@/hooks/web/useVxeCrudSchemas'
// 国际化
const { t } = useI18n()
// 表单校验
@@ -12,82 +12,52 @@ export const rules = reactive({
sort: [required]
})
// CrudSchema
-const crudSchemas = reactive([
- {
- label: t('common.index'),
- field: 'id',
- type: 'index',
- form: {
- show: false
+const crudSchemas = reactive({
+ primaryKey: 'id',
+ primaryType: 'seq',
+ action: true,
+ actionWidth: '400px',
+ columns: [
+ {
+ title: '角色名称',
+ field: 'name',
+ isSearch: true
},
- detail: {
- show: false
- }
- },
- {
- label: '角色名称',
- field: 'name',
- search: {
- show: true
- }
- },
- {
- label: '角色类型',
- field: 'type',
- dictType: DICT_TYPE.SYSTEM_ROLE_TYPE
- },
- {
- label: '角色标识',
- field: 'code',
- search: {
- show: true
- }
- },
- {
- label: '显示顺序',
- field: 'sort',
- form: {
- component: 'InputNumber',
- value: 0
- }
- },
- {
- label: t('common.status'),
- field: 'status',
- dictType: DICT_TYPE.COMMON_STATUS,
- search: {
- show: true
- }
- },
- {
- label: t('common.createTime'),
- field: 'createTime',
- form: {
- show: false
+ {
+ title: '角色类型',
+ field: 'type',
+ dictType: DICT_TYPE.SYSTEM_ROLE_TYPE
},
- detail: {
- show: false
+ {
+ title: '角色标识',
+ field: 'code',
+ isSearch: true
},
- search: {
- show: true,
- component: 'DatePicker',
- componentProps: {
- type: 'daterange',
- valueFormat: 'YYYY-MM-DD HH:mm:ss',
- defaultTime: [new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 2, 1, 23, 59, 59)]
+ {
+ title: '显示顺序',
+ field: 'sort',
+ form: {
+ component: 'InputNumber'
+ }
+ },
+ {
+ title: t('common.status'),
+ field: 'status',
+ dictType: DICT_TYPE.COMMON_STATUS,
+ isSearch: true
+ },
+ {
+ title: t('common.createTime'),
+ field: 'createTime',
+ formatter: 'formatDate',
+ isForm: false,
+ search: {
+ show: true,
+ itemRender: {
+ name: 'XDataTimePicker'
+ }
}
}
- },
- {
- field: 'action',
- width: '450px',
- label: t('table.action'),
- form: {
- show: false
- },
- detail: {
- show: false
- }
- }
-])
-export const { allSchemas } = useCrudSchemas(crudSchemas)
+ ]
+})
+export const { allSchemas } = useVxeCrudSchemas(crudSchemas)