Pārlūkot izejas kodu

Merge branch 'master' of https://gitee.com/yudaocode/yudao-ui-admin-vue3 into dev

 Conflicts:
	src/views/bpm/form/formEditor.vue
	src/views/bpm/model/index.vue
	src/views/infra/config/form.vue
	src/views/infra/config/index.vue
	src/views/infra/fileConfig/index.vue
	src/views/infra/fileList/index.vue
	src/views/system/mail/log/log.data.ts
	src/views/system/tenant/tenant.data.ts
	src/views/system/user/index.vue
	src/views/system/user/user.data.ts
YunaiV 2 gadi atpakaļ
vecāks
revīzija
03db8fece4

+ 1 - 1
src/api/infra/fileConfig/index.ts

@@ -17,7 +17,7 @@ export interface FileClientConfig {
 export interface FileConfigVO {
   id: number
   name: string
-  storage: number
+  storage: any
   master: boolean
   visible: boolean
   config: FileClientConfig

+ 50 - 0
src/config/axios/request.ts

@@ -0,0 +1,50 @@
+import { service } from './service'
+
+import { config } from './config'
+
+const { default_headers } = config
+
+const request = (option: any) => {
+  const { url, method, params, data, headersType, responseType } = option
+  return service({
+    url: url,
+    method,
+    params,
+    data,
+    responseType: responseType,
+    headers: {
+      'Content-Type': headersType || default_headers
+    }
+  })
+}
+export default {
+  get: async <T = any>(option: any) => {
+    const res = await request({ method: 'GET', ...option })
+    return res as unknown as T
+  },
+  post: async <T = any>(option: any) => {
+    const res = await request({ method: 'POST', ...option })
+    return res as unknown as T
+  },
+  delete: async <T = any>(option: any) => {
+    const res = await request({ method: 'DELETE', ...option })
+    return res as unknown as T
+  },
+  put: async <T = any>(option: any) => {
+    const res = await request({ method: 'PUT', ...option })
+    return res as unknown as T
+  },
+  patch: async <T = any>(option: any) => {
+    const res = await request({ method: 'PATCH', ...option })
+    return res as unknown as T
+  },
+  download: async <T = any>(option: any) => {
+    const res = await request({ method: 'GET', responseType: 'blob', ...option })
+    return res as unknown as Promise<T>
+  },
+  upload: async <T = any>(option: any) => {
+    option.headersType = 'multipart/form-data'
+    const res = await request({ method: 'POST', ...option })
+    return res as unknown as Promise<T>
+  }
+}

+ 90 - 0
src/views/infra/config/config.data.ts

@@ -0,0 +1,90 @@
+import type { VxeCrudSchema } from '@/hooks/web/useVxeCrudSchemas'
+const { t } = useI18n() // 国际化
+
+// 表单校验
+export const rules = reactive({
+  category: [required],
+  name: [required],
+  key: [required],
+  value: [required]
+})
+
+// CrudSchema
+const crudSchemas = reactive<VxeCrudSchema>({
+  primaryKey: 'id',
+  primaryType: null,
+  action: true,
+  columns: [
+    {
+      title: '参数分类',
+      field: 'category'
+    },
+    {
+      title: '参数名称',
+      field: 'name',
+      isSearch: true
+    },
+    {
+      title: '参数键名',
+      field: 'key',
+      isSearch: true
+    },
+    {
+      title: '参数键值',
+      field: 'value'
+    },
+    {
+      title: '系统内置',
+      field: 'type',
+      dictType: DICT_TYPE.INFRA_CONFIG_TYPE,
+      dictClass: 'number',
+      isSearch: true
+    },
+    {
+      title: '是否可见',
+      field: 'visible',
+      table: {
+        slots: {
+          default: 'visible_default'
+        }
+      },
+      form: {
+        component: 'RadioButton',
+        componentProps: {
+          options: [
+            { label: '是', value: true },
+            { label: '否', value: false }
+          ]
+        }
+      }
+    },
+    {
+      title: t('form.remark'),
+      field: 'remark',
+      isTable: false,
+      form: {
+        component: 'Input',
+        componentProps: {
+          type: 'textarea',
+          rows: 4
+        },
+        colProps: {
+          span: 24
+        }
+      }
+    },
+    {
+      title: t('common.createTime'),
+      field: 'createTime',
+      formatter: 'formatDate',
+      isForm: false,
+      search: {
+        show: true,
+        itemRender: {
+          name: 'XDataTimePicker'
+        }
+      }
+    }
+  ]
+})
+export const { allSchemas } = useVxeCrudSchemas(crudSchemas)

+ 1 - 1
src/views/system/tenantPackage/tenantPackage.data.ts

@@ -43,7 +43,7 @@ const crudSchemas = reactive<VxeCrudSchema>({
     {
       title: t('form.remark'),
       field: 'remark',
-      isTable: false,
+      isTable: true,
       isSearch: true,
       form: {
         component: 'Input',