Pre Merge pull request !43 from 尘墨/main

This commit is contained in:
尘墨 2025-06-16 03:17:15 +00:00 committed by Gitee
commit 2db2be594c
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
53 changed files with 335 additions and 78 deletions

View File

@ -12,8 +12,9 @@ setupVbenVxeTable({
configVxeTable: (vxeUI) => {
vxeUI.setConfig({
grid: {
align: 'center',
border: false,
align: 'left',
border: true,
headerAlign: 'center',
minHeight: 180,
formConfig: {
// 全局禁用vxe-table的表单配置使用formOptions
@ -33,9 +34,9 @@ setupVbenVxeTable({
showOverflow: true,
pagerConfig: {
// 默认条数
pageSize: 10,
pageSize: 15,
// 分页可选条数
pageSizes: [10, 20, 30, 40, 50],
pageSizes: [15, 30, 50, 100, 200],
},
rowConfig: {
// 鼠标移入行显示 hover 样式

View File

@ -25,7 +25,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '主键',
field: 'id',

View File

@ -22,6 +22,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_COMMON_STATUS),
},
fieldName: 'status',
@ -35,10 +36,17 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '用户账号',
field: 'userName',
minWidth: 120,
width: 120,
},
{
title: '登录平台',
@ -47,11 +55,15 @@ export const columns: VxeGridProps['columns'] = [
{
title: 'IP地址',
field: 'ipaddr',
align: 'center',
minWidth: 120,
width: 120,
},
{
title: 'IP地点',
field: 'loginLocation',
width: 200,
minWidth: 120,
width: 120,
},
{
title: '浏览器',
@ -84,6 +96,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '登录结果',
field: 'status',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.status, DictEnum.SYS_COMMON_STATUS);
@ -97,6 +112,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '日期',
field: 'loginTime',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -30,6 +30,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -20,6 +20,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_OPER_TYPE),
},
fieldName: 'businessType',
@ -33,6 +34,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_COMMON_STATUS),
},
fieldName: 'status',
@ -49,11 +51,19 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{ field: 'title', title: '系统模块' },
{
title: '操作类型',
field: 'businessType',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.businessType, DictEnum.SYS_OPER_TYPE);
@ -66,6 +76,9 @@ export const columns: VxeGridProps['columns'] = [
{
field: 'status',
title: '操作状态',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.status, DictEnum.SYS_COMMON_STATUS);

View File

@ -32,6 +32,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
fieldName: 'status',
@ -29,7 +30,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '客户端ID',
field: 'clientId',
@ -86,6 +92,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '状态',
field: 'status',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: 'status',
},
@ -137,9 +146,9 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
mode: 'multiple',
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_GRANT_TYPE),
},
fieldName: 'grantTypeList',
@ -149,6 +158,7 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
getPopupContainer,
options: getDictOptions(DictEnum.SYS_DEVICE_TYPE),

View File

@ -28,6 +28,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_YES_NO),
},
@ -35,7 +36,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '参数名称',
field: 'configName',
@ -51,7 +57,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '系统内置',
field: 'configType',
width: 120,
align: 'center',
minWidth: 90,
width: 90,
slots: {
default: ({ row }) => {
return renderDict(row.configType, DictEnum.SYS_YES_NO);
@ -63,8 +71,11 @@ export const columns: VxeGridProps['columns'] = [
field: 'remark',
},
{
title: '创建时间',
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -26,6 +26,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -17,6 +17,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
@ -38,10 +39,16 @@ export const columns: VxeGridProps['columns'] = [
{
field: 'orderNum',
title: '排序',
align: 'center',
minWidth: 100,
width: 100,
},
{
field: 'status',
title: '状态',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.status, DictEnum.SYS_NORMAL_DISABLE);
@ -51,6 +58,9 @@ export const columns: VxeGridProps['columns'] = [
{
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',
@ -105,6 +115,7 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
// 选中了就只能修改 不能重置为无负责人
allowClear: false,
getPopupContainer,

View File

@ -22,6 +22,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -13,7 +13,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '字典标签',
field: 'cssClass',
@ -31,15 +36,21 @@ export const columns: VxeGridProps['columns'] = [
{
title: '字典排序',
field: 'dictSort',
align: 'center',
minWidth: 100,
width: 100,
},
{
title: '备注',
field: 'remark',
},
{
title: '创建时间',
field: 'createTime',
},
// {
// title: '备注',
// field: 'remark',
// },
// {
// field: 'createTime',
// title: '创建时间',
// align: 'center',
// minWidth: 160,
// width: 160,
// },
{
field: 'action',
fixed: 'right',

View File

@ -31,6 +31,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -17,7 +17,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '字典名称',
field: 'dictName',
@ -26,14 +31,17 @@ export const columns: VxeGridProps['columns'] = [
title: '字典类型',
field: 'dictType',
},
{
title: '备注',
field: 'remark',
},
{
title: '创建时间',
field: 'createTime',
},
// {
// title: '备注',
// field: 'remark',
// },
// {
// field: 'createTime',
// title: '创建时间',
// align: 'center',
// minWidth: 160,
// width: 160,
// },
{
field: 'action',
fixed: 'right',

View File

@ -29,6 +29,7 @@ const formOptions: VbenFormProps = {
labelWidth: 70,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
@ -30,6 +31,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_SHOW_HIDE),
},
@ -86,8 +88,10 @@ export const columns: VxeGridProps['columns'] = [
},
{
title: '排序',
align: 'center',
minWidth: 100,
width: 100,
field: 'orderNum',
width: 120,
},
{
title: '组件类型',
@ -119,6 +123,8 @@ export const columns: VxeGridProps['columns'] = [
{
title: '状态',
field: 'status',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
@ -129,6 +135,8 @@ export const columns: VxeGridProps['columns'] = [
{
title: '显示',
field: 'visible',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
@ -137,8 +145,11 @@ export const columns: VxeGridProps['columns'] = [
},
},
{
title: '创建时间',
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -28,6 +28,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_NOTICE_TYPE),
},
@ -30,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '公告标题',
field: 'noticeTitle',
@ -38,7 +44,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '公告类型',
field: 'noticeType',
width: 120,
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.noticeType, DictEnum.SYS_NOTICE_TYPE);
@ -48,7 +56,9 @@ export const columns: VxeGridProps['columns'] = [
{
title: '状态',
field: 'status',
width: 120,
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.status, DictEnum.SYS_NOTICE_STATUS);
@ -61,8 +71,11 @@ export const columns: VxeGridProps['columns'] = [
width: 150,
},
{
title: '创建时间',
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -20,6 +20,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -28,6 +28,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: [
{ label: '是', value: '0' },
{ label: '否', value: '1' },
@ -39,7 +40,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '配置名称',
field: 'configKey',

View File

@ -27,6 +27,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',

View File

@ -30,7 +30,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '文件名',
field: 'fileName',

View File

@ -44,6 +44,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -21,6 +21,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
@ -30,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '岗位编码',
field: 'postCode',
@ -45,11 +51,17 @@ export const columns: VxeGridProps['columns'] = [
},
{
title: '排序',
align: 'center',
minWidth: 100,
width: 100,
field: 'postSort',
},
{
title: '状态',
field: 'status',
align: 'center',
minWidth: 100,
width: 100,
slots: {
default: ({ row }) => {
return renderDict(row.status, DictEnum.SYS_NORMAL_DISABLE);
@ -57,8 +69,11 @@ export const columns: VxeGridProps['columns'] = [
},
},
{
title: '创建时间',
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -26,6 +26,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -15,7 +15,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '用户账号',
field: 'userName',

View File

@ -29,6 +29,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -34,6 +34,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
fieldName: 'status',
@ -47,7 +48,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '角色名称',
field: 'roleName',
@ -78,16 +84,25 @@ export const columns: VxeGridProps['columns'] = [
},
{
title: '排序',
align: 'center',
minWidth: 100,
width: 100,
field: 'roleSort',
},
{
title: '状态',
field: 'status',
title: '状态',
slots: { default: 'status' },
align: 'center',
minWidth: 100,
width: 100,
},
{
title: '创建时间',
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',
@ -132,6 +147,7 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
getPopupContainer,
@ -205,6 +221,7 @@ export const authModalSchemas: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
getPopupContainer,
options: authScopeOptions,

View File

@ -32,6 +32,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -31,7 +31,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '租户编号',
field: 'tenantId',
@ -177,6 +182,7 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
},
fieldName: 'packageId',

View File

@ -33,6 +33,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -10,7 +10,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '套餐名称',
field: 'packageName',

View File

@ -30,6 +30,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -26,6 +26,7 @@ export const querySchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
options: getDictOptions(DictEnum.SYS_NORMAL_DISABLE),
},
@ -40,27 +41,34 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
field: 'userName',
title: '名称',
minWidth: 80,
},
{
field: 'nickName',
title: '昵称',
minWidth: 130,
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
field: 'avatar',
title: '头像',
slots: { default: 'avatar' },
align: 'center',
minWidth: 80,
width: 80,
},
{
field: 'userName',
title: '用户账号',
minWidth: 140,
},
{
field: 'nickName',
title: '用户昵称',
minWidth: 140,
},
{
field: 'deptName',
title: '部门',
minWidth: 120,
title: '所属部门',
minWidth: 140,
},
{
field: 'phonenumber',
@ -68,18 +76,24 @@ export const columns: VxeGridProps['columns'] = [
formatter({ cellValue }) {
return cellValue || '暂无';
},
align: 'center',
width: 120,
minWidth: 120,
},
{
field: 'status',
title: '状态',
slots: { default: 'status' },
align: 'center',
minWidth: 100,
width: 100,
},
{
field: 'createTime',
title: '创建时间',
minWidth: 150,
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',
@ -177,9 +191,9 @@ export const drawerSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
mode: 'multiple',
optionFilterProp: 'label',
optionLabelProp: 'label',
placeholder: '请先选择部门',
},

View File

@ -59,6 +59,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',

View File

@ -29,7 +29,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
field: 'tableName',
title: '表名称',
@ -45,10 +50,16 @@ export const columns: VxeGridProps['columns'] = [
{
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'updateTime',
title: '更新时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -50,6 +50,7 @@ export const formSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
getPopupContainer,
options: [
@ -65,6 +66,7 @@ export const formSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
getPopupContainer,
},
dependencies: {
@ -79,6 +81,7 @@ export const formSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
},
dependencies: {
@ -93,6 +96,7 @@ export const formSchema: FormSchemaGetter = () => [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: false,
},
dependencies: {

View File

@ -34,6 +34,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',

View File

@ -37,7 +37,7 @@ const formOptions: VbenFormProps = {
labelWidth: 60,
},
showCollapseButton: false,
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3',
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-4',
};
const gridOptions: VxeGridProps = {
@ -48,8 +48,10 @@ const gridOptions: VxeGridProps = {
},
columns: [
{
align: 'center',
type: 'checkbox',
width: 60,
width: 45,
resizable: false,
},
{
title: '表名称',
@ -64,16 +66,27 @@ const gridOptions: VxeGridProps = {
{
title: '创建时间',
field: 'createTime',
align: 'center',
minWidth: 160,
width: 160,
},
{
title: '更新时间',
field: 'updateTime',
align: 'center',
minWidth: 160,
width: 160,
},
],
keepSource: true,
size: 'small',
minHeight: 400,
pagerConfig: {},
pagerConfig: {
//
pageSize: 10,
//
pageSizes: [10, 20, 30, 40, 50],
},
proxyConfig: {
ajax: {
query: async ({ page }, formValues = {}) => {
@ -138,7 +151,7 @@ async function handleSubmit() {
</script>
<template>
<BasicModal class="w-[800px]" title="导入表">
<BasicModal class="w-[1000px]" title="导入表">
<BasicTable />
</BasicModal>
</template>

View File

@ -27,6 +27,9 @@ export const columns: VxeGridProps['columns'] = [
{
field: 'createTime',
title: '创建时间',
align: 'center',
minWidth: 160,
width: 160,
},
{
field: 'action',

View File

@ -19,6 +19,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -76,6 +76,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-2',

View File

@ -48,7 +48,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
title: '请假类型',
field: 'leaveType',
@ -129,6 +134,7 @@ export const modalSchema: (isEdit: boolean) => VbenFormSchema[] = (
fieldName: 'leaveType',
component: 'Select',
componentProps: {
optionFilterProp: 'label',
options: leaveTypeOptions,
getPopupContainer,
},

View File

@ -25,6 +25,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
schema: querySchema(),

View File

@ -19,7 +19,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
field: 'flowName',
title: '流程名称',

View File

@ -49,6 +49,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',

View File

@ -27,7 +27,12 @@ export const querySchema: FormSchemaGetter = () => [
];
export const columns: VxeGridProps['columns'] = [
{ type: 'checkbox', width: 60 },
{
align: 'center',
type: 'checkbox',
width: 45,
resizable: false,
},
{
field: 'flowName',
title: '流程名称',

View File

@ -36,6 +36,7 @@ const formOptions: VbenFormProps = {
labelWidth: 80,
componentProps: {
allowClear: true,
showSearch: true,
},
},
wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4',

View File

@ -55,6 +55,8 @@
"@iconify/icons-tabler": "^1.2.95",
"@iconify/icons-uiw": "^1.2.6",
"@iconify/icons-vscode-icons": "^1.2.29",
"@iconify/icons-wpf": "^1.2.3"
"@iconify/icons-wpf": "^1.2.3",
"@iconify/icons-tdesign": "^1.2.0",
"@iconify/json": "^2.2.310"
}
}

View File

@ -11,7 +11,6 @@ import windowsIcon from '@iconify/icons-devicon/windows8';
import alipayIcon from '@iconify/icons-fa-brands/alipay';
import androidIcon from '@iconify/icons-flat-color-icons/android-os';
import comandLine from '@iconify/icons-flat-color-icons/command-line';
import folderIcon from '@iconify/icons-flat-color-icons/folder';
import defaultOsIcon from '@iconify/icons-ic/outline-computer';
import memoryIcon from '@iconify/icons-la/memory';
import chromeIcon from '@iconify/icons-logos/chrome';
@ -23,8 +22,6 @@ import redisIcon from '@iconify/icons-logos/redis';
import safariIcon from '@iconify/icons-logos/safari';
import vueIcon from '@iconify/icons-logos/vue';
import iphoneIcon from '@iconify/icons-majesticons/iphone-x-apps-line';
import menuIcon from '@iconify/icons-material-symbols/menu';
import okButtonIcon from '@iconify/icons-mdi/button-pointer';
import micromessengerIcon from '@iconify/icons-mdi/wechat';
import defaultBrowserIcon from '@iconify/icons-ph/browser-duotone';
import baiduIcon from '@iconify/icons-ri/baidu-fill';
@ -36,6 +33,9 @@ import qqIcon from '@iconify/icons-simple-icons/tencentqq';
import javaIcon from '@iconify/icons-skill-icons/java-light';
import tsIcon from '@iconify/icons-skill-icons/typescript';
import xmlIcon from '@iconify/icons-tabler/file-type-xml';
import okButtonIcon from '@iconify/icons-tdesign/button';
import folderIcon from '@iconify/icons-tdesign/folder';
import menuIcon from '@iconify/icons-tdesign/menu';
import githubOAuthIcon from '@iconify/icons-uiw/github';
import excelIcon from '@iconify/icons-vscode-icons/file-type-excel';
import osxIcon from '@iconify/icons-wpf/macos';
@ -154,17 +154,14 @@ export const DefaultBrowserIcon = createIconifyOfflineIcon(
// 菜单类型 目录/按钮/菜单
export const FolderIcon = createIconifyOfflineIcon(
'flat-color-icons:folder',
'tdesign:folder',
folderIcon,
);
export const OkButtonIcon = createIconifyOfflineIcon(
'mdi:button-pointer',
'tdesign:button',
okButtonIcon,
);
export const MenuIcon = createIconifyOfflineIcon(
'material-symbols:menu',
menuIcon,
);
export const MenuIcon = createIconifyOfflineIcon('tdesign:menu', menuIcon);
export const JavaIcon = createIconifyOfflineIcon(
'skill-icons:java-light',

View File

@ -268,6 +268,7 @@ const schema: VbenFormSchema[] = [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: true,
class: 'w-full',
options: [
@ -305,6 +306,7 @@ const schema: VbenFormSchema[] = [
{
component: 'Select',
componentProps: {
optionFilterProp: 'label',
allowClear: true,
class: 'w-full',
options: SystemMenuApi.BadgeVariants.map((v) => ({