From a6cb9f7f78de8f1ed13230af6cf4dd6cdb11951f Mon Sep 17 00:00:00 2001 From: gxwebsoft Date: Wed, 24 Apr 2024 20:44:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BD=93=E8=82=B2=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E6=80=BB=E5=90=8E=E5=8F=B0=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/booking/card/index.ts | 106 +++++++ src/api/booking/card/model/index.ts | 51 +++ src/api/booking/cardPlan/index.ts | 106 +++++++ src/api/booking/cardPlan/model/index.ts | 33 ++ .../SelectCardPlan/components/select-data.vue | 139 +++++++++ src/components/SelectCardPlan/index.vue | 59 ++++ .../components/merchantAccountEdit.vue | 10 +- .../booking/card/components/cardEdit.vue | 292 ++++++++++++++++++ src/views/booking/card/components/search.vue | 58 ++++ src/views/booking/card/index.vue | 281 +++++++++++++++++ .../booking/cardDict/components/dict-edit.vue | 178 +++++++++++ src/views/booking/cardDict/index.vue | 176 +++++++++++ .../school/components/merchantEdit.vue | 34 +- .../booking/school/components/search.vue | 2 +- src/views/booking/school/index.vue | 30 +- .../components/merchantTypeEdit.vue | 8 +- src/views/booking/schoolType/index.vue | 2 +- .../teacher/components/merchantEdit.vue | 34 +- 18 files changed, 1543 insertions(+), 56 deletions(-) create mode 100644 src/api/booking/card/index.ts create mode 100644 src/api/booking/card/model/index.ts create mode 100644 src/api/booking/cardPlan/index.ts create mode 100644 src/api/booking/cardPlan/model/index.ts create mode 100644 src/components/SelectCardPlan/components/select-data.vue create mode 100644 src/components/SelectCardPlan/index.vue create mode 100644 src/views/booking/card/components/cardEdit.vue create mode 100644 src/views/booking/card/components/search.vue create mode 100644 src/views/booking/card/index.vue create mode 100644 src/views/booking/cardDict/components/dict-edit.vue create mode 100644 src/views/booking/cardDict/index.vue diff --git a/src/api/booking/card/index.ts b/src/api/booking/card/index.ts new file mode 100644 index 0000000..15c159f --- /dev/null +++ b/src/api/booking/card/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { Card, CardParam } from './model'; +import { MODULES_API_URL } from '@/config/setting'; + +/** + * 分页查询会员卡 + */ +export async function pageCard(params: CardParam) { + const res = await request.get>>( + MODULES_API_URL + '/booking/card/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询会员卡列表 + */ +export async function listCard(params?: CardParam) { + const res = await request.get>( + MODULES_API_URL + '/booking/card', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加会员卡 + */ +export async function addCard(data: Card) { + const res = await request.post>( + MODULES_API_URL + '/booking/card', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改会员卡 + */ +export async function updateCard(data: Card) { + const res = await request.put>( + MODULES_API_URL + '/booking/card', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除会员卡 + */ +export async function removeCard(id?: number) { + const res = await request.delete>( + MODULES_API_URL + '/booking/card/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除会员卡 + */ +export async function removeBatchCard(data: (number | undefined)[]) { + const res = await request.delete>( + MODULES_API_URL + '/booking/card/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询会员卡 + */ +export async function getCard(id: number) { + const res = await request.get>( + MODULES_API_URL + '/booking/card/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/booking/card/model/index.ts b/src/api/booking/card/model/index.ts new file mode 100644 index 0000000..aebd79c --- /dev/null +++ b/src/api/booking/card/model/index.ts @@ -0,0 +1,51 @@ +import type { PageParam } from '@/api'; + +/** + * 会员卡 + */ +export interface Card { + // ID + cardId?: number; + // 会员卡名称 + cardName?: string; + // 会员卡标识 + cardCode?: string; + // 会员卡图片 + image?: string; + // 价格 + price?: number; + // 次数 + number?: number; + // 月份 + month?: number; + // 折扣 + discount?: number; + // 老师介绍 + content?: string; + // 关联用户 + userId?: number; + // 商户ID + merchantId?: number; + // 商户名称 + merchantName?: string; + // 商户类型 + merchantType?: string; + // 备注 + comments?: string; + // 状态 + status?: number; + // 排序号 + sortNumber?: number; + // 租户id + tenantId?: number; + // 创建时间 + createTime?: string; +} + +/** + * 会员卡搜索条件 + */ +export interface CardParam extends PageParam { + cardId?: number; + keywords?: string; +} diff --git a/src/api/booking/cardPlan/index.ts b/src/api/booking/cardPlan/index.ts new file mode 100644 index 0000000..77eb406 --- /dev/null +++ b/src/api/booking/cardPlan/index.ts @@ -0,0 +1,106 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { CardPlan, CardPlanParam } from './model'; +import { MODULES_API_URL } from '@/config/setting'; + +/** + * 分页查询会员卡类型 + */ +export async function pageCardPlan(params: CardPlanParam) { + const res = await request.get>>( + MODULES_API_URL + '/booking/card-plan/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询会员卡类型列表 + */ +export async function listCardPlan(params?: CardPlanParam) { + const res = await request.get>( + MODULES_API_URL + '/booking/card-plan', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加会员卡类型 + */ +export async function addCardPlan(data: CardPlan) { + const res = await request.post>( + MODULES_API_URL + '/booking/card-plan', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改会员卡类型 + */ +export async function updateCardPlan(data: CardPlan) { + const res = await request.put>( + MODULES_API_URL + '/booking/card-plan', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除会员卡类型 + */ +export async function removeCardPlan(id?: number) { + const res = await request.delete>( + MODULES_API_URL + '/booking/card-plan/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除会员卡类型 + */ +export async function removeBatchCardPlan(data: (number | undefined)[]) { + const res = await request.delete>( + MODULES_API_URL + '/booking/card-plan/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询会员卡类型 + */ +export async function getCardPlan(id: number) { + const res = await request.get>( + MODULES_API_URL + '/booking/card-plan/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/booking/cardPlan/model/index.ts b/src/api/booking/cardPlan/model/index.ts new file mode 100644 index 0000000..0ecf528 --- /dev/null +++ b/src/api/booking/cardPlan/model/index.ts @@ -0,0 +1,33 @@ +import type { PageParam } from '@/api'; + +/** + * 会员卡类型 + */ +export interface CardPlan { + // ID + cardPlanId?: number; + // 会员卡名称 + name?: string; + // 标识 + code?: string; + // 备注 + comments?: string; + // 状态 + status?: number; + // 排序号 + sortNumber?: number; + // 租户id + tenantId?: number; + // 创建时间 + createTime?: string; + // 修改时间 + updateTime?: string; +} + +/** + * 会员卡类型搜索条件 + */ +export interface CardPlanParam extends PageParam { + cardPlanId?: number; + keywords?: string; +} diff --git a/src/components/SelectCardPlan/components/select-data.vue b/src/components/SelectCardPlan/components/select-data.vue new file mode 100644 index 0000000..db81c14 --- /dev/null +++ b/src/components/SelectCardPlan/components/select-data.vue @@ -0,0 +1,139 @@ + + + + diff --git a/src/components/SelectCardPlan/index.vue b/src/components/SelectCardPlan/index.vue new file mode 100644 index 0000000..f91bd0a --- /dev/null +++ b/src/components/SelectCardPlan/index.vue @@ -0,0 +1,59 @@ + + + diff --git a/src/views/booking/account/components/merchantAccountEdit.vue b/src/views/booking/account/components/merchantAccountEdit.vue index 55b4e74..50d6c50 100644 --- a/src/views/booking/account/components/merchantAccountEdit.vue +++ b/src/views/booking/account/components/merchantAccountEdit.vue @@ -4,7 +4,7 @@ :width="600" :visible="visible" :maskClosable="false" - :title="isUpdate ? '编辑商户账号' : '添加商户账号'" + :title="isUpdate ? '编辑场馆账号' : '添加场馆账号'" :body-style="{ paddingBottom: '28px' }" @update:visible="updateVisible" @ok="save" @@ -18,9 +18,9 @@ styleResponsive ? { md: 19, sm: 19, xs: 24 } : { flex: '1' } " > - + + + + diff --git a/src/views/booking/card/components/search.vue b/src/views/booking/card/components/search.vue new file mode 100644 index 0000000..f3d0d3b --- /dev/null +++ b/src/views/booking/card/components/search.vue @@ -0,0 +1,58 @@ + + + + diff --git a/src/views/booking/card/index.vue b/src/views/booking/card/index.vue new file mode 100644 index 0000000..acce4ce --- /dev/null +++ b/src/views/booking/card/index.vue @@ -0,0 +1,281 @@ + + + + + + + diff --git a/src/views/booking/cardDict/components/dict-edit.vue b/src/views/booking/cardDict/components/dict-edit.vue new file mode 100644 index 0000000..8090302 --- /dev/null +++ b/src/views/booking/cardDict/components/dict-edit.vue @@ -0,0 +1,178 @@ + + + + diff --git a/src/views/booking/cardDict/index.vue b/src/views/booking/cardDict/index.vue new file mode 100644 index 0000000..fe7f974 --- /dev/null +++ b/src/views/booking/cardDict/index.vue @@ -0,0 +1,176 @@ + + + + + diff --git a/src/views/booking/school/components/merchantEdit.vue b/src/views/booking/school/components/merchantEdit.vue index 3c0a6bf..309017f 100644 --- a/src/views/booking/school/components/merchantEdit.vue +++ b/src/views/booking/school/components/merchantEdit.vue @@ -5,7 +5,7 @@ :visible="visible" :maskClosable="false" :maxable="maxable" - :title="isUpdate ? '编辑校区' : '添加校区'" + :title="isUpdate ? '编辑场馆' : '添加场馆'" :body-style="{ paddingBottom: '28px' }" @update:visible="updateVisible" @ok="save" @@ -19,7 +19,7 @@ styleResponsive ? { md: 19, sm: 19, xs: 24 } : { flex: '1' } " > - + - + @@ -52,13 +52,13 @@ - + @@ -72,7 +72,7 @@ @change="onIndustry" /> - +
- + @@ -271,7 +271,7 @@ { required: true, type: 'string', - message: '请填写校区名称', + message: '请填写场馆名称', trigger: 'blur' } ], @@ -279,7 +279,7 @@ { required: true, type: 'string', - message: '请填写校区分类', + message: '请填写场馆分类', trigger: 'blur' } ], @@ -287,7 +287,7 @@ { required: true, type: 'string', - message: '请填写校区坐标', + message: '请填写场馆坐标', trigger: 'blur' } ], @@ -295,7 +295,7 @@ { required: true, type: 'string', - message: '请填写校区姓名', + message: '请填写场馆姓名', trigger: 'blur' } ], @@ -452,7 +452,7 @@ } else { isUpdate.value = false; } - // 获取校区管理员的roleId + // 获取场馆管理员的roleId listRoles({ roleCode: 'merchant' }).then((res) => { form.roleId = res[0].roleId; form.roleName = res[0].roleName; diff --git a/src/views/booking/school/components/search.vue b/src/views/booking/school/components/search.vue index cef0560..03845eb 100644 --- a/src/views/booking/school/components/search.vue +++ b/src/views/booking/school/components/search.vue @@ -5,7 +5,7 @@ - 添加校区 + 添加场馆 diff --git a/src/views/booking/school/index.vue b/src/views/booking/school/index.vue index cfe79e5..7599bef 100644 --- a/src/views/booking/school/index.vue +++ b/src/views/booking/school/index.vue @@ -53,7 +53,7 @@