From 468c420d8f886302ff364135206435026b73c5b5 Mon Sep 17 00:00:00 2001 From: panjiabao Date: Fri, 19 Jul 2024 09:30:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E7=BC=96=E7=A0=81?= =?UTF-8?q?=E8=A7=84=E5=88=99=E9=85=8D=E7=BD=AE=EF=BC=8C=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E8=A7=84=E5=88=99=E7=94=9F=E6=88=90=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E5=8D=95=E6=8D=AE=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/codingrules/details.ts | 45 ++++++ src/api/system/codingrules/index.ts | 44 ++++++ .../system/codingrules/CodingRulesForm.vue | 65 +++++++++ .../system/codingrules/codingRules.data.ts | 55 +++++++ .../details/CodingRulesDetailsForm.vue | 130 +++++++++++++++++ .../details/codingRulesDetails.data.ts | 136 ++++++++++++++++++ .../system/codingrules/details/index.vue | 121 ++++++++++++++++ src/views/system/codingrules/index.vue | 129 +++++++++++++++++ 8 files changed, 725 insertions(+) create mode 100644 src/api/system/codingrules/details.ts create mode 100644 src/api/system/codingrules/index.ts create mode 100644 src/views/system/codingrules/CodingRulesForm.vue create mode 100644 src/views/system/codingrules/codingRules.data.ts create mode 100644 src/views/system/codingrules/details/CodingRulesDetailsForm.vue create mode 100644 src/views/system/codingrules/details/codingRulesDetails.data.ts create mode 100644 src/views/system/codingrules/details/index.vue create mode 100644 src/views/system/codingrules/index.vue diff --git a/src/api/system/codingrules/details.ts b/src/api/system/codingrules/details.ts new file mode 100644 index 000000000..9c23189f3 --- /dev/null +++ b/src/api/system/codingrules/details.ts @@ -0,0 +1,45 @@ +import request from '@/config/axios' + +export interface CodingRulesDetailsVO { + id: string + ruleId: string + orderNum: number + type: string + value: string + len: number + initial: number + stepSize: number + fillKey: string + remark: string + deletedTime: Date +} + +// 查询编码规则明细列表 +export const getCodingRulesDetailsPage = async (params) => { + return await request.get({ url: '/system/coding-rules/getDetails', params }) +} + +// 查询编码规则明细详情 +export const getCodingRulesDetails = async (id: number) => { + return await request.get({ url: '/system/coding-rules/getDetailInfo?id=' + id }) +} + +// 新增编码规则明细 +export const createCodingRulesDetails = async (data: CodingRulesDetailsVO) => { + return await request.post({ url: '/system/coding-rules/insertDetails', data }) +} + +// 修改编码规则明细 +export const updateCodingRulesDetails = async (data: CodingRulesDetailsVO) => { + return await request.put({ url: '/system/coding-rules/updateDetails', data }) +} + +// 删除编码规则明细 +export const deleteCodingRulesDetails = async (id: number) => { + return await request.delete({ url: '/system/coding-rules/deleteDetails?id=' + id }) +} + +// 导出编码规则明细 Excel +export const exportCodingRulesDetailsApi = async (params) => { + return await request.download({ url: '/system/coding-rules-details/export-excel', params }) +} diff --git a/src/api/system/codingrules/index.ts b/src/api/system/codingrules/index.ts new file mode 100644 index 000000000..fc2cef17b --- /dev/null +++ b/src/api/system/codingrules/index.ts @@ -0,0 +1,44 @@ +import request from '@/config/axios' + +export interface CodingRulesVO { + id: string + code: string + name: string + remark: string + deletedTime: Date +} + +// 查询编号规则表头列表 +export const getCodingRulesPage = async (params) => { + return await request.get({ url: '/system/coding-rules/page', params }) +} + +// 查询编号规则表头详情 +export const getCodingRules = async (id: number) => { + return await request.get({ url: '/system/coding-rules/get?id=' + id }) +} + +// 新增编号规则表头 +export const createCodingRules = async (data: CodingRulesVO) => { + return await request.post({ url: '/system/coding-rules/create', data }) +} + +// 修改编号规则表头 +export const updateCodingRules = async (data: CodingRulesVO) => { + return await request.put({ url: '/system/coding-rules/update', data }) +} + +// 删除编号规则表头 +export const deleteCodingRules = async (id: number) => { + return await request.delete({ url: '/system/coding-rules/delete?id=' + id }) +} + +// 导出编号规则表头 Excel +export const exportCodingRulesApi = async (params) => { + return await request.download({ url: '/system/coding-rules/export-excel', params }) +} + +// 预览编号规则 +export const previewCodingRulesApi = async (params) => { + return await request.get({ url: '/system/coding-rules/genCodingRules', params }) +} diff --git a/src/views/system/codingrules/CodingRulesForm.vue b/src/views/system/codingrules/CodingRulesForm.vue new file mode 100644 index 000000000..7cdf4aefa --- /dev/null +++ b/src/views/system/codingrules/CodingRulesForm.vue @@ -0,0 +1,65 @@ + + diff --git a/src/views/system/codingrules/codingRules.data.ts b/src/views/system/codingrules/codingRules.data.ts new file mode 100644 index 000000000..bf4fc7cc4 --- /dev/null +++ b/src/views/system/codingrules/codingRules.data.ts @@ -0,0 +1,55 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const rules = reactive({ + code: [required], + name: [required], +}) + +// CrudSchema https://doc.iocoder.cn/vue3/crud-schema/ +const crudSchemas = reactive([ + { + label: 'id', + field: 'id', + isForm: false, + isTable: false + }, + { + label: '规则编码', + field: 'code', + isSearch: true, + }, + { + label: '名称', + field: 'name', + isSearch: true, + }, + { + label: '描述', + field: 'remark', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + isSearch: false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + width: 220 + } +]) +export const { allSchemas } = useCrudSchemas(crudSchemas) diff --git a/src/views/system/codingrules/details/CodingRulesDetailsForm.vue b/src/views/system/codingrules/details/CodingRulesDetailsForm.vue new file mode 100644 index 000000000..7dd16ab9d --- /dev/null +++ b/src/views/system/codingrules/details/CodingRulesDetailsForm.vue @@ -0,0 +1,130 @@ + + diff --git a/src/views/system/codingrules/details/codingRulesDetails.data.ts b/src/views/system/codingrules/details/codingRulesDetails.data.ts new file mode 100644 index 000000000..6878d83e2 --- /dev/null +++ b/src/views/system/codingrules/details/codingRulesDetails.data.ts @@ -0,0 +1,136 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const rules = reactive({ + ruleId: [required], + orderNum: [required], + type: [required], +}) + +// CrudSchema https://doc.iocoder.cn/vue3/crud-schema/ +const crudSchemas = reactive([ + { + label: 'id', + field: 'id', + isForm: false, + isTable: false, + }, + { + label: '编码规则头id', + field: 'ruleId', + isSearch: false, + isTable: false, + isForm: false + }, + { + label: '序号', + field: 'orderNum', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '类型', + field: 'type', + isSearch: false, + dictType: DICT_TYPE.CODING_RULES_TYPE + }, + { + label: '设置值', + field: 'value', + isSearch: false, + }, + { + label: '长度', + field: 'len', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '起始值', + field: 'initial', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '步长', + field: 'stepSize', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '补位符', + field: 'fillKey', + isSearch: false, + }, + { + label: '备注', + field: 'remark', + isSearch: false, + form: { + component: 'Input', + componentProps: { + type: 'textarea', + rows: 3 + }, + colProps: { + span: 24 + } + } + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + isSearch: false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '删除时间', + field: 'deletedTime', + formatter: dateFormatter, + isSearch: false, + isForm: false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '操作', + field: 'action', + isForm: false + } +]) +export const { allSchemas } = useCrudSchemas(crudSchemas) diff --git a/src/views/system/codingrules/details/index.vue b/src/views/system/codingrules/details/index.vue new file mode 100644 index 000000000..8ca6287d9 --- /dev/null +++ b/src/views/system/codingrules/details/index.vue @@ -0,0 +1,121 @@ + + diff --git a/src/views/system/codingrules/index.vue b/src/views/system/codingrules/index.vue new file mode 100644 index 000000000..a8b40b31a --- /dev/null +++ b/src/views/system/codingrules/index.vue @@ -0,0 +1,129 @@ + + -- Gitee