From c5628d80e209c8f1356eaf9287831984cca7c750 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=80=BF=E5=87=A1?= <1534292577@qq.com> Date: Tue, 18 Nov 2025 16:11:31 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=99=A8=E6=A2=B0?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/erp/devicecategory/index.ts | 52 ++++ .../erp/devicecategory/DeviceCategoryForm.vue | 130 ++++++++ .../src/views/erp/devicecategory/index.vue | 291 ++++++++++++++++++ 3 files changed, 473 insertions(+) create mode 100644 yudao-ui/yudao-ui-admin-vue3-master/src/api/erp/devicecategory/index.ts create mode 100644 yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue create mode 100644 yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue diff --git a/yudao-ui/yudao-ui-admin-vue3-master/src/api/erp/devicecategory/index.ts b/yudao-ui/yudao-ui-admin-vue3-master/src/api/erp/devicecategory/index.ts new file mode 100644 index 0000000..511f5d9 --- /dev/null +++ b/yudao-ui/yudao-ui-admin-vue3-master/src/api/erp/devicecategory/index.ts @@ -0,0 +1,52 @@ +import request from '@/config/axios' +import type { Dayjs } from 'dayjs'; + +/** 进销存系统 - 器械分类信息 */ +export interface DeviceCategory { + id: number; // 记录唯一标识,系统自动生成,用于数据关联和查询 + categoryName?: string; // 分类名称(如 "01 有源手术器械"),业务核心字段,必填 + categoryCode?: string; // 分类编号(如 "1-8-8.2""1-10-10.4"),业务唯一标识(页面标*必填) + deviceType?: string; // 类别(如 "一类""二类""三类"),通过下拉选择,必填 + exampleNames: string; // 品名举例(如 "移动式 LED 手术照明灯、LED 手术照明灯..."),可选填 + createUser?: string; // 记录创建人(如 "admin"),用于追溯操作人 + updateUser: string; // 记录最后更新人,数据首次创建时可为空,修改后自动填充 + status?: number; // 状态 + } + +// 进销存系统 - 器械分类 API +export const DeviceCategoryApi = { + // 查询进销存系统 - 器械分类分页 + getDeviceCategoryPage: async (params: any) => { + return await request.get({ url: `/erp/device-category/page`, params }) + }, + + // 查询进销存系统 - 器械分类详情 + getDeviceCategory: async (id: number) => { + return await request.get({ url: `/erp/device-category/get?id=` + id }) + }, + + // 新增进销存系统 - 器械分类 + createDeviceCategory: async (data: DeviceCategory) => { + return await request.post({ url: `/erp/device-category/create`, data }) + }, + + // 修改进销存系统 - 器械分类 + updateDeviceCategory: async (data: DeviceCategory) => { + return await request.put({ url: `/erp/device-category/update`, data }) + }, + + // 删除进销存系统 - 器械分类 + deleteDeviceCategory: async (id: number) => { + return await request.delete({ url: `/erp/device-category/delete?id=` + id }) + }, + + /** 批量删除进销存系统 - 器械分类 */ + deleteDeviceCategoryList: async (ids: number[]) => { + return await request.delete({ url: `/erp/device-category/delete-list?ids=${ids.join(',')}` }) + }, + + // 导出进销存系统 - 器械分类 Excel + exportDeviceCategory: async (params) => { + return await request.download({ url: `/erp/device-category/export-excel`, params }) + } +} \ No newline at end of file diff --git a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue new file mode 100644 index 0000000..512fecc --- /dev/null +++ b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue @@ -0,0 +1,130 @@ + + \ No newline at end of file diff --git a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue new file mode 100644 index 0000000..52a994d --- /dev/null +++ b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue @@ -0,0 +1,291 @@ + + + \ No newline at end of file From f94ebc452716151ccd5efb56c9b11ba9d49ffef4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=80=BF=E5=87=A1?= <1534292577@qq.com> Date: Tue, 18 Nov 2025 16:40:33 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=99=A8=E6=A2=B0?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/devicecategory/DeviceCategoryForm.vue | 21 +++++----- .../src/views/erp/devicecategory/index.vue | 38 ++++++++++--------- 2 files changed, 31 insertions(+), 28 deletions(-) diff --git a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue index 512fecc..81cdf2d 100644 --- a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue +++ b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/DeviceCategoryForm.vue @@ -7,22 +7,22 @@ label-width="100px" v-loading="formLoading" > - - + + - - + + - - + + - - + + - - + + @@ -66,7 +66,6 @@ const formRules = reactive({ categoryName: [{ required: true, message: '分类名称(如 "01 有源手术器械"),业务核心字段,必填不能为空', trigger: 'blur' }], categoryCode: [{ required: true, message: '分类编号(如 "1-8-8.2""1-10-10.4"),业务唯一标识(页面标*必填)不能为空', trigger: 'blur' }], deviceType: [{ required: true, message: '类别(如 "一类""二类""三类"),通过下拉选择,必填不能为空', trigger: 'change' }], - createUser: [{ required: true, message: '记录创建人(如 "admin"),用于追溯操作人不能为空', trigger: 'blur' }], status: [{ required: true, message: '状态不能为空', trigger: 'blur' }] }) const formRef = ref() // 表单 Ref diff --git a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue index 52a994d..133f0e6 100644 --- a/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue +++ b/yudao-ui/yudao-ui-admin-vue3-master/src/views/erp/devicecategory/index.vue @@ -8,38 +8,40 @@ :inline="true" label-width="68px" > - + - + - + - + + + - + - + - + + @@ -129,10 +132,10 @@ > - - - - + + + + - + @@ -184,6 +187,7 @@ import download from '@/utils/download' import { DeviceCategoryApi, DeviceCategory } from '@/api/erp/devicecategory' import DeviceCategoryForm from './DeviceCategoryForm.vue' + /** 进销存系统 - 器械分类 列表 */ defineOptions({ name: 'DeviceCategory' })