From 208d0a6e97cbc0ca9fa16fce4a0ac2daa3252c99 Mon Sep 17 00:00:00 2001 From: sonjinyon <2476687577@qq.com> Date: Mon, 21 Oct 2024 15:51:14 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E6=A8=A1=E5=9D=97=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=A2=84=E7=BA=A6=E9=A1=B9=E7=9B=AE=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/subscribe/project/index.ts | 51 ++ .../src/api/subscribe/technician/index.ts | 9 +- yudao-admin-vue3/src/utils/dict.ts | 4 +- .../organization/OrganizationForm.vue | 2 + .../views/subscribe/project/ProjectForm.vue | 161 +++++ .../src/views/subscribe/project/index.vue | 209 +++++++ .../src/views/subscribe/reservation/index.vue | 2 +- .../technician/LitemallTechnicianForm.vue | 58 +- .../src/views/subscribe/technician/index.vue | 578 +++++++----------- .../subscribe/enums/ErrorCodeConstants.java | 13 +- .../admin/project/ProjectController.java | 104 ++++ .../admin/project/vo/ProjectPageReqVO.java | 45 ++ .../admin/project/vo/ProjectRespVO.java | 57 ++ .../admin/project/vo/ProjectSaveReqVO.java | 42 ++ .../vo/LitemallTechnicianPageReqVO.java | 18 +- .../vo/LitemallTechnicianRespVO.java | 27 +- .../vo/LitemallTechnicianSaveReqVO.java | 23 +- .../dal/dataobject/project/ProjectDO.java | 64 ++ .../technician/LitemallTechnicianDO.java | 28 +- .../dal/mysql/project/ProjectMapper.java | 31 + .../technician/LitemallTechnicianMapper.java | 6 - .../service/project/ProjectService.java | 59 ++ .../service/project/ProjectServiceImpl.java | 89 +++ .../LitemallReservationServiceImpl.java | 4 +- .../LitemallTechnicianServiceImpl.java | 9 +- 25 files changed, 1182 insertions(+), 511 deletions(-) create mode 100644 yudao-admin-vue3/src/api/subscribe/project/index.ts create mode 100644 yudao-admin-vue3/src/views/subscribe/project/ProjectForm.vue create mode 100644 yudao-admin-vue3/src/views/subscribe/project/index.vue create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/controller/admin/project/ProjectController.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/controller/admin/project/vo/ProjectPageReqVO.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/controller/admin/project/vo/ProjectRespVO.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/controller/admin/project/vo/ProjectSaveReqVO.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/dal/dataobject/project/ProjectDO.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/dal/mysql/project/ProjectMapper.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/service/project/ProjectService.java create mode 100644 yudao-module-subscribe/yudao-module-subscribe-biz/src/main/java/cn/iocoder/yudao/module/srbscribe/service/project/ProjectServiceImpl.java diff --git a/yudao-admin-vue3/src/api/subscribe/project/index.ts b/yudao-admin-vue3/src/api/subscribe/project/index.ts new file mode 100644 index 0000000..99e91f7 --- /dev/null +++ b/yudao-admin-vue3/src/api/subscribe/project/index.ts @@ -0,0 +1,51 @@ +import request from '@/config/axios' + +// 预约项目 VO +export interface ProjectVO { + id: number // ID + brandId: number // 所属门店 + name: string // 项目名称 + pictrue: string // 项目图片 + content: string // 项目简介 + status: number // 状态 + timeInterval: string // 可预约日期 + brandName: string +} + +// 预约项目 API +export const ProjectApi = { + // 查询预约项目分页 + getProjectPage: async (params: any) => { + return await request.get({ url: `/subscribe/project/page`, params }) + }, + + // 查询预约项目详情 + getProject: async (id: number) => { + return await request.get({ url: `/subscribe/project/get?id=` + id }) + }, + + // 新增预约项目 + createProject: async (data: ProjectVO) => { + return await request.post({ url: `/subscribe/project/create`, data }) + }, + + // 修改预约项目 + updateProject: async (data: ProjectVO) => { + return await request.put({ url: `/subscribe/project/update`, data }) + }, + + // 删除预约项目 + deleteProject: async (id: number) => { + return await request.delete({ url: `/subscribe/project/delete?id=` + id }) + }, + + // 导出预约项目 Excel + exportProject: async (params) => { + return await request.download({ url: `/subscribe/project/export-excel`, params }) + }, + + getProjectName: async () => { + return await request.get({ url: `/subscribe/project/getProjectName` }) + }, + +} \ No newline at end of file diff --git a/yudao-admin-vue3/src/api/subscribe/technician/index.ts b/yudao-admin-vue3/src/api/subscribe/technician/index.ts index abf6634..2c042ca 100644 --- a/yudao-admin-vue3/src/api/subscribe/technician/index.ts +++ b/yudao-admin-vue3/src/api/subscribe/technician/index.ts @@ -3,16 +3,11 @@ import request from '@/config/axios' // 人员管理 VO export interface LitemallTechnicianVO { id: number // id - techSn: string // 人员编号 - type: number // 人员类型 - technicianName: string // 人员名称 - brandId: number // 门店id - brandName: string - sex: number // 性别 + projectId: number // 项目id + brandName: string //项目名称 photo: string // 照片 serviceTime: string // 服务时间段 serviceScope: string // 服务范围 - phone: string // 手机号 ym: number // 约满标记 status: number // 状态 content: string // 介绍 diff --git a/yudao-admin-vue3/src/utils/dict.ts b/yudao-admin-vue3/src/utils/dict.ts index e1f4f05..84772d4 100644 --- a/yudao-admin-vue3/src/utils/dict.ts +++ b/yudao-admin-vue3/src/utils/dict.ts @@ -123,7 +123,9 @@ export enum DICT_TYPE { TYPES = 'types', TECHNICIAN_STATUS = 'technician_status', SEX = 'sex', - + + //预约:项目 + SUBSCRIBE_PROJECT_STATUS = 'subscribe_project_status', //预约:人员管理 STALL_SEX = 'stall_sex', diff --git a/yudao-admin-vue3/src/views/subscribe/organization/OrganizationForm.vue b/yudao-admin-vue3/src/views/subscribe/organization/OrganizationForm.vue index 6c7d632..8a0c929 100644 --- a/yudao-admin-vue3/src/views/subscribe/organization/OrganizationForm.vue +++ b/yudao-admin-vue3/src/views/subscribe/organization/OrganizationForm.vue @@ -96,6 +96,8 @@ const open = async (type: string, id?: number) => { } defineExpose({ open }) // 提供 open 方法,用于打开弹窗 + + /** 提交表单 */ const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调 const submitForm = async () => { diff --git a/yudao-admin-vue3/src/views/subscribe/project/ProjectForm.vue b/yudao-admin-vue3/src/views/subscribe/project/ProjectForm.vue new file mode 100644 index 0000000..3204d9e --- /dev/null +++ b/yudao-admin-vue3/src/views/subscribe/project/ProjectForm.vue @@ -0,0 +1,161 @@ + + \ No newline at end of file diff --git a/yudao-admin-vue3/src/views/subscribe/project/index.vue b/yudao-admin-vue3/src/views/subscribe/project/index.vue new file mode 100644 index 0000000..156bb26 --- /dev/null +++ b/yudao-admin-vue3/src/views/subscribe/project/index.vue @@ -0,0 +1,209 @@ + + + \ No newline at end of file diff --git a/yudao-admin-vue3/src/views/subscribe/reservation/index.vue b/yudao-admin-vue3/src/views/subscribe/reservation/index.vue index fdee6f7..146022f 100644 --- a/yudao-admin-vue3/src/views/subscribe/reservation/index.vue +++ b/yudao-admin-vue3/src/views/subscribe/reservation/index.vue @@ -141,7 +141,7 @@ -