Merge remote-tracking branch 'origin/dev' into dev

# Conflicts:
#	.env.development
This commit is contained in:
2025-11-20 22:29:42 +08:00
440 changed files with 49162 additions and 19543 deletions

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMpAd, CmsMpAdParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicAppointment, ClinicAppointmentParam } from './model';
/**
* 广
*
*/
export async function pageCmsMpAd(params: CmsMpAdParam) {
const res = await request.get<ApiResult<PageResult<CmsMpAd>>>(
MODULES_API_URL + '/cms/cms-mp-ad/page',
export async function pageClinicAppointment(params: ClinicAppointmentParam) {
const res = await request.get<ApiResult<PageResult<ClinicAppointment>>>(
'/clinic/clinic-appointment/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsMpAd(params: CmsMpAdParam) {
}
/**
* 广
*
*/
export async function listCmsMpAd(params?: CmsMpAdParam) {
const res = await request.get<ApiResult<CmsMpAd[]>>(
MODULES_API_URL + '/cms/cms-mp-ad',
export async function listClinicAppointment(params?: ClinicAppointmentParam) {
const res = await request.get<ApiResult<ClinicAppointment[]>>(
'/clinic/clinic-appointment',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsMpAd(params?: CmsMpAdParam) {
}
/**
* 广
*
*/
export async function addCmsMpAd(data: CmsMpAd) {
export async function addClinicAppointment(data: ClinicAppointment) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-ad',
'/clinic/clinic-appointment',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsMpAd(data: CmsMpAd) {
}
/**
* 广
*
*/
export async function updateCmsMpAd(data: CmsMpAd) {
export async function updateClinicAppointment(data: ClinicAppointment) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-ad',
'/clinic/clinic-appointment',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsMpAd(data: CmsMpAd) {
}
/**
* 广
*
*/
export async function removeCmsMpAd(id?: number) {
export async function removeClinicAppointment(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-ad/' + id
'/clinic/clinic-appointment/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsMpAd(id?: number) {
}
/**
* 广
*
*/
export async function removeBatchCmsMpAd(data: (number | undefined)[]) {
export async function removeBatchClinicAppointment(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-ad/batch',
'/clinic/clinic-appointment/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsMpAd(data: (number | undefined)[]) {
}
/**
* id查询小程序广告位
* id查询挂号
*/
export async function getCmsMpAd(id: number) {
const res = await request.get<ApiResult<CmsMpAd>>(
MODULES_API_URL + '/cms/cms-mp-ad/' + id
export async function getClinicAppointment(id: number) {
const res = await request.get<ApiResult<ClinicAppointment>>(
'/clinic/clinic-appointment/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,47 @@
import type { PageParam } from '@/api';
/**
* 挂号
*/
export interface ClinicAppointment {
// 主键ID
id?: number;
// 类型
type?: number;
// 就诊原因
reason?: string;
// 挂号时间
evaluateTime?: string;
// 医生
doctorId?: number;
// 医生名称
doctorName?: string;
// 医生职位
doctorPosition?: string;
// 患者
userId?: number;
// 患者名称
nickname?: string;
// 患者联系电话
phone?: string;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 是否删除
isDelete?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 挂号搜索条件
*/
export interface ClinicAppointmentParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicDoctorApply, ClinicDoctorApplyParam } from './model';
/**
* 分页查询医生入驻申请
*/
export async function pageClinicDoctorApply(params: ClinicDoctorApplyParam) {
const res = await request.get<ApiResult<PageResult<ClinicDoctorApply>>>(
'/clinic/clinic-doctor-apply/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询医生入驻申请列表
*/
export async function listClinicDoctorApply(params?: ClinicDoctorApplyParam) {
const res = await request.get<ApiResult<ClinicDoctorApply[]>>(
'/clinic/clinic-doctor-apply',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加医生入驻申请
*/
export async function addClinicDoctorApply(data: ClinicDoctorApply) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-doctor-apply',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改医生入驻申请
*/
export async function updateClinicDoctorApply(data: ClinicDoctorApply) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-doctor-apply',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除医生入驻申请
*/
export async function removeClinicDoctorApply(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-doctor-apply/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除医生入驻申请
*/
export async function removeBatchClinicDoctorApply(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-doctor-apply/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询医生入驻申请
*/
export async function getClinicDoctorApply(id: number) {
const res = await request.get<ApiResult<ClinicDoctorApply>>(
'/clinic/clinic-doctor-apply/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,75 @@
import type { PageParam } from '@/api';
/**
* 医生入驻申请
*/
export interface ClinicDoctorApply {
// 主键ID
applyId?: number;
// 类型 0医生
type?: number;
// 用户ID
userId?: number;
// 姓名
realName?: string;
// 性别 1男 2女
gender?: number;
// 手机号
mobile?: string;
// 客户名称
dealerName?: string;
// 证件号码
idCard?: string;
// 生日
birthDate?: string;
// 区分职称等级(如主治医师、副主任医师)
professionalTitle?: string;
// 工作单位
workUnit?: string;
// 执业资格核心凭证
practiceLicense?: string;
// 限定可执业科室或疾病类型
practiceScope?: string;
// 开始工作时间
startWorkDate?: string;
// 简历
resume?: string;
// 使用 JSON 存储多个证件文件路径(如执业证、学历证)
certificationFiles?: string;
// 详细地址
address?: string;
// 签约价格
money?: string;
// 推荐人用户ID
refereeId?: number;
// 申请方式(10需后台审核 20无需审核)
applyType?: number;
// 审核状态 (10待审核 20审核通过 30驳回)
applyStatus?: number;
// 申请时间
applyTime?: string;
// 审核时间
auditTime?: string;
// 合同时间
contractTime?: string;
// 过期时间
expirationTime?: string;
// 驳回原因
rejectReason?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 医生入驻申请搜索条件
*/
export interface ClinicDoctorApplyParam extends PageParam {
applyId?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicDoctorMedicalRecord, ClinicDoctorMedicalRecordParam } from './model';
/**
* 分页查询医疗记录
*/
export async function pageClinicDoctorMedicalRecord(params: ClinicDoctorMedicalRecordParam) {
const res = await request.get<ApiResult<PageResult<ClinicDoctorMedicalRecord>>>(
'/clinic/clinic-doctor-medical-record/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询医疗记录列表
*/
export async function listClinicDoctorMedicalRecord(params?: ClinicDoctorMedicalRecordParam) {
const res = await request.get<ApiResult<ClinicDoctorMedicalRecord[]>>(
'/clinic/clinic-doctor-medical-record',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加医疗记录
*/
export async function addClinicDoctorMedicalRecord(data: ClinicDoctorMedicalRecord) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-doctor-medical-record',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改医疗记录
*/
export async function updateClinicDoctorMedicalRecord(data: ClinicDoctorMedicalRecord) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-doctor-medical-record',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除医疗记录
*/
export async function removeClinicDoctorMedicalRecord(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-doctor-medical-record/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除医疗记录
*/
export async function removeBatchClinicDoctorMedicalRecord(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-doctor-medical-record/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询医疗记录
*/
export async function getClinicDoctorMedicalRecord(id: number) {
const res = await request.get<ApiResult<ClinicDoctorMedicalRecord>>(
'/clinic/clinic-doctor-medical-record/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,61 @@
import type { PageParam } from '@/api';
/**
* 医疗记录
*/
export interface ClinicDoctorMedicalRecord {
// 主键ID
id?: number;
// 买家用户ID
userId?: number;
// 订单编号
orderNo?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 单价
price?: string;
// 订单总金额
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 实发金额
payPrice?: string;
// 税率
rate?: string;
// 结算月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 医疗记录搜索条件
*/
export interface ClinicDoctorMedicalRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsDocsBook, CmsDocsBookParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicDoctorUser, ClinicDoctorUserParam } from './model';
/**
*
*
*/
export async function pageCmsDocsBook(params: CmsDocsBookParam) {
const res = await request.get<ApiResult<PageResult<CmsDocsBook>>>(
MODULES_API_URL + '/cms/cms-docs-book/page',
export async function pageClinicDoctorUser(params: ClinicDoctorUserParam) {
const res = await request.get<ApiResult<PageResult<ClinicDoctorUser>>>(
'/clinic/clinic-doctor-user/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsDocsBook(params: CmsDocsBookParam) {
}
/**
*
*
*/
export async function listCmsDocsBook(params?: CmsDocsBookParam) {
const res = await request.get<ApiResult<CmsDocsBook[]>>(
MODULES_API_URL + '/cms/cms-docs-book',
export async function listClinicDoctorUser(params?: ClinicDoctorUserParam) {
const res = await request.get<ApiResult<ClinicDoctorUser[]>>(
'/clinic/clinic-doctor-user',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsDocsBook(params?: CmsDocsBookParam) {
}
/**
*
*
*/
export async function addCmsDocsBook(data: CmsDocsBook) {
export async function addClinicDoctorUser(data: ClinicDoctorUser) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-book',
'/clinic/clinic-doctor-user',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsDocsBook(data: CmsDocsBook) {
}
/**
*
*
*/
export async function updateCmsDocsBook(data: CmsDocsBook) {
export async function updateClinicDoctorUser(data: ClinicDoctorUser) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-book',
'/clinic/clinic-doctor-user',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsDocsBook(data: CmsDocsBook) {
}
/**
*
*
*/
export async function removeCmsDocsBook(id?: number) {
export async function removeClinicDoctorUser(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-book/' + id
'/clinic/clinic-doctor-user/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsDocsBook(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsDocsBook(data: (number | undefined)[]) {
export async function removeBatchClinicDoctorUser(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-book/batch',
'/clinic/clinic-doctor-user/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsDocsBook(data: (number | undefined)[]) {
}
/**
* id查询书籍记录表
* id查询分销商用户记录表
*/
export async function getCmsDocsBook(id: number) {
const res = await request.get<ApiResult<CmsDocsBook>>(
MODULES_API_URL + '/cms/cms-docs-book/' + id
export async function getClinicDoctorUser(id: number) {
const res = await request.get<ApiResult<ClinicDoctorUser>>(
'/clinic/clinic-doctor-user/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,55 @@
import type { PageParam } from '@/api';
/**
* 分销商用户记录表
*/
export interface ClinicDoctorUser {
// 主键ID
id?: number;
// 类型 0经销商 1企业 2集团
type?: number;
// 自增ID
userId?: number;
// 姓名
realName?: string;
// 手机号
phone?: string;
// 部门
departmentId?: number;
// 专业领域
specialty?: string;
// 职务级别
position?: string;
// 执业资格
qualification?: string;
// 医生简介
introduction?: string;
// 挂号费
consultationFee?: string;
// 工作年限
workYears?: number;
// 问诊人数
consultationCount?: number;
// 专属二维码
qrcode?: string;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 是否删除
isDelete?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 分销商用户记录表搜索条件
*/
export interface ClinicDoctorUserParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMpField, CmsMpFieldParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicMedicalHistory, ClinicMedicalHistoryParam } from './model';
/**
*
*
*/
export async function pageCmsMpField(params: CmsMpFieldParam) {
const res = await request.get<ApiResult<PageResult<CmsMpField>>>(
MODULES_API_URL + '/cms/cms-mp-field/page',
export async function pageClinicMedicalHistory(params: ClinicMedicalHistoryParam) {
const res = await request.get<ApiResult<PageResult<ClinicMedicalHistory>>>(
'/clinic/clinic-medical-history/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsMpField(params: CmsMpFieldParam) {
}
/**
*
*
*/
export async function listCmsMpField(params?: CmsMpFieldParam) {
const res = await request.get<ApiResult<CmsMpField[]>>(
MODULES_API_URL + '/cms/cms-mp-field',
export async function listClinicMedicalHistory(params?: ClinicMedicalHistoryParam) {
const res = await request.get<ApiResult<ClinicMedicalHistory[]>>(
'/clinic/clinic-medical-history',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsMpField(params?: CmsMpFieldParam) {
}
/**
*
*
*/
export async function addCmsMpField(data: CmsMpField) {
export async function addClinicMedicalHistory(data: ClinicMedicalHistory) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-field',
'/clinic/clinic-medical-history',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsMpField(data: CmsMpField) {
}
/**
*
*
*/
export async function updateCmsMpField(data: CmsMpField) {
export async function updateClinicMedicalHistory(data: ClinicMedicalHistory) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-field',
'/clinic/clinic-medical-history',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsMpField(data: CmsMpField) {
}
/**
*
*
*/
export async function removeCmsMpField(id?: number) {
export async function removeClinicMedicalHistory(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-field/' + id
'/clinic/clinic-medical-history/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsMpField(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsMpField(data: (number | undefined)[]) {
export async function removeBatchClinicMedicalHistory(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-field/batch',
'/clinic/clinic-medical-history/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsMpField(data: (number | undefined)[]) {
}
/**
* id查询小程序配置
* id查询病例
*/
export async function getCmsMpField(id: number) {
const res = await request.get<ApiResult<CmsMpField>>(
MODULES_API_URL + '/cms/cms-mp-field/' + id
export async function getClinicMedicalHistory(id: number) {
const res = await request.get<ApiResult<ClinicMedicalHistory>>(
'/clinic/clinic-medical-history/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,61 @@
import type { PageParam } from '@/api';
/**
* 病例
*/
export interface ClinicMedicalHistory {
// 主键ID
id?: number;
// 买家用户ID
userId?: number;
// 订单编号
orderNo?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 单价
price?: string;
// 订单总金额
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 实发金额
payPrice?: string;
// 税率
rate?: string;
// 结算月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 病例搜索条件
*/
export interface ClinicMedicalHistoryParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicMedicine, ClinicMedicineParam } from './model';
/**
* 分页查询药品库
*/
export async function pageClinicMedicine(params: ClinicMedicineParam) {
const res = await request.get<ApiResult<PageResult<ClinicMedicine>>>(
'/clinic/clinic-medicine/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询药品库列表
*/
export async function listClinicMedicine(params?: ClinicMedicineParam) {
const res = await request.get<ApiResult<ClinicMedicine[]>>(
'/clinic/clinic-medicine',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加药品库
*/
export async function addClinicMedicine(data: ClinicMedicine) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-medicine',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改药品库
*/
export async function updateClinicMedicine(data: ClinicMedicine) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-medicine',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除药品库
*/
export async function removeClinicMedicine(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-medicine/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除药品库
*/
export async function removeBatchClinicMedicine(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-medicine/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询药品库
*/
export async function getClinicMedicine(id: number) {
const res = await request.get<ApiResult<ClinicMedicine>>(
'/clinic/clinic-medicine/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,43 @@
import type { PageParam } from '@/api';
/**
* 药品库
*/
export interface ClinicMedicine {
// 主键ID
id?: number;
// 药名
name?: string;
// 拼音
pinyin?: string;
// 分类(如“清热解毒”、“补气养血”)
category?: string;
// 规格(如“饮片”、“颗粒”)
specification?: string;
// 单位(如“克”、“袋”)
unit?: string;
// 描述
content?: string;
// 单价
pricePerUnit?: string;
// 是否活跃
isActive?: number;
// 买家用户ID
userId?: number;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 药品库搜索条件
*/
export interface ClinicMedicineParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMpMenu, CmsMpMenuParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicMedicineInout, ClinicMedicineInoutParam } from './model';
/**
*
*
*/
export async function pageCmsMpMenu(params: CmsMpMenuParam) {
const res = await request.get<ApiResult<PageResult<CmsMpMenu>>>(
MODULES_API_URL + '/cms/cms-mp-menu/page',
export async function pageClinicMedicineInout(params: ClinicMedicineInoutParam) {
const res = await request.get<ApiResult<PageResult<ClinicMedicineInout>>>(
'/clinic/clinic-medicine-inout/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsMpMenu(params: CmsMpMenuParam) {
}
/**
*
*
*/
export async function listCmsMpMenu(params?: CmsMpMenuParam) {
const res = await request.get<ApiResult<CmsMpMenu[]>>(
MODULES_API_URL + '/cms/cms-mp-menu',
export async function listClinicMedicineInout(params?: ClinicMedicineInoutParam) {
const res = await request.get<ApiResult<ClinicMedicineInout[]>>(
'/clinic/clinic-medicine-inout',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsMpMenu(params?: CmsMpMenuParam) {
}
/**
*
*
*/
export async function addCmsMpMenu(data: CmsMpMenu) {
export async function addClinicMedicineInout(data: ClinicMedicineInout) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-menu',
'/clinic/clinic-medicine-inout',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsMpMenu(data: CmsMpMenu) {
}
/**
*
*
*/
export async function updateCmsMpMenu(data: CmsMpMenu) {
export async function updateClinicMedicineInout(data: ClinicMedicineInout) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-menu',
'/clinic/clinic-medicine-inout',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsMpMenu(data: CmsMpMenu) {
}
/**
*
*
*/
export async function removeCmsMpMenu(id?: number) {
export async function removeClinicMedicineInout(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-menu/' + id
'/clinic/clinic-medicine-inout/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsMpMenu(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsMpMenu(data: (number | undefined)[]) {
export async function removeBatchClinicMedicineInout(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-menu/batch',
'/clinic/clinic-medicine-inout/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsMpMenu(data: (number | undefined)[]) {
}
/**
* id查询小程序端菜单
* id查询出入库
*/
export async function getCmsMpMenu(id: number) {
const res = await request.get<ApiResult<CmsMpMenu>>(
MODULES_API_URL + '/cms/cms-mp-menu/' + id
export async function getClinicMedicineInout(id: number) {
const res = await request.get<ApiResult<ClinicMedicineInout>>(
'/clinic/clinic-medicine-inout/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,61 @@
import type { PageParam } from '@/api';
/**
* 出入库
*/
export interface ClinicMedicineInout {
// 主键ID
id?: number;
// 买家用户ID
userId?: number;
// 订单编号
orderNo?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 单价
price?: string;
// 订单总金额
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 实发金额
payPrice?: string;
// 税率
rate?: string;
// 结算月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 出入库搜索条件
*/
export interface ClinicMedicineInoutParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicMedicineStock, ClinicMedicineStockParam } from './model';
/**
* 分页查询药品库存
*/
export async function pageClinicMedicineStock(params: ClinicMedicineStockParam) {
const res = await request.get<ApiResult<PageResult<ClinicMedicineStock>>>(
'/clinic/clinic-medicine-stock/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询药品库存列表
*/
export async function listClinicMedicineStock(params?: ClinicMedicineStockParam) {
const res = await request.get<ApiResult<ClinicMedicineStock[]>>(
'/clinic/clinic-medicine-stock',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加药品库存
*/
export async function addClinicMedicineStock(data: ClinicMedicineStock) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-medicine-stock',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改药品库存
*/
export async function updateClinicMedicineStock(data: ClinicMedicineStock) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-medicine-stock',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除药品库存
*/
export async function removeClinicMedicineStock(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-medicine-stock/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除药品库存
*/
export async function removeBatchClinicMedicineStock(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-medicine-stock/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询药品库存
*/
export async function getClinicMedicineStock(id: number) {
const res = await request.get<ApiResult<ClinicMedicineStock>>(
'/clinic/clinic-medicine-stock/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,35 @@
import type { PageParam } from '@/api';
/**
* 药品库存
*/
export interface ClinicMedicineStock {
// 主键ID
id?: number;
// 药品
medicineId?: number;
// 库存数量
stockQuantity?: number;
// 最小库存预警
minStockLevel?: number;
// 上次更新时间
lastUpdated?: string;
// 买家用户ID
userId?: number;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 药品库存搜索条件
*/
export interface ClinicMedicineStockParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsSpec, CmsSpecParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicOrder, ClinicOrderParam } from './model';
/**
*
*
*/
export async function pageCmsSpec(params: CmsSpecParam) {
const res = await request.get<ApiResult<PageResult<CmsSpec>>>(
MODULES_API_URL + '/cms/cms-spec/page',
export async function pageClinicOrder(params: ClinicOrderParam) {
const res = await request.get<ApiResult<PageResult<ClinicOrder>>>(
'/clinic/clinic-order/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsSpec(params: CmsSpecParam) {
}
/**
*
*
*/
export async function listCmsSpec(params?: CmsSpecParam) {
const res = await request.get<ApiResult<CmsSpec[]>>(
MODULES_API_URL + '/cms/cms-spec',
export async function listClinicOrder(params?: ClinicOrderParam) {
const res = await request.get<ApiResult<ClinicOrder[]>>(
'/clinic/clinic-order',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsSpec(params?: CmsSpecParam) {
}
/**
*
*
*/
export async function addCmsSpec(data: CmsSpec) {
export async function addClinicOrder(data: ClinicOrder) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec',
'/clinic/clinic-order',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsSpec(data: CmsSpec) {
}
/**
*
*
*/
export async function updateCmsSpec(data: CmsSpec) {
export async function updateClinicOrder(data: ClinicOrder) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec',
'/clinic/clinic-order',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsSpec(data: CmsSpec) {
}
/**
*
*
*/
export async function removeCmsSpec(id?: number) {
export async function removeClinicOrder(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec/' + id
'/clinic/clinic-order/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsSpec(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsSpec(data: (number | undefined)[]) {
export async function removeBatchClinicOrder(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec/batch',
'/clinic/clinic-order/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsSpec(data: (number | undefined)[]) {
}
/**
* id查询规格
* id查询处方订单
*/
export async function getCmsSpec(id: number) {
const res = await request.get<ApiResult<CmsSpec>>(
MODULES_API_URL + '/cms/cms-spec/' + id
export async function getClinicOrder(id: number) {
const res = await request.get<ApiResult<ClinicOrder>>(
'/clinic/clinic-order/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,167 @@
import type { PageParam } from '@/api';
/**
* 处方订单
*/
export interface ClinicOrder {
// 订单号
orderId?: number;
// 订单编号
orderNo?: string;
// 订单类型0商城订单 1预定订单/外卖 2会员卡
type?: number;
// 订单标题
title?: string;
// 快递/自提
deliveryType?: number;
// 下单渠道0小程序预定 1俱乐部训练场 3活动订场
channel?: number;
// 微信支付交易号号
transactionId?: string;
// 微信退款订单号
refundOrder?: string;
// 商户ID
merchantId?: number;
// 商户名称
merchantName?: string;
// 商户编号
merchantCode?: string;
// 使用的优惠券id
couponId?: number;
// 使用的会员卡id
cardId?: string;
// 关联管理员id
adminId?: number;
// 核销管理员id
confirmId?: number;
// IC卡号
icCard?: string;
// 真实姓名
realName?: string;
// 关联收货地址
addressId?: number;
// 收货地址
address?: string;
//
addressLat?: string;
//
addressLng?: string;
// 买家留言
buyerRemarks?: string;
// 自提店铺id
selfTakeMerchantId?: number;
// 自提店铺
selfTakeMerchantName?: string;
// 配送开始时间
sendStartTime?: string;
// 配送结束时间
sendEndTime?: string;
// 发货店铺id
expressMerchantId?: number;
// 发货店铺
expressMerchantName?: string;
// 订单总额
totalPrice?: string;
// 减少的金额使用VIP会员折扣、优惠券抵扣、优惠券折扣后减去的价格
reducePrice?: string;
// 实际付款
payPrice?: string;
// 用于统计
price?: string;
// 价钱,用于积分赠送
money?: string;
// 取消时间
cancelTime?: string;
// 取消原因
cancelReason?: string;
// 退款金额
refundMoney?: string;
// 教练价格
coachPrice?: string;
// 购买数量
totalNum?: number;
// 教练id
coachId?: number;
// 商品ID
formId?: number;
// 支付的用户id
payUserId?: number;
// 0余额支付1微信支付2支付宝支付3银联支付4现金支付5POS机支付6免费7积分支付
payType?: number;
// 微信支付子类型JSAPI小程序支付NATIVE扫码支付
wechatPayType?: string;
// 0余额支付1微信支付2支付宝支付3银联支付4现金支付5POS机支付6免费7积分支付
friendPayType?: number;
// 0未付款1已付款
payStatus?: string;
// 0未使用1已完成2已取消3取消中4退款申请中5退款被拒绝6退款成功7客户端申请退款
orderStatus?: number;
// 发货状态(10未发货 20已发货 30部分发货)
deliveryStatus?: number;
// 无需发货备注
deliveryNote?: string;
// 发货时间
deliveryTime?: string;
// 评价状态(0未评价 1已评价)
evaluateStatus?: number;
// 评价时间
evaluateTime?: string;
// 优惠类型0无、1抵扣优惠券、2折扣优惠券、3、VIP月卡、4VIP年卡5VIP次卡、6VIP会员卡、7IC月卡、8IC年卡、9IC次卡、10IC会员卡、11免费订单、12VIP充值卡、13IC充值卡、14VIP季卡、15IC季卡
couponType?: number;
// 优惠说明
couponDesc?: string;
// 二维码地址,保存订单号,支付成功后才生成
qrcode?: string;
// vip月卡年卡、ic月卡年卡回退次数
returnNum?: number;
// vip充值回退金额
returnMoney?: string;
// 预约详情开始时间数组
startTime?: string;
// 是否已开具发票0未开发票1已开发票2不能开具发票
isInvoice?: string;
// 发票流水号
invoiceNo?: string;
// 商家留言
merchantRemarks?: string;
// 支付时间
payTime?: string;
// 退款时间
refundTime?: string;
// 申请退款时间
refundApplyTime?: string;
// 过期时间
expirationTime?: string;
// 自提码
selfTakeCode?: string;
// 是否已收到赠品
hasTakeGift?: string;
// 对账情况0=未对账1=已对账3=已对账金额对不上4=未查询到该订单
checkBill?: number;
// 订单是否已结算(0未结算 1已结算)
isSettled?: number;
// 系统版本号 0当前版本 value=其他版本
version?: number;
// 用户id
userId?: number;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 修改时间
updateTime?: string;
// 创建时间
createTime?: string;
}
/**
* 处方订单搜索条件
*/
export interface ClinicOrderParam extends PageParam {
orderId?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicPatientUser, ClinicPatientUserParam } from './model';
/**
* 分页查询患者
*/
export async function pageClinicPatientUser(params: ClinicPatientUserParam) {
const res = await request.get<ApiResult<PageResult<ClinicPatientUser>>>(
'/clinic/clinic-patient-user/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询患者列表
*/
export async function listClinicPatientUser(params?: ClinicPatientUserParam) {
const res = await request.get<ApiResult<ClinicPatientUser[]>>(
'/clinic/clinic-patient-user',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加患者
*/
export async function addClinicPatientUser(data: ClinicPatientUser) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-patient-user',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改患者
*/
export async function updateClinicPatientUser(data: ClinicPatientUser) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-patient-user',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除患者
*/
export async function removeClinicPatientUser(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-patient-user/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除患者
*/
export async function removeBatchClinicPatientUser(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-patient-user/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询患者
*/
export async function getClinicPatientUser(id: number) {
const res = await request.get<ApiResult<ClinicPatientUser>>(
'/clinic/clinic-patient-user/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,49 @@
import type { PageParam } from '@/api';
/**
* 患者
*/
export interface ClinicPatientUser {
// 主键ID
id?: number;
// 类型 0经销商 1企业 2集团
type?: number;
// 自增ID
userId?: number;
// 姓名
realName?: string;
// 性别
sex?: string;
// 手机号
phone?: string;
// 年龄
age?: number;
// 身高
height?: number;
// 体重
weight?: number;
// 过敏史
allergyHistory?: string;
// 专属二维码
qrcode?: string;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 是否删除
isDelete?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 患者搜索条件
*/
export interface ClinicPatientUserParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsComponents, CmsComponentsParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicPrescription, ClinicPrescriptionParam } from './model';
/**
*
*
*/
export async function pageCmsComponents(params: CmsComponentsParam) {
const res = await request.get<ApiResult<PageResult<CmsComponents>>>(
MODULES_API_URL + '/cms/cms-components/page',
export async function pageClinicPrescription(params: ClinicPrescriptionParam) {
const res = await request.get<ApiResult<PageResult<ClinicPrescription>>>(
'/clinic/clinic-prescription/page',
{
params
}
@@ -20,11 +20,12 @@ export async function pageCmsComponents(params: CmsComponentsParam) {
}
/**
*
*
*/
export async function listCmsComponents(params?: CmsComponentsParam) {
const res = await request.get<ApiResult<CmsComponents[]>>(
MODULES_API_URL + '/cms/cms-components',
export async function listClinicPrescription(params?: ClinicPrescriptionParam) {
const res = await request.get<ApiResult<ClinicPrescription[]>>(
'/clinic/clinic-prescription',
{
params
}
@@ -36,11 +37,12 @@ export async function listCmsComponents(params?: CmsComponentsParam) {
}
/**
*
*
*/
export async function addCmsComponents(data: CmsComponents) {
export async function addClinicPrescription(data: ClinicPrescription) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-components',
'/clinic/clinic-prescription',
data
);
if (res.data.code === 0) {
@@ -50,11 +52,12 @@ export async function addCmsComponents(data: CmsComponents) {
}
/**
*
*
*/
export async function updateCmsComponents(data: CmsComponents) {
export async function updateClinicPrescription(data: ClinicPrescription) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-components',
'/clinic/clinic-prescription',
data
);
if (res.data.code === 0) {
@@ -64,11 +67,12 @@ export async function updateCmsComponents(data: CmsComponents) {
}
/**
*
*
*/
export async function removeCmsComponents(id?: number) {
export async function removeClinicPrescription(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-components/' + id
'/clinic/clinic-prescription/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +81,12 @@ export async function removeCmsComponents(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsComponents(data: (number | undefined)[]) {
export async function removeBatchClinicPrescription(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-components/batch',
'/clinic/clinic-prescription/batch',
{
data
}
@@ -93,11 +98,12 @@ export async function removeBatchCmsComponents(data: (number | undefined)[]) {
}
/**
* id查询组件
* id查询处方主表
*/
export async function getCmsComponents(id: number) {
const res = await request.get<ApiResult<CmsComponents>>(
MODULES_API_URL + '/cms/cms-components/' + id
export async function getClinicPrescription(id: number) {
const res = await request.get<ApiResult<ClinicPrescription>>(
'/clinic/clinic-prescription/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,57 @@
import type { PageParam } from '@/api';
/**
* 处方主表
*/
export interface ClinicPrescription {
// 主键ID
id?: number;
// 患者
userId?: number;
// 医生
doctorId?: number;
// 订单编号
orderNo?: string;
// 关联就诊表
visitRecordId?: number;
// 处方类型 0中药 1西药
prescriptionType?: number;
// 诊断结果
diagnosis?: string;
// 治疗方案
treatmentPlan?: string;
// 煎药说明
decoctionInstructions?: string;
// 订单总金额
orderPrice?: string;
// 单价
price?: string;
// 实付金额
payPrice?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 状态, 0正常, 1已完成2已支付3已取消
status?: number;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 处方主表
搜索条件
*/
export interface ClinicPrescriptionParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -0,0 +1,112 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicPrescriptionItem, ClinicPrescriptionItemParam } from './model';
/**
* 分页查询处方明细表
*/
export async function pageClinicPrescriptionItem(params: ClinicPrescriptionItemParam) {
const res = await request.get<ApiResult<PageResult<ClinicPrescriptionItem>>>(
'/clinic/clinic-prescription-item/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询处方明细表
列表
*/
export async function listClinicPrescriptionItem(params?: ClinicPrescriptionItemParam) {
const res = await request.get<ApiResult<ClinicPrescriptionItem[]>>(
'/clinic/clinic-prescription-item',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加处方明细表
*/
export async function addClinicPrescriptionItem(data: ClinicPrescriptionItem) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-prescription-item',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改处方明细表
*/
export async function updateClinicPrescriptionItem(data: ClinicPrescriptionItem) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-prescription-item',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除处方明细表
*/
export async function removeClinicPrescriptionItem(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-prescription-item/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除处方明细表
*/
export async function removeBatchClinicPrescriptionItem(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-prescription-item/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询处方明细表
*/
export async function getClinicPrescriptionItem(id: number) {
const res = await request.get<ApiResult<ClinicPrescriptionItem>>(
'/clinic/clinic-prescription-item/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,49 @@
import type { PageParam } from '@/api';
/**
* 处方明细表
*/
export interface ClinicPrescriptionItem {
// 自增ID
id?: number;
// 关联处方
prescriptionId?: number;
// 订单编号
prescriptionNo?: string;
// 关联药品
medicineId?: number;
// 剂量如“10g”
dosage?: string;
// 用法频率(如“每日三次”)
usageFrequency?: string;
// 服用天数
days?: number;
// 购买数量
amount?: number;
// 单价
unitPrice?: string;
// 数量
quantity?: number;
// 排序号
sortNumber?: number;
// 备注
comments?: string;
// 用户id
userId?: number;
// 租户id
tenantId?: number;
// 更新时间
updateTime?: string;
// 创建时间
createTime?: string;
}
/**
* 处方明细表
搜索条件
*/
export interface ClinicPrescriptionItemParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMp, CmsMpParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
import type { ClinicReport, ClinicReportParam } from './model';
/**
*
*
*/
export async function pageCmsMp(params: CmsMpParam) {
const res = await request.get<ApiResult<PageResult<CmsMp>>>(
MODULES_API_URL + '/cms/cms-mp/page',
export async function pageClinicReport(params: ClinicReportParam) {
const res = await request.get<ApiResult<PageResult<ClinicReport>>>(
'/clinic/clinic-report/page',
{
params
}
@@ -20,11 +19,11 @@ export async function pageCmsMp(params: CmsMpParam) {
}
/**
*
*
*/
export async function listCmsMp(params?: CmsMpParam) {
const res = await request.get<ApiResult<CmsMp[]>>(
MODULES_API_URL + '/cms/cms-mp',
export async function listClinicReport(params?: ClinicReportParam) {
const res = await request.get<ApiResult<ClinicReport[]>>(
'/clinic/clinic-report',
{
params
}
@@ -36,11 +35,11 @@ export async function listCmsMp(params?: CmsMpParam) {
}
/**
*
*
*/
export async function addCmsMp(data: CmsMp) {
export async function addClinicReport(data: ClinicReport) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp',
'/clinic/clinic-report',
data
);
if (res.data.code === 0) {
@@ -50,11 +49,11 @@ export async function addCmsMp(data: CmsMp) {
}
/**
*
*
*/
export async function updateCmsMp(data: CmsMp) {
export async function updateClinicReport(data: ClinicReport) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp',
'/clinic/clinic-report',
data
);
if (res.data.code === 0) {
@@ -64,11 +63,11 @@ export async function updateCmsMp(data: CmsMp) {
}
/**
*
*
*/
export async function removeCmsMp(id?: number) {
export async function removeClinicReport(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp/' + id
'/clinic/clinic-report/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +76,11 @@ export async function removeCmsMp(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsMp(data: (number | undefined)[]) {
export async function removeBatchClinicReport(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp/batch',
'/clinic/clinic-report/batch',
{
data
}
@@ -93,11 +92,11 @@ export async function removeBatchCmsMp(data: (number | undefined)[]) {
}
/**
* id查询小程序信息
* id查询报告
*/
export async function getCmsMp(id: number) {
const res = await request.get<ApiResult<CmsMp>>(
MODULES_API_URL + '/cms/cms-mp/' + id
export async function getClinicReport(id: number) {
const res = await request.get<ApiResult<ClinicReport>>(
'/clinic/clinic-report/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,61 @@
import type { PageParam } from '@/api';
/**
* 报告
*/
export interface ClinicReport {
// 主键ID
id?: number;
// 买家用户ID
userId?: number;
// 订单编号
orderNo?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 单价
price?: string;
// 订单总金额
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 实发金额
payPrice?: string;
// 税率
rate?: string;
// 结算月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 报告搜索条件
*/
export interface ClinicReportParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -0,0 +1,105 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClinicVisitRecord, ClinicVisitRecordParam } from './model';
/**
* 分页查询病例
*/
export async function pageClinicVisitRecord(params: ClinicVisitRecordParam) {
const res = await request.get<ApiResult<PageResult<ClinicVisitRecord>>>(
'/clinic/clinic-visit-record/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询病例列表
*/
export async function listClinicVisitRecord(params?: ClinicVisitRecordParam) {
const res = await request.get<ApiResult<ClinicVisitRecord[]>>(
'/clinic/clinic-visit-record',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加病例
*/
export async function addClinicVisitRecord(data: ClinicVisitRecord) {
const res = await request.post<ApiResult<unknown>>(
'/clinic/clinic-visit-record',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改病例
*/
export async function updateClinicVisitRecord(data: ClinicVisitRecord) {
const res = await request.put<ApiResult<unknown>>(
'/clinic/clinic-visit-record',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除病例
*/
export async function removeClinicVisitRecord(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-visit-record/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除病例
*/
export async function removeBatchClinicVisitRecord(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/clinic/clinic-visit-record/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询病例
*/
export async function getClinicVisitRecord(id: number) {
const res = await request.get<ApiResult<ClinicVisitRecord>>(
'/clinic/clinic-visit-record/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,61 @@
import type { PageParam } from '@/api';
/**
* 病例
*/
export interface ClinicVisitRecord {
// 主键ID
id?: number;
// 买家用户ID
userId?: number;
// 订单编号
orderNo?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 单价
price?: string;
// 订单总金额
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 实发金额
payPrice?: string;
// 税率
rate?: string;
// 结算月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 病例搜索条件
*/
export interface ClinicVisitRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -8,6 +8,8 @@ export interface CmsAd {
adId?: number;
// 类型
type?: number;
// 唯一标识
code?: string;
// 栏目分类
categoryId?: number;
// 栏目名称

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsArticle, CmsArticleParam } from './model';
import {MODULES_API_URL} from '@/config/setting';
import type {ApiResult, PageResult} from '@/api';
import type {CmsArticle, CmsArticleParam} from './model';
/**
* 分页查询文章
*/
export async function pageCmsArticle(params: CmsArticleParam) {
const res = await request.get<ApiResult<PageResult<CmsArticle>>>(
MODULES_API_URL + '/cms/cms-article/page',
'/cms/cms-article/page',
{
params
}
@@ -24,7 +23,7 @@ export async function pageCmsArticle(params: CmsArticleParam) {
*/
export async function listCmsArticle(params?: CmsArticleParam) {
const res = await request.get<ApiResult<CmsArticle[]>>(
MODULES_API_URL + '/cms/cms-article',
'/cms/cms-article',
{
params
}
@@ -40,7 +39,7 @@ export async function listCmsArticle(params?: CmsArticleParam) {
*/
export async function addCmsArticle(data: CmsArticle) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article',
'/cms/cms-article',
data
);
if (res.data.code === 0) {
@@ -54,7 +53,7 @@ export async function addCmsArticle(data: CmsArticle) {
*/
export async function updateCmsArticle(data: CmsArticle) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article',
'/cms/cms-article',
data
);
if (res.data.code === 0) {
@@ -68,7 +67,7 @@ export async function updateCmsArticle(data: CmsArticle) {
*/
export async function updateBatchCmsArticle(data: any) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article/batch',
'/cms/cms-article/batch',
data
);
if (res.data.code === 0) {
@@ -82,7 +81,7 @@ export async function updateBatchCmsArticle(data: any) {
*/
export async function removeCmsArticle(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article/' + id
'/cms/cms-article/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -95,7 +94,7 @@ export async function removeCmsArticle(id?: number) {
*/
export async function removeBatchCmsArticle(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article/batch',
'/cms/cms-article/batch',
{
data
}
@@ -111,7 +110,20 @@ export async function removeBatchCmsArticle(data: (number | undefined)[]) {
*/
export async function getCmsArticle(id: number) {
const res = await request.get<ApiResult<CmsArticle>>(
MODULES_API_URL + '/cms/cms-article/' + id
'/cms/cms-article/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据code查询文章
*/
export async function getByCode(code: string) {
const res = await request.get<ApiResult<CmsArticle>>(
'/cms/cms-article/getByCode/' + code
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
@@ -120,7 +132,7 @@ export async function getCmsArticle(id: number) {
}
export async function getCount(params: CmsArticleParam) {
const res = await request.get(MODULES_API_URL + '/cms/cms-article/data', {
const res = await request.get('/cms/cms-article/data', {
params
});
if (res.data.code === 0) {
@@ -137,7 +149,7 @@ export async function importArticles(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-article/import',
'/cms/cms-article/import',
formData
);
if (res.data.code === 0) {

View File

@@ -12,6 +12,8 @@ export interface CmsArticle {
type?: number;
// 文章模型
model?: string;
// 文章编号
code?: string;
// 文章详情
detail?: string;
// 列表显示方式(10小图展示 20大图展示)

View File

@@ -1,43 +0,0 @@
import type { PageParam } from '@/api';
/**
* 组件
*/
export interface CmsComponents {
// ID
id?: number;
// 组件标题
title?: string;
// 关联导航ID
navigationId?: number;
// 组件类型
type?: string;
// 页面关键词
keywords?: string;
// 页面描述
description?: string;
// 组件路径
path?: string;
// 组件图标
icon?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 组件搜索条件
*/
export interface CmsComponentsParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -52,6 +52,7 @@ export interface CmsDesign {
demoUrl?: string;
account?: string;
docUrl?: string;
parentId?: number;
}
/**

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsDesignCollect, CmsDesignCollectParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询设计征集
*/
export async function pageCmsDesignCollect(params: CmsDesignCollectParam) {
const res = await request.get<ApiResult<PageResult<CmsDesignCollect>>>(
MODULES_API_URL + '/cms/cms-design-collect/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询设计征集列表
*/
export async function listCmsDesignCollect(params?: CmsDesignCollectParam) {
const res = await request.get<ApiResult<CmsDesignCollect[]>>(
MODULES_API_URL + '/cms/cms-design-collect',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加设计征集
*/
export async function addCmsDesignCollect(data: CmsDesignCollect) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-collect',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改设计征集
*/
export async function updateCmsDesignCollect(data: CmsDesignCollect) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-collect',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除设计征集
*/
export async function removeCmsDesignCollect(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-collect/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除设计征集
*/
export async function removeBatchCmsDesignCollect(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-collect/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询设计征集
*/
export async function getCmsDesignCollect(id: number) {
const res = await request.get<ApiResult<CmsDesignCollect>>(
MODULES_API_URL + '/cms/cms-design-collect/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,51 +0,0 @@
import type { PageParam } from '@/api';
/**
* 页面组件表
*/
export interface CmsDesignRecord {
// ID
id?: number;
// 关联导航ID
navigationId?: number;
parentId?: number;
pageId?: number;
// 组件
title?: string;
// 组件标识
dictCode?: string;
// 组件样式
styles?: string;
// 卡片阴影显示时机
shadow?: string;
// 页面关键词
keywords?: string;
// 页面描述
description?: string;
// 页面路由地址
path?: string;
// 缩列图
photo?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 所属期次
periodId?: number;
}
/**
* 页面组件表搜索条件
*/
export interface CmsDesignRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsDesignSignUp, CmsDesignSignUpParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询设计征集报名
*/
export async function pageCmsDesignSignUp(params: CmsDesignSignUpParam) {
const res = await request.get<ApiResult<PageResult<CmsDesignSignUp>>>(
MODULES_API_URL + '/cms/cms-design-sign-up/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询设计征集报名列表
*/
export async function listCmsDesignSignUp(params?: CmsDesignSignUpParam) {
const res = await request.get<ApiResult<CmsDesignSignUp[]>>(
MODULES_API_URL + '/cms/cms-design-sign-up',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加设计征集报名
*/
export async function addCmsDesignSignUp(data: CmsDesignSignUp) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-sign-up',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改设计征集报名
*/
export async function updateCmsDesignSignUp(data: CmsDesignSignUp) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-sign-up',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除设计征集报名
*/
export async function removeCmsDesignSignUp(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-sign-up/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除设计征集报名
*/
export async function removeBatchCmsDesignSignUp(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-sign-up/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询设计征集报名
*/
export async function getCmsDesignSignUp(id: number) {
const res = await request.get<ApiResult<CmsDesignSignUp>>(
MODULES_API_URL + '/cms/cms-design-sign-up/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,41 +0,0 @@
import type { PageParam } from '@/api';
/**
* 设计征集报名
*/
export interface CmsDesignSignUp {
//
id?: number;
//
designId?: number;
//
name?: string;
//
phone?: string;
//
content?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0已发布, 1待审核 2已驳回 3违规内容
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 设计征集报名搜索条件
*/
export interface CmsDesignSignUpParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,45 +0,0 @@
import type { PageParam } from '@/api';
/**
* 文档管理记录表
*/
export interface CmsDocs {
// 文档ID
docsId?: number;
// 文档标题
title?: string;
// 上级目录
parentId?: number;
// 书籍ID
bookId?: number;
// 可见性(public,private,protected)
visibility?: string;
// 虚拟阅读量(仅用作展示)
virtualViews?: number;
// 实际阅读量
actualViews?: number;
// 用户ID
userId?: number;
// 备注
comments?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 文档管理记录表搜索条件
*/
export interface CmsDocsParam extends PageParam {
docsId?: number;
keywords?: string;
}

View File

@@ -1,37 +0,0 @@
import type { PageParam } from '@/api';
/**
* 书籍记录表
*/
export interface CmsDocsBook {
// ID
bookId?: number;
// 书籍名称
name?: string;
// 书籍标识
code?: string;
// 封面图
photo?: string;
// 备注
comments?: string;
// 文档内容
content?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 书籍记录表搜索条件
*/
export interface CmsDocsBookParam extends PageParam {
bookId?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsDocsContent, CmsDocsContentParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询文档内容记录表
*/
export async function pageCmsDocsContent(params: CmsDocsContentParam) {
const res = await request.get<ApiResult<PageResult<CmsDocsContent>>>(
MODULES_API_URL + '/cms/cms-docs-content/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询文档内容记录表列表
*/
export async function listCmsDocsContent(params?: CmsDocsContentParam) {
const res = await request.get<ApiResult<CmsDocsContent[]>>(
MODULES_API_URL + '/cms/cms-docs-content',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加文档内容记录表
*/
export async function addCmsDocsContent(data: CmsDocsContent) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-content',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改文档内容记录表
*/
export async function updateCmsDocsContent(data: CmsDocsContent) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-content',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除文档内容记录表
*/
export async function removeCmsDocsContent(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-content/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除文档内容记录表
*/
export async function removeBatchCmsDocsContent(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-docs-content/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询文档内容记录表
*/
export async function getCmsDocsContent(id: number) {
const res = await request.get<ApiResult<CmsDocsContent>>(
MODULES_API_URL + '/cms/cms-docs-content/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,25 +0,0 @@
import type { PageParam } from '@/api';
/**
* 文档内容记录表
*/
export interface CmsDocsContent {
// ID
id?: number;
// 文档ID
docsId?: number;
// 文档内容
content?: string;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 文档内容记录表搜索条件
*/
export interface CmsDocsContentParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,61 +0,0 @@
import type { PageParam } from '@/api';
/**
* 小程序信息
*/
export interface CmsMp {
// ID
mpId?: number;
// 是否主账号
type?: number;
// 小程序ID
appId?: string;
// 小程序密钥
appSecret?: string;
// 小程序名称
mpName?: string;
// 小程序简称
shortName?: string;
// 头像
avatar?: string;
// 小程序码
mpQrcode?: string;
// 微信认证
authentication?: number;
// 主体信息
companyName?: string;
// 小程序备案
icpNo?: string;
// 登录邮箱
email?: string;
// 登录密码
password?: string;
// 原始ID
ghId?: string;
// 入口页面
mainPath?: string;
// 过期时间
expirationTime?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 介绍
comments?: string;
// 用户ID
userId?: number;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 小程序信息搜索条件
*/
export interface CmsMpParam extends PageParam {
mpId?: number;
keywords?: string;
}

View File

@@ -1,47 +0,0 @@
import type { PageParam } from '@/api';
/**
* 小程序广告位
*/
export interface CmsMpAd {
// ID
adId?: number;
// 页面ID
pageId?: number;
// 广告类型
adType?: string;
// 广告位名称
name?: string;
// 宽
width?: string;
// 高
height?: string;
// 广告图片
images?: string;
// 路由/链接地址
path?: string;
// 页面名称
pageName?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 小程序广告位搜索条件
*/
export interface CmsMpAdParam extends PageParam {
adId?: number;
keywords?: string;
}

View File

@@ -1,35 +0,0 @@
import type { PageParam } from '@/api';
/**
* 小程序配置
*/
export interface CmsMpField {
// 自增ID
id?: number;
// 类型0文本 1图片 2其他
type?: number;
// 名称
name?: string;
// 备注
comments?: string;
// 名称
value?: string;
// 页面ID
pageId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 小程序配置搜索条件
*/
export interface CmsMpFieldParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,79 +0,0 @@
import type { PageParam } from '@/api';
/**
* 小程序端菜单
*/
export interface CmsMpMenu {
// ID
menuId?: number;
// 上级id, 0是顶级
parentId?: number;
// 菜单名称
title?: string;
// 类型 0功能图标 1订单状态图标 2首页导航图标 3 商城导航图标 4管理人员功能图标
type?: number;
// 是否微信小程序菜单
isMpWeixin?: string;
// 菜单路由地址
path?: string;
// 菜单组件地址, 目录可为空
component?: string;
// 打开位置
target?: string;
// 菜单图标
avatar?: string;
// 图标颜色
color?: string;
// 上传图标
icon?: string;
// 是否隐藏, 0否, 1是(仅注册路由不显示在左侧菜单)
hide?: number;
// 位置 0不限 1顶部 2底部
position?: number;
// 0 第一行 1第二行
rows?: number;
// 菜单侧栏选中的path
active?: string;
// 其它路由元信息
meta?: string;
// 绑定的页面
pageId?: number;
// 绑定的文章分类ID
articleCategoryId?: number;
// 绑定的文章ID
articleId?: number;
// 绑定的表单ID
formId?: number;
// 绑定的书籍标识
bookCode?: string;
// 绑定的商品分类ID
goodsCategoryId?: number;
// 绑定的商品ID
goodsId?: number;
// 用户ID
userId?: number;
// 是否管理人员可见
adminShow?: number;
// 设为首页
home?: number;
// 分组名称
groupName?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 小程序端菜单搜索条件
*/
export interface CmsMpMenuParam extends PageParam {
menuId?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMpPages, CmsMpPagesParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询小程序页面
*/
export async function pageCmsMpPages(params: CmsMpPagesParam) {
const res = await request.get<ApiResult<PageResult<CmsMpPages>>>(
MODULES_API_URL + '/cms/cms-mp-pages/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询小程序页面列表
*/
export async function listCmsMpPages(params?: CmsMpPagesParam) {
const res = await request.get<ApiResult<CmsMpPages[]>>(
MODULES_API_URL + '/cms/cms-mp-pages',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加小程序页面
*/
export async function addCmsMpPages(data: CmsMpPages) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-pages',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改小程序页面
*/
export async function updateCmsMpPages(data: CmsMpPages) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-pages',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除小程序页面
*/
export async function removeCmsMpPages(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-pages/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除小程序页面
*/
export async function removeBatchCmsMpPages(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-pages/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询小程序页面
*/
export async function getCmsMpPages(id: number) {
const res = await request.get<ApiResult<CmsMpPages>>(
MODULES_API_URL + '/cms/cms-mp-pages/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,49 +0,0 @@
import type { PageParam } from '@/api';
/**
* 小程序页面
*/
export interface CmsMpPages {
// ID
id?: number;
// 上级id, 0是顶级
parentId?: number;
// 页面名称
title?: string;
// 页面路径
path?: string;
// 设为首页
home?: number;
// 分包
subpackage?: string;
// 图标
icon?: string;
// 未选中图标
iconPath?: string;
// 选中的图标
selectedIconPath?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 用户ID
userId?: number;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 子级
children?: CmsMpPages[];
}
/**
* 小程序页面搜索条件
*/
export interface CmsMpPagesParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -119,3 +119,33 @@ export async function getCmsNavigation(id: number) {
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据code查询导航
*/
export async function getByCode(code: string) {
const res = await request.get<ApiResult<CmsNavigation>>(
'/cms/cms-navigation/getByCode/' + code
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导航批量导入
*/
export async function importCmsNavigation(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-navigation/import',
formData
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,116 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProduct, CmsProductParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询产品
*/
export async function pageCmsProduct(params: CmsProductParam) {
const res = await request.get<ApiResult<PageResult<CmsProduct>>>(
MODULES_API_URL + '/cms/cms-product/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询产品列表
*/
export async function listCmsProduct(params?: CmsProductParam) {
const res = await request.get<ApiResult<CmsProduct[]>>(
MODULES_API_URL + '/cms/cms-product',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加产品
*/
export async function addCmsProduct(data: CmsProduct) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改产品
*/
export async function updateCmsProduct(data: CmsProduct) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除产品
*/
export async function removeCmsProduct(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除产品
*/
export async function removeBatchCmsProduct(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询产品
*/
export async function getCmsProduct(id: number) {
const res = await request.get<ApiResult<CmsProduct>>(
MODULES_API_URL + '/cms/cms-product/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function getCount(params: CmsProductParam) {
const res = await request.get(MODULES_API_URL + '/cms/cms-product/data', {
params
});
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,98 +0,0 @@
import type { PageParam } from '@/api';
/**
* 产品
*/
export interface CmsProduct {
// 自增ID
productId?: number;
// 类型 0软件产品 1实物商品 2虚拟商品
type?: number;
// 产品编码
code?: string;
// 产品标题
title?: string;
// 封面图
image?: string;
// 产品详情
content?: string;
// 父级分类ID
parentId?: number;
// 父级栏目名称
parentName?: string;
// 产品分类ID
categoryId?: number;
// 分类名称
categoryName?: string;
// 关联的菜单ID
menuId?: number;
// 控制台入口
path?: string;
// 产品规格 0单规格 1多规格
specs?: number;
// 货架
position?: string;
// 单位名称 (个)
unitName?: string;
// 进货价格
price?: string;
// 销售价格
salePrice?: string;
// 标签
tag?: string;
// 库存计算方式(10下单减库存 20付款减库存)
deductStockType?: number;
// 交付方式
deliveryMethod?: number;
// 购买时长
durationMethod?: number;
// 服务套餐
serverMethod?: number;
// 套餐版本
packageMethod?: number;
// 可购买数量
canBuyNumber?: number;
// 轮播图
files?: string;
// 销量
sales?: number;
// 库存
stock?: number;
// 消费赚取积分
gainIntegral?: string;
// 推荐
recommend?: number;
// 是否官方自营
official?: number;
// 商户ID
merchantId?: number;
// 状态0未上架1上架
isShow?: string;
// 状态, 0上架 1待上架 2待审核 3审核不通过
status?: number;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 用户ID
userId?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 产品搜索条件
*/
export interface CmsProductParam extends PageParam {
productId?: number;
type?: number;
official?: number;
status?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type {ApiResult, PageResult} from '@/api';
import type {CmsProductComment, CmsProductCommentParam} from './model';
import {MODULES_API_URL} from '@/config/setting';
/**
* 分页查询产品评论
*/
export async function pageCmsProductComment(params: CmsProductCommentParam) {
const res = await request.get<ApiResult<PageResult<CmsProductComment>>>(
MODULES_API_URL + '/cms/cms-product-comment/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询产品评论列表
*/
export async function listCmsProductComment(params?: CmsProductCommentParam) {
const res = await request.get<ApiResult<CmsProductComment[]>>(
MODULES_API_URL + '/cms/cms-product-comment',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加产品评论
*/
export async function addCmsProductComment(data: CmsProductComment) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-comment',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改产品评论
*/
export async function updateCmsProductComment(data: CmsProductComment) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-comment',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除产品评论
*/
export async function removeCmsProductComment(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-comment/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除产品评论
*/
export async function removeBatchCmsProductComment(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-comment/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询产品评论
*/
export async function getCmsProductComment(id: number) {
const res = await request.get<ApiResult<CmsProductComment>>(
MODULES_API_URL + '/cms/cms-product-comment/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,37 +0,0 @@
import type { PageParam } from '@/api';
/**
* 产品评论
*/
export interface CmsProductComment {
// ID
id?: number;
// 产品ID
productId?: number;
// 用户ID
userId?: number;
// 昵称
nickname?: string;
// 用户头像
avatar?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 评论内容
comments?: string;
// 状态
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
image?: string;
}
/**
* 产品评论搜索条件
*/
export interface CmsProductCommentParam extends PageParam {
id?: number;
userId?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProductParameter, CmsProductParameterParam } from './model';
import {MODULES_API_URL} from '@/config/setting';
/**
* 分页查询产品参数
*/
export async function pageCmsProductParameter(params: CmsProductParameterParam) {
const res = await request.get<ApiResult<PageResult<CmsProductParameter>>>(
MODULES_API_URL + '/cms/cms-product-parameter/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询产品参数列表
*/
export async function listCmsProductParameter(params?: CmsProductParameterParam) {
const res = await request.get<ApiResult<CmsProductParameter[]>>(
MODULES_API_URL + '/cms/cms-product-parameter',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加产品参数
*/
export async function addCmsProductParameter(data: CmsProductParameter) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-parameter',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改产品参数
*/
export async function updateCmsProductParameter(data: CmsProductParameter) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-parameter',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除产品参数
*/
export async function removeCmsProductParameter(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-parameter/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除产品参数
*/
export async function removeBatchCmsProductParameter(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-parameter/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询产品参数
*/
export async function getCmsProductParameter(id: number) {
const res = await request.get<ApiResult<CmsProductParameter>>(
MODULES_API_URL + '/cms/cms-product-parameter/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,33 +0,0 @@
import type { PageParam } from '@/api';
/**
* 产品参数
*/
export interface CmsProductParameter {
// 自增ID
id?: number;
// 产品ID
productId?: number;
// 参数名称
name?: string;
// 参数内容
value?: string;
// 备注
comments?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 状态, 0正常, 1待确认
status?: number;
// 创建时间
createTime?: string;
// 租户id
tenantId?: number;
}
/**
* 产品参数搜索条件
*/
export interface CmsProductParameterParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,31 +0,0 @@
import type { PageParam } from '@/api';
/**
* 插件安装明细
*/
export interface CmsProductRecord {
// ID
id?: number;
// 产品ID
productId?: number;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0已安装, 1已卸载
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 插件安装明细搜索条件
*/
export interface CmsProductRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProductSku, CmsProductSkuParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询商品sku列表
*/
export async function pageCmsProductSku(params: CmsProductSkuParam) {
const res = await request.get<ApiResult<PageResult<CmsProductSku>>>(
MODULES_API_URL + '/cms/cms-product-sku/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询商品sku列表列表
*/
export async function listCmsProductSku(params?: CmsProductSkuParam) {
const res = await request.get<ApiResult<CmsProductSku[]>>(
MODULES_API_URL + '/cms/cms-product-sku',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加商品sku列表
*/
export async function addCmsProductSku(data: CmsProductSku) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-sku',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改商品sku列表
*/
export async function updateCmsProductSku(data: CmsProductSku) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-sku',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除商品sku列表
*/
export async function removeCmsProductSku(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-sku/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除商品sku列表
*/
export async function removeBatchCmsProductSku(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-sku/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询商品sku列表
*/
export async function getCmsProductSku(id: number) {
const res = await request.get<ApiResult<CmsProductSku>>(
MODULES_API_URL + '/cms/cms-product-sku/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,49 +0,0 @@
import type { PageParam } from '@/api';
/**
* 商品sku列表
*/
export interface CmsProductSku {
// 主键ID
id?: number;
// 商品ID
goodsId?: number;
// 商品属性索引值 (attr_value|attr_value[|....])
sku?: string;
// 商品图片
image?: string;
// 商品价格
price?: string;
// 市场价格
salePrice?: string;
// 成本价
cost?: string;
// 库存
stock?: number;
// sku编码
skuNo?: string;
// 商品条码
barCode?: string;
// 重量
weight?: string;
// 体积
volume?: string;
// 唯一值
uuid?: string;
// 状态, 0正常, 1异常
status?: number;
// 备注
comments?: string;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 商品sku列表搜索条件
*/
export interface CmsProductSkuParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,35 +0,0 @@
import type { PageParam } from '@/api';
/**
* 规格
*/
export interface CmsProductSpec {
// 规格ID
specId?: number;
// 规格名称
specName?: string;
// 规格值
specValue?: string;
// 创建用户
userId?: number;
// 更新者
updater?: number;
// 备注
comments?: string;
// 状态, 0正常, 1待修,2异常已修3异常未修
status?: number;
// 排序号
sortNumber?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 规格搜索条件
*/
export interface CmsProductSpecParam extends PageParam {
specId?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProductSpecValue, CmsProductSpecValueParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询规格值
*/
export async function pageCmsProductSpecValue(params: CmsProductSpecValueParam) {
const res = await request.get<ApiResult<PageResult<CmsProductSpecValue>>>(
MODULES_API_URL + '/cms/cms-product-spec-value/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询规格值列表
*/
export async function listCmsProductSpecValue(params?: CmsProductSpecValueParam) {
const res = await request.get<ApiResult<CmsProductSpecValue[]>>(
MODULES_API_URL + '/cms/cms-product-spec-value',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加规格值
*/
export async function addCmsProductSpecValue(data: CmsProductSpecValue) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec-value',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改规格值
*/
export async function updateCmsProductSpecValue(data: CmsProductSpecValue) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec-value',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除规格值
*/
export async function removeCmsProductSpecValue(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec-value/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除规格值
*/
export async function removeBatchCmsProductSpecValue(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec-value/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询规格值
*/
export async function getCmsProductSpecValue(id: number) {
const res = await request.get<ApiResult<CmsProductSpecValue>>(
MODULES_API_URL + '/cms/cms-product-spec-value/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,29 +0,0 @@
import type { PageParam } from '@/api';
/**
* 规格值
*/
export interface CmsProductSpecValue {
// 规格值ID
specValueId?: number;
// 规格组ID
specId?: number;
// 规格值
specValue?: string;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 规格值搜索条件
*/
export interface CmsProductSpecValueParam extends PageParam {
specValueId?: number;
keywords?: string;
}

View File

@@ -1,106 +0,0 @@
import request from '@/utils/request';
import type {ApiResult, PageResult} from '@/api';
import type {CmsProductUrl, CmsProductUrlParam} from './model';
import {MODULES_API_URL} from '@/config/setting';
/**
* 分页查询域名
*/
export async function pageCmsProductUrl(params: CmsProductUrlParam) {
const res = await request.get<ApiResult<PageResult<CmsProductUrl>>>(
MODULES_API_URL + '/cms/cms-product-url/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询域名列表
*/
export async function listCmsProductUrl(params?: CmsProductUrlParam) {
const res = await request.get<ApiResult<CmsProductUrl[]>>(
MODULES_API_URL + '/cms/cms-product-url',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加域名
*/
export async function addCmsProductUrl(data: CmsProductUrl) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-url',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改域名
*/
export async function updateCmsProductUrl(data: CmsProductUrl) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-url',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除域名
*/
export async function removeCmsProductUrl(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-url/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除域名
*/
export async function removeBatchCmsProductUrl(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-url/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询域名
*/
export async function getCmsProductUrl(id: number) {
const res = await request.get<ApiResult<CmsProductUrl>>(
MODULES_API_URL + '/cms/cms-product-url/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -1,41 +0,0 @@
import type { PageParam } from '@/api';
/**
* 域名
*/
export interface CmsProductUrl {
// 自增ID
id?: number;
// 产品ID
productId?: number;
// 域名类型
type?: string;
// 域名
domain?: string;
// 账号
account?: string;
// 密码
password?: string;
// 商户ID
merchantId?: number;
// 二维码
qrcode?: string;
// 备注
comments?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 状态, 0正常, 1待确认
status?: number;
// 创建时间
createTime?: string;
// 租户id
tenantId?: number;
}
/**
* 域名搜索条件
*/
export interface CmsProductUrlParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,35 +0,0 @@
import type { PageParam } from '@/api';
/**
* 规格
*/
export interface CmsSpec {
// 规格ID
specId?: number;
// 规格名称
specName?: string;
// 规格值
specValue?: string;
// 创建用户
userId?: number;
// 更新者
updater?: number;
// 备注
comments?: string;
// 状态, 0正常, 1待修,2异常已修3异常未修
status?: number;
// 排序号
sortNumber?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 规格搜索条件
*/
export interface CmsSpecParam extends PageParam {
specId?: number;
keywords?: string;
}

View File

@@ -1,29 +0,0 @@
import type { PageParam } from '@/api';
/**
* 规格值
*/
export interface CmsSpecValue {
// 规格值ID
specValueId?: number;
// 规格组ID
specId?: number;
// 规格值
specValue?: string;
// 备注
comments?: string;
// 排序号
sortNumber?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 规格值搜索条件
*/
export interface CmsSpecValueParam extends PageParam {
specValueId?: number;
keywords?: string;
}

View File

@@ -1,5 +1,6 @@
import type { PageParam } from '@/api';
import {CmsWebsiteSetting} from "@/api/cms/cmsWebsiteSetting/model";
import {CmsNavigation} from "@/api/cms/cmsNavigation/model";
/**
* 网站信息记录表
@@ -11,6 +12,8 @@ export interface CmsWebsite {
websiteName?: string;
// 网站标识
websiteCode?: string;
// 网站密钥
websiteSecret?: string;
// 网站LOGO
websiteIcon?: string;
// 网站LOGO
@@ -121,6 +124,33 @@ export interface CmsWebsite {
setting?: CmsWebsiteSetting;
}
export interface AppInfo {
appId?: number;
appName?: string;
description?: string;
keywords?: string;
appCode?: string;
mpQrCode?: string;
title?: string;
logo?: string;
icon?: string;
domain?: string;
running?: number;
version?: number;
expirationTime?: string;
expired?: boolean;
expiredDays?: number;
soon?: number;
statusIcon?: string;
statusText?: string;
config?: Object;
serverTime?: Object;
topNavs?: CmsNavigation[];
bottomNavs?: CmsNavigation[];
setting?: Object;
createTime?: string;
}
/**
* 网站信息记录表搜索条件
*/

View File

@@ -105,6 +105,19 @@ export async function getCmsWebsiteField(id: number) {
return Promise.reject(new Error(res.data.message));
}
/**
* 根据code查询应用参数
*/
export async function getCmsWebsiteFieldByCode(code: string) {
const res = await request.get<ApiResult<CmsWebsiteField>>(
MODULES_API_URL + '/cms/cms-website-field/getByCode/' + code
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 恢复项目参数
*/
@@ -118,6 +131,21 @@ export async function undeleteWebsiteField(id?: number) {
return Promise.reject(new Error(res.data.message));
}
/**
* 参数批量导入
*/
export async function importWebsiteField(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-website-field/import',
formData
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询项目参数列表

View File

@@ -19,9 +19,11 @@ export interface CmsWebsiteField {
// css样式
style?: string;
// 名称
value?: string;
value?: any;
// 语言
lang?: string;
// 是否加密
encrypted?: boolean;
// 模板
template?: string;
// 排序(数字越小越靠前)
@@ -56,4 +58,8 @@ export interface Config {
email?: string;
loginTitle?: string;
sysLogo?: string;
}
// 添加API地址配置项
ApiUrl?: string;
// 添加主题配置项
theme?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProductSpec, CmsProductSpecParam } from './model';
import type { DormitoryApply, DormitoryApplyParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
*
*/
export async function pageCmsProductSpec(params: CmsProductSpecParam) {
const res = await request.get<ApiResult<PageResult<CmsProductSpec>>>(
MODULES_API_URL + '/cms/cms-product-spec/page',
export async function pageDormitoryApply(params: DormitoryApplyParam) {
const res = await request.get<ApiResult<PageResult<DormitoryApply>>>(
MODULES_API_URL + '/dormitory/dormitory-apply/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageCmsProductSpec(params: CmsProductSpecParam) {
}
/**
*
*
*/
export async function listCmsProductSpec(params?: CmsProductSpecParam) {
const res = await request.get<ApiResult<CmsProductSpec[]>>(
MODULES_API_URL + '/cms/cms-product-spec',
export async function listDormitoryApply(params?: DormitoryApplyParam) {
const res = await request.get<ApiResult<DormitoryApply[]>>(
MODULES_API_URL + '/dormitory/dormitory-apply',
{
params
}
@@ -36,11 +36,11 @@ export async function listCmsProductSpec(params?: CmsProductSpecParam) {
}
/**
*
*
*/
export async function addCmsProductSpec(data: CmsProductSpec) {
export async function addDormitoryApply(data: DormitoryApply) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec',
MODULES_API_URL + '/dormitory/dormitory-apply',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addCmsProductSpec(data: CmsProductSpec) {
}
/**
*
*
*/
export async function updateCmsProductSpec(data: CmsProductSpec) {
export async function updateDormitoryApply(data: DormitoryApply) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec',
MODULES_API_URL + '/dormitory/dormitory-apply',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateCmsProductSpec(data: CmsProductSpec) {
}
/**
*
*
*/
export async function removeCmsProductSpec(id?: number) {
export async function removeDormitoryApply(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec/' + id
MODULES_API_URL + '/dormitory/dormitory-apply/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeCmsProductSpec(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsProductSpec(data: (number | undefined)[]) {
export async function removeBatchDormitoryApply(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-spec/batch',
MODULES_API_URL + '/dormitory/dormitory-apply/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchCmsProductSpec(data: (number | undefined)[]) {
}
/**
* id查询规格
* id查询审批管理
*/
export async function getCmsProductSpec(id: number) {
const res = await request.get<ApiResult<CmsProductSpec>>(
MODULES_API_URL + '/cms/cms-product-spec/' + id
export async function getDormitoryApply(id: number) {
const res = await request.get<ApiResult<DormitoryApply>>(
MODULES_API_URL + '/dormitory/dormitory-apply/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,57 @@
import type { PageParam } from '@/api';
/**
* 审批管理
*/
export interface DormitoryApply {
// 主键ID
id?: number;
// 类型
type?: number;
// 用户ID
userId?: number;
// 姓名
realName?: string;
// 手机号
mobile?: string;
// 客户名称
dealerName?: string;
// 客户编号
dealerCode?: string;
// 详细地址
address?: string;
// 签约价格
money?: string;
// 推荐人用户ID
refereeId?: number;
// 申请方式(10需后台审核 20无需审核)
applyType?: number;
// 审核状态 (10待审核 20审核通过 30驳回)
applyStatus?: number;
// 申请时间
applyTime?: string;
// 审核时间
auditTime?: string;
// 合同时间
contractTime?: string;
// 过期时间
expirationTime?: string;
// 驳回原因
rejectReason?: string;
// 备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 审批管理搜索条件
*/
export interface DormitoryApplyParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsSpecValue, CmsSpecValueParam } from './model';
import type { DormitoryBed, DormitoryBedParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
* 宿
*/
export async function pageCmsSpecValue(params: CmsSpecValueParam) {
const res = await request.get<ApiResult<PageResult<CmsSpecValue>>>(
MODULES_API_URL + '/cms/cms-spec-value/page',
export async function pageDormitoryBed(params: DormitoryBedParam) {
const res = await request.get<ApiResult<PageResult<DormitoryBed>>>(
MODULES_API_URL + '/dormitory/dormitory-bed/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageCmsSpecValue(params: CmsSpecValueParam) {
}
/**
*
* 宿
*/
export async function listCmsSpecValue(params?: CmsSpecValueParam) {
const res = await request.get<ApiResult<CmsSpecValue[]>>(
MODULES_API_URL + '/cms/cms-spec-value',
export async function listDormitoryBed(params?: DormitoryBedParam) {
const res = await request.get<ApiResult<DormitoryBed[]>>(
MODULES_API_URL + '/dormitory/dormitory-bed',
{
params
}
@@ -36,11 +36,11 @@ export async function listCmsSpecValue(params?: CmsSpecValueParam) {
}
/**
*
* 宿
*/
export async function addCmsSpecValue(data: CmsSpecValue) {
export async function addDormitoryBed(data: DormitoryBed) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec-value',
MODULES_API_URL + '/dormitory/dormitory-bed',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addCmsSpecValue(data: CmsSpecValue) {
}
/**
*
* 宿
*/
export async function updateCmsSpecValue(data: CmsSpecValue) {
export async function updateDormitoryBed(data: DormitoryBed) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec-value',
MODULES_API_URL + '/dormitory/dormitory-bed',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateCmsSpecValue(data: CmsSpecValue) {
}
/**
*
* 宿
*/
export async function removeCmsSpecValue(id?: number) {
export async function removeDormitoryBed(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec-value/' + id
MODULES_API_URL + '/dormitory/dormitory-bed/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeCmsSpecValue(id?: number) {
}
/**
*
* 宿
*/
export async function removeBatchCmsSpecValue(data: (number | undefined)[]) {
export async function removeBatchDormitoryBed(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-spec-value/batch',
MODULES_API_URL + '/dormitory/dormitory-bed/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchCmsSpecValue(data: (number | undefined)[]) {
}
/**
* id查询规格值
* id查询宿舍床铺
*/
export async function getCmsSpecValue(id: number) {
const res = await request.get<ApiResult<CmsSpecValue>>(
MODULES_API_URL + '/cms/cms-spec-value/' + id
export async function getDormitoryBed(id: number) {
const res = await request.get<ApiResult<DormitoryBed>>(
MODULES_API_URL + '/dormitory/dormitory-bed/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,55 @@
import type { PageParam } from '@/api';
/**
* 宿舍床铺
*/
export interface DormitoryBed {
// ID
id?: number;
// 宿舍名称
name?: string;
// 编号
code?: string;
// 楼栋ID
buildingId?: number;
// 楼栋名称
buildingName?: string;
// 楼层ID
floorId?: number;
// 楼层名称
floorName?: string;
// 房间ID
recordId?: number;
// 房间名称
recordName?: string;
// 上下铺 1下铺 2上铺 0无
bunk?: number;
// 充电口
chargingPort?: string;
// 用户ID
userId?: number;
// 真实姓名
realName?: string;
// 手机号码
phone?: string;
// 头像
avatar?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1报修
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 宿舍床铺搜索条件
*/
export interface DormitoryBedParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsMpOfficialMenu, CmsMpOfficialMenuParam } from './model';
import type { DormitoryBuilding, DormitoryBuildingParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
* 宿
*/
export async function pageCmsMpOfficialMenu(params: CmsMpOfficialMenuParam) {
const res = await request.get<ApiResult<PageResult<CmsMpOfficialMenu>>>(
MODULES_API_URL + '/cms/cms-mp-official-menu/page',
export async function pageDormitoryBuilding(params: DormitoryBuildingParam) {
const res = await request.get<ApiResult<PageResult<DormitoryBuilding>>>(
MODULES_API_URL + '/dormitory/dormitory-building/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageCmsMpOfficialMenu(params: CmsMpOfficialMenuParam) {
}
/**
*
* 宿
*/
export async function listCmsMpOfficialMenu(params?: CmsMpOfficialMenuParam) {
const res = await request.get<ApiResult<CmsMpOfficialMenu[]>>(
MODULES_API_URL + '/cms/cms-mp-official-menu',
export async function listDormitoryBuilding(params?: DormitoryBuildingParam) {
const res = await request.get<ApiResult<DormitoryBuilding[]>>(
MODULES_API_URL + '/dormitory/dormitory-building',
{
params
}
@@ -36,11 +36,11 @@ export async function listCmsMpOfficialMenu(params?: CmsMpOfficialMenuParam) {
}
/**
*
* 宿
*/
export async function addCmsMpOfficialMenu(data: CmsMpOfficialMenu) {
export async function addDormitoryBuilding(data: DormitoryBuilding) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-official-menu',
MODULES_API_URL + '/dormitory/dormitory-building',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addCmsMpOfficialMenu(data: CmsMpOfficialMenu) {
}
/**
*
* 宿
*/
export async function updateCmsMpOfficialMenu(data: CmsMpOfficialMenu) {
export async function updateDormitoryBuilding(data: DormitoryBuilding) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-official-menu',
MODULES_API_URL + '/dormitory/dormitory-building',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateCmsMpOfficialMenu(data: CmsMpOfficialMenu) {
}
/**
*
* 宿
*/
export async function removeCmsMpOfficialMenu(id?: number) {
export async function removeDormitoryBuilding(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-official-menu/' + id
MODULES_API_URL + '/dormitory/dormitory-building/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeCmsMpOfficialMenu(id?: number) {
}
/**
*
* 宿
*/
export async function removeBatchCmsMpOfficialMenu(data: (number | undefined)[]) {
export async function removeBatchDormitoryBuilding(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-mp-official-menu/batch',
MODULES_API_URL + '/dormitory/dormitory-building/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchCmsMpOfficialMenu(data: (number | undefined)[])
}
/**
* id查询微信公众号
* id查询宿舍楼栋
*/
export async function getCmsMpOfficialMenu(id: number) {
const res = await request.get<ApiResult<CmsMpOfficialMenu>>(
MODULES_API_URL + '/cms/cms-mp-official-menu/' + id
export async function getDormitoryBuilding(id: number) {
const res = await request.get<ApiResult<DormitoryBuilding>>(
MODULES_API_URL + '/dormitory/dormitory-building/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -1,19 +1,15 @@
import type { PageParam } from '@/api';
/**
*
* 宿
*/
export interface CmsMpOfficialMenu {
export interface DormitoryBuilding {
// ID
id?: number;
// 上级id, 0是顶级
parentId?: number;
// 菜单名称
// 楼栋名称
name?: string;
// 类型
type?: string;
// 菜单值
key?: string;
// 楼栋编号
code?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
@@ -27,9 +23,9 @@ export interface CmsMpOfficialMenu {
}
/**
*
* 宿
*/
export interface CmsMpOfficialMenuParam extends PageParam {
export interface DormitoryBuildingParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { MpOfficialMenu, MpOfficialMenuParam } from './model';
import type { DormitoryFloor, DormitoryFloorParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
* 宿
*/
export async function pageMpOfficialMenu(params: MpOfficialMenuParam) {
const res = await request.get<ApiResult<PageResult<MpOfficialMenu>>>(
MODULES_API_URL + '/cms/mp-official-menu/page',
export async function pageDormitoryFloor(params: DormitoryFloorParam) {
const res = await request.get<ApiResult<PageResult<DormitoryFloor>>>(
MODULES_API_URL + '/dormitory/dormitory-floor/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageMpOfficialMenu(params: MpOfficialMenuParam) {
}
/**
*
* 宿
*/
export async function listMpOfficialMenu(params?: MpOfficialMenuParam) {
const res = await request.get<ApiResult<MpOfficialMenu[]>>(
MODULES_API_URL + '/cms/mp-official-menu',
export async function listDormitoryFloor(params?: DormitoryFloorParam) {
const res = await request.get<ApiResult<DormitoryFloor[]>>(
MODULES_API_URL + '/dormitory/dormitory-floor',
{
params
}
@@ -36,11 +36,11 @@ export async function listMpOfficialMenu(params?: MpOfficialMenuParam) {
}
/**
*
* 宿
*/
export async function addMpOfficialMenu(data: MpOfficialMenu) {
export async function addDormitoryFloor(data: DormitoryFloor) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-official-menu',
MODULES_API_URL + '/dormitory/dormitory-floor',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addMpOfficialMenu(data: MpOfficialMenu) {
}
/**
*
* 宿
*/
export async function updateMpOfficialMenu(data: MpOfficialMenu) {
export async function updateDormitoryFloor(data: DormitoryFloor) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-official-menu',
MODULES_API_URL + '/dormitory/dormitory-floor',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateMpOfficialMenu(data: MpOfficialMenu) {
}
/**
*
* 宿
*/
export async function removeMpOfficialMenu(id?: number) {
export async function removeDormitoryFloor(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-official-menu/' + id
MODULES_API_URL + '/dormitory/dormitory-floor/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeMpOfficialMenu(id?: number) {
}
/**
*
* 宿
*/
export async function removeBatchMpOfficialMenu(data: (number | undefined)[]) {
export async function removeBatchDormitoryFloor(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-official-menu/batch',
MODULES_API_URL + '/dormitory/dormitory-floor/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchMpOfficialMenu(data: (number | undefined)[]) {
}
/**
* id查询小程序端菜单
* id查询宿舍楼层
*/
export async function getMpOfficialMenu(id: number) {
const res = await request.get<ApiResult<MpOfficialMenu>>(
MODULES_API_URL + '/cms/mp-official-menu/' + id
export async function getDormitoryFloor(id: number) {
const res = await request.get<ApiResult<DormitoryFloor>>(
MODULES_API_URL + '/dormitory/dormitory-floor/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -1,21 +1,19 @@
import type { PageParam } from '@/api';
/**
*
* 宿
*/
export interface MpOfficialMenu {
export interface DormitoryFloor {
// ID
id?: number;
// 上级id, 0是顶级
parentId?: number;
// 菜单名称
// 楼层
name?: string;
// 类型
type?: string;
// 菜单值
key?: string;
// 用户ID
userId?: number;
// 编号
code?: string;
// 楼栋ID
buildingId?: number;
// 楼栋名称
buildingName?: string;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
@@ -29,9 +27,9 @@ export interface MpOfficialMenu {
}
/**
*
* 宿
*/
export interface MpOfficialMenuParam extends PageParam {
export interface DormitoryFloorParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsDesignRecord, CmsDesignRecordParam } from './model';
import type { DormitoryRecord, DormitoryRecordParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
* 宿
*/
export async function pageCmsDesignRecord(params: CmsDesignRecordParam) {
const res = await request.get<ApiResult<PageResult<CmsDesignRecord>>>(
MODULES_API_URL + '/cms/cms-design-record/page',
export async function pageDormitoryRecord(params: DormitoryRecordParam) {
const res = await request.get<ApiResult<PageResult<DormitoryRecord>>>(
MODULES_API_URL + '/dormitory/dormitory-record/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageCmsDesignRecord(params: CmsDesignRecordParam) {
}
/**
*
* 宿
*/
export async function listCmsDesignRecord(params?: CmsDesignRecordParam) {
const res = await request.get<ApiResult<CmsDesignRecord[]>>(
MODULES_API_URL + '/cms/cms-design-record',
export async function listDormitoryRecord(params?: DormitoryRecordParam) {
const res = await request.get<ApiResult<DormitoryRecord[]>>(
MODULES_API_URL + '/dormitory/dormitory-record',
{
params
}
@@ -36,11 +36,11 @@ export async function listCmsDesignRecord(params?: CmsDesignRecordParam) {
}
/**
*
* 宿
*/
export async function addCmsDesignRecord(data: CmsDesignRecord) {
export async function addDormitoryRecord(data: DormitoryRecord) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-record',
MODULES_API_URL + '/dormitory/dormitory-record',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addCmsDesignRecord(data: CmsDesignRecord) {
}
/**
*
* 宿
*/
export async function updateCmsDesignRecord(data: CmsDesignRecord) {
export async function updateDormitoryRecord(data: DormitoryRecord) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-record',
MODULES_API_URL + '/dormitory/dormitory-record',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateCmsDesignRecord(data: CmsDesignRecord) {
}
/**
*
* 宿
*/
export async function removeCmsDesignRecord(id?: number) {
export async function removeDormitoryRecord(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-record/' + id
MODULES_API_URL + '/dormitory/dormitory-record/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeCmsDesignRecord(id?: number) {
}
/**
*
* 宿
*/
export async function removeBatchCmsDesignRecord(data: (number | undefined)[]) {
export async function removeBatchDormitoryRecord(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-design-record/batch',
MODULES_API_URL + '/dormitory/dormitory-record/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchCmsDesignRecord(data: (number | undefined)[]) {
}
/**
* id查询页面组件表
* id查询宿舍记录
*/
export async function getCmsDesignRecord(id: number) {
const res = await request.get<ApiResult<CmsDesignRecord>>(
MODULES_API_URL + '/cms/cms-design-record/' + id
export async function getDormitoryRecord(id: number) {
const res = await request.get<ApiResult<DormitoryRecord>>(
MODULES_API_URL + '/dormitory/dormitory-record/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -0,0 +1,43 @@
import type { PageParam } from '@/api';
/**
* 宿舍记录
*/
export interface DormitoryRecord {
// ID
id?: number;
// 宿舍名称
name?: string;
// 编号
code?: string;
// 楼栋ID
buildingId?: number;
// 楼栋名称
buildingName?: string;
// 楼层ID
floorId?: number;
// 楼层名称
floorName?: string;
// 床铺数
beds?: number;
// 独立卫生间
toilet?: boolean;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
}
/**
* 宿舍记录搜索条件
*/
export interface DormitoryRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -19,6 +19,10 @@ export interface HjmCar {
kuaidiAdmin?: string;
// 车辆编号
code?: string;
// 车架号
vinCode?: string;
// 保单图片
bdImg?: string;
// 绑定操作员
driverId?: number;
// 操作员名称

View File

@@ -26,6 +26,8 @@ export interface HjmChoices {
createTime?: string;
// 修改时间
updateTime?: string;
// 选择题内容
choiceContent?: string;
}
/**

View File

@@ -2,11 +2,10 @@ import request from '@/utils/request';
import type { ApiResult } from '@/api';
import type { User } from '@/api/system/user/model';
import type { UpdatePasswordParam, NoticeResult } from './model';
import {MODULES_API_URL, SERVER_API_URL} from '@/config/setting';
import {SERVER_API_URL} from '@/config/setting';
import { Company } from '@/api/system/company/model';
import { CmsWebsite } from '@/api/cms/cmsWebsite/model';
import {Menu} from "@/api/system/menu/model";
import {getLang} from "@/utils/common";
/**
* 获取当前登录的用户信息、菜单、权限、角色
@@ -26,11 +25,9 @@ export async function getTenantInfo(): Promise<Company> {
*/
export async function getSiteInfo() {
const res = await request.get<ApiResult<CmsWebsite>>(
MODULES_API_URL + '/cms/cms-website/getSiteInfo',
'/shop/getShopInfo',
{
params: {
lang: getLang()
}
params: {}
}
);
if (res.data.code === 0 && res.data.data) {
@@ -70,7 +67,7 @@ export async function updateLoginUser(data: User) {
*/
export async function getServerTime() {
const res = await request.get<ApiResult<any>>(
MODULES_API_URL + '/cms/website/getServerTime'
'/cms/website/getServerTime'
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
@@ -84,7 +81,7 @@ export async function getServerTime() {
*/
export async function getNext7day() {
const res = await request.get<ApiResult<any>>(
MODULES_API_URL + '/cms/website/getNext7day'
'/cms/website/getNext7day'
);
console.log('res.data.code: ', res.data.code);
if (res.data.code === 0 && res.data.data) {

View File

@@ -0,0 +1,50 @@
import {MODULES_API_URL} from '@/config/setting';
/**
* 小程序码参数
*/
export interface MiniProgramCodeParam {
page?: string;
scene: string;
width?: number;
checkPath?: boolean;
envVersion?: 'release' | 'trial' | 'develop';
}
/**
* 生成小程序码
*/
export async function generateMiniProgramCode(data: MiniProgramCodeParam) {
try {
const url = '/wx-login/getOrderQRCodeUnlimited/' + data.scene;
const fullUrl = MODULES_API_URL + `${url}`;
console.log('生成小程序码URL:', fullUrl);
console.log('小程序码参数:', data);
console.log('scene 参数:', data.scene);
// 直接返回URL让浏览器处理图片加载
// scene 参数中包含了租户ID信息
return fullUrl;
} catch (error: any) {
console.error('生成小程序码失败:', error);
throw new Error(error.message || '生成小程序码失败');
}
}
/**
* 生成邀请小程序码
*/
export async function generateInviteCode(inviterId: number) {
const scene = `uid_${inviterId}`;
console.log('生成邀请小程序码 scene:', scene);
return generateMiniProgramCode({
page: 'pages/index/index',
scene: scene,
width: 180,
checkPath: true,
envVersion: 'trial'
});
}

View File

@@ -15,7 +15,7 @@ import { SERVER_API_URL } from '@/config/setting';
*/
export async function login(data: LoginParam) {
const res = await request.post<ApiResult<LoginResult>>(
SERVER_API_URL + '/loginByUserId',
SERVER_API_URL + '/login',
data
);
if (res.data.code === 0) {
@@ -54,10 +54,7 @@ export async function loginBySms(data: LoginParam) {
if (res.data.data?.user) {
const user = res.data.data?.user;
localStorage.setItem('TenantId', String(user.tenantId));
localStorage.setItem('Phone', String(user.phone));
localStorage.setItem('UserId', String(user.userId));
// localStorage.setItem('MerchantId', String(user.merchantId));
// localStorage.setItem('MerchantName', String(user.merchantName));
}
return res.data.message;

View File

@@ -0,0 +1,110 @@
import request from '@/utils/request';
import type { ApiResult } from '@/api';
import { SERVER_API_URL } from '@/config/setting';
/**
* 二维码生成响应数据
*/
export interface QrCodeResponse {
token: string; // 二维码唯一标识token
qrCode: string; // 二维码内容
expiresIn: number; // 过期时间(秒)
}
/**
* 二维码状态响应
*/
export interface QrCodeStatusResponse {
status: 'pending' | 'scanned' | 'confirmed' | 'expired';
accessToken?: string; // 登录成功时返回的JWT token
userInfo?: any; // 用户信息
expiresIn?: number; // 剩余过期时间(秒)
tenantId?: string; // 租户ID
}
/**
* 确认登录请求参数
*/
export interface QrLoginConfirmRequest {
token: string; // 二维码token
userId?: number; // 用户ID
platform?: string; // 登录平台
}
/**
* 生成登录二维码
*/
export async function generateQrCode(): Promise<QrCodeResponse> {
const res = await request.post<ApiResult<QrCodeResponse>>(
SERVER_API_URL + '/qr-login/generate',
{}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message || '生成二维码失败'));
}
/**
* 检查二维码状态
*/
export async function checkQrCodeStatus(token: string): Promise<QrCodeStatusResponse> {
const res = await request.get<ApiResult<QrCodeStatusResponse>>(
SERVER_API_URL + `/qr-login/status/${token}`
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message || '检查二维码状态失败'));
}
/**
* 扫码确认登录(移动端调用)
*/
export async function confirmQrLogin(requestData: QrLoginConfirmRequest): Promise<QrCodeStatusResponse> {
const res = await request.post<ApiResult<QrCodeStatusResponse>>(
SERVER_API_URL + '/qr-login/confirm',
requestData
);
console.log(res,'>>>89898989')
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message || '确认登录失败'));
}
/**
* 扫码标记(移动端扫码时调用)
*/
export async function scanQrCode(token: string): Promise<boolean> {
const res = await request.post<ApiResult<boolean>>(
SERVER_API_URL + `/qr-login/scan/${token}`
);
if (res.data.code === 0) {
return res.data.data || true;
}
return Promise.reject(new Error(res.data.message || '扫码失败'));
}
/**
* 微信小程序扫码登录确认
*/
export async function wechatMiniProgramConfirm(requestData: QrLoginConfirmRequest): Promise<QrCodeStatusResponse> {
const res = await request.post<ApiResult<QrCodeStatusResponse>>(
SERVER_API_URL + '/qr-login/wechat-confirm',
requestData
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message || '微信小程序登录确认失败'));
}

View File

@@ -0,0 +1,135 @@
import request from '@/utils/request';
import type {ApiResult} from '@/api';
import type {ShopDealerOrder, ShopDealerOrderParam} from './model';
import {utils, writeFile} from 'xlsx';
import {message} from 'ant-design-vue';
import {getTenantId} from '@/utils/domain';
import {listShopDealerOrder} from "@/api/shop/shopDealerOrder";
import {MODULES_API_URL} from "@/config/setting";
/**
* 导入分销商订单
*/
export async function importSdyDealerOrder(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/sdy/sdy-dealer-order/import',
formData
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出分销商订单
*/
export async function exportSdyDealerOrder(params?: ShopDealerOrderParam) {
// 显示导出加载提示
message.loading('正在准备导出数据...', 0);
try {
// 获取数据
const list = await listShopDealerOrder(params);
if (!list || list.length === 0) {
message.destroy();
message.warning('没有数据可以导出');
return;
}
// 构建导出数据
const array: (string | number)[][] = [
[
'订单ID',
'买家用户ID',
'订单总金额',
'一级分销商ID',
'一级佣金',
'二级分销商ID',
'二级佣金',
'三级分销商ID',
'三级佣金',
'订单状态',
'结算状态',
'结算时间',
'创建时间'
]
];
list.forEach((order: ShopDealerOrder) => {
array.push([
order.orderNo || '',
order.userId || '',
order.orderPrice || '0',
order.firstUserId || '',
order.firstMoney || '0',
order.secondUserId || '',
order.secondMoney || '0',
order.thirdUserId || '',
order.thirdMoney || '0',
order.isInvalid === 0 ? '有效' : '失效',
order.isSettled === 0 ? '未结算' : '已结算',
order.settleTime ? new Date(order.settleTime).toLocaleString() : '',
order.createTime || ''
]);
});
// 创建工作簿
const sheetName = `shop_dealer_order_${getTenantId()}`;
const workbook = {
SheetNames: [sheetName],
Sheets: {}
};
const sheet = utils.aoa_to_sheet(array);
workbook.Sheets[sheetName] = sheet;
// 设置列宽
sheet['!cols'] = [
{wch: 15}, // 订单ID
{wch: 12}, // 买家用户ID
{wch: 12}, // 订单总金额
{wch: 15}, // 一级分销商ID
{wch: 12}, // 一级佣金
{wch: 15}, // 二级分销商ID
{wch: 12}, // 二级佣金
{wch: 15}, // 三级分销商ID
{wch: 12}, // 三级佣金
{wch: 10}, // 订单状态
{wch: 10}, // 结算状态
{wch: 20}, // 结算时间
{wch: 20} // 创建时间
];
message.destroy();
message.loading('正在生成Excel文件...', 0);
// 延迟写入文件,确保消息提示显示
setTimeout(() => {
writeFile(workbook, `${sheetName}.xlsx`);
message.destroy();
message.success(`成功导出 ${list.length} 条记录`);
}, 1000);
} catch (error: any) {
message.destroy();
message.error(error.message || '导出失败,请重试');
}
}
/**
* 结算订单
*/
export async function updateSdyDealerOrder(data: ShopDealerOrder) {
const res = await request.put<ApiResult<unknown>>(
'/sdy/sdy-dealer-order',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,75 @@
import type { PageParam } from '@/api';
/**
* 分销商订单记录表
*/
export interface ShopDealerOrder {
// 主键ID
id?: number;
// 客户名称
title?: string;
// 买家用户ID
userId?: number;
// 业务员
nickname?: string;
// 订单编号
orderNo?: string;
// 订单总金额(不含运费)
orderPrice?: string;
// 价格
price?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 汇率
rate?: number;
// 月份
month?: string;
// 实发金额
payPrice?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
secondUserId?: number;
// 分销商用户id(三级)
thirdUserId?: number;
// 一级分销商昵称
firstNickname?: string;
// 二级分销商昵称
secondNickname?: string;
// 三级分销商昵称
thirdNickname?: string;
// 分销佣金(一级)
firstMoney?: string;
// 分销佣金(二级)
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: number;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
}
/**
* 分销商订单记录表搜索条件
*/
export interface ShopDealerOrderParam extends PageParam {
id?: number;
orderId?: number;
orderNo?: string;
productName?: string;
userId?: number;
isInvalid?: number;
isSettled?: number;
keywords?: string;
}

View File

@@ -25,9 +25,9 @@ export interface ShopCoupon {
// 领取后生效-有效天数
expireDay?: number;
// 有效期开始时间
startTime?: string;
startTime?: string | Date;
// 有效期结束时间
endTime?: string;
endTime?: string | Date;
// 适用范围(10全部商品 20指定商品 30指定分类)
applyRange?: number;
// 适用范围配置(json格式)
@@ -45,9 +45,9 @@ export interface ShopCoupon {
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
createTime?: string | Date;
// 修改时间
updateTime?: string;
updateTime?: string | Date;
// 发放总数量(-1表示无限制)
totalCount?: number;
// 已发放数量
@@ -65,5 +65,7 @@ export interface ShopCoupon {
*/
export interface ShopCouponParam extends PageParam {
id?: number;
name?: string;
type?: number;
keywords?: string;
}

View File

@@ -8,9 +8,7 @@ import type { ShopDealerApply, ShopDealerApplyParam } from './model';
export async function pageShopDealerApply(params: ShopDealerApplyParam) {
const res = await request.get<ApiResult<PageResult<ShopDealerApply>>>(
'/shop/shop-dealer-apply/page',
{
params
}
{params}
);
if (res.data.code === 0) {
return res.data.data;
@@ -24,9 +22,7 @@ export async function pageShopDealerApply(params: ShopDealerApplyParam) {
export async function listShopDealerApply(params?: ShopDealerApplyParam) {
const res = await request.get<ApiResult<ShopDealerApply[]>>(
'/shop/shop-dealer-apply',
{
params
}
{params}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
@@ -103,3 +99,60 @@ export async function getShopDealerApply(id: number) {
}
return Promise.reject(new Error(res.data.message));
}
/**
* 审核通过分销商申请
*/
export async function approveShopDealerApply(id: number) {
const res = await request.put<ApiResult<unknown>>(
`/shop/shop-dealer-apply/${id}/approve`
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 驳回分销商申请
*/
export async function rejectShopDealerApply(id: number, data: { rejectReason: string }) {
const res = await request.put<ApiResult<unknown>>(
`/shop/shop-dealer-apply/${id}/reject`,
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量审核通过分销商申请
*/
export async function batchApproveShopDealerApply(ids: number[]) {
const res = await request.put<ApiResult<unknown>>(
'/shop/shop-dealer-apply/batch-approve',
{ ids }
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导入经销商申请
*/
export async function importShopDealerApplies(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
'/shop/shop-dealer-apply/import',
formData
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -6,24 +6,35 @@ import type { PageParam } from '@/api';
export interface ShopDealerApply {
// 主键ID
applyId?: number;
// 类型
type?: number;
// 用户ID
userId?: number;
// 昵称
nickName?: string;
// 姓名
realName?: string;
// 经销商名称
dealerName?: string;
// 手机号
mobile?: string;
// 分销比例
rate?: number;
// 推荐人用户ID
refereeId?: number;
// 推荐人姓名
refereeName?: string;
// 申请方式(10需后台审核 20无需审核)
applyType?: number;
// 申请时间
applyTime?: number;
applyTime?: string | number | Date;
// 审核状态 (10待审核 20审核通过 30驳回)
applyStatus?: number;
// 审核时间
auditTime?: number;
auditTime?: string | number | Date;
// 驳回原因
rejectReason?: string;
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
@@ -37,5 +48,14 @@ export interface ShopDealerApply {
*/
export interface ShopDealerApplyParam extends PageParam {
applyId?: number;
userId?: number;
realName?: string;
dealerName?: string;
mobile?: string;
refereeId?: number;
applyType?: number;
applyStatus?: number;
startTime?: string;
endTime?: string;
keywords?: string;
}

View File

@@ -10,12 +10,14 @@ export interface ShopDealerCapital {
userId?: number;
// 订单ID
orderId?: number;
// 订单编号
orderNo?: string;
// 资金流动类型 (10佣金收入 20提现支出 30转账支出 40转账收入)
flowType?: number;
// 金额
money?: string;
// 描述
describe?: string;
comments?: string;
// 对方用户ID
toUserId?: number;
// 商城ID
@@ -31,5 +33,7 @@ export interface ShopDealerCapital {
*/
export interface ShopDealerCapitalParam extends PageParam {
id?: number;
userId?: number;
toUserId?: number;
keywords?: string;
}

View File

@@ -1,6 +1,9 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ShopDealerOrder, ShopDealerOrderParam } from './model';
import { utils, writeFile } from 'xlsx';
import { message } from 'ant-design-vue';
import { getTenantId } from '@/utils/domain';
/**
* 分页查询分销商订单记录表
@@ -103,3 +106,116 @@ export async function getShopDealerOrder(id: number) {
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导入分销商订单
*/
export async function importShopDealerOrder(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
'/shop/shop-dealer-order/import',
formData
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出分销商订单
*/
export async function exportShopDealerOrder(params?: ShopDealerOrderParam) {
// 显示导出加载提示
message.loading('正在准备导出数据...', 0);
try {
// 获取数据
const list = await listShopDealerOrder(params);
if (!list || list.length === 0) {
message.destroy();
message.warning('没有数据可以导出');
return;
}
// 构建导出数据
const array: (string | number)[][] = [
[
'订单ID',
'买家用户ID',
'订单总金额',
'一级分销商ID',
'一级佣金',
'二级分销商ID',
'二级佣金',
'三级分销商ID',
'三级佣金',
'订单状态',
'结算状态',
'结算时间',
'创建时间'
]
];
list.forEach((order: ShopDealerOrder) => {
array.push([
order.orderId || '',
order.userId || '',
order.orderPrice || '0',
order.firstUserId || '',
order.firstMoney || '0',
order.secondUserId || '',
order.secondMoney || '0',
order.thirdUserId || '',
order.thirdMoney || '0',
order.isInvalid === 0 ? '有效' : '失效',
order.isSettled === 0 ? '未结算' : '已结算',
order.settleTime ? new Date(order.settleTime).toLocaleString() : '',
order.createTime || ''
]);
});
// 创建工作簿
const sheetName = `shop_dealer_order_${getTenantId()}`;
const workbook = {
SheetNames: [sheetName],
Sheets: {}
};
const sheet = utils.aoa_to_sheet(array);
workbook.Sheets[sheetName] = sheet;
// 设置列宽
sheet['!cols'] = [
{ wch: 15 }, // 订单ID
{ wch: 12 }, // 买家用户ID
{ wch: 12 }, // 订单总金额
{ wch: 15 }, // 一级分销商ID
{ wch: 12 }, // 一级佣金
{ wch: 15 }, // 二级分销商ID
{ wch: 12 }, // 二级佣金
{ wch: 15 }, // 三级分销商ID
{ wch: 12 }, // 三级佣金
{ wch: 10 }, // 订单状态
{ wch: 10 }, // 结算状态
{ wch: 20 }, // 结算时间
{ wch: 20 } // 创建时间
];
message.destroy();
message.loading('正在生成Excel文件...', 0);
// 延迟写入文件,确保消息提示显示
setTimeout(() => {
writeFile(workbook, `${sheetName}.xlsx`);
message.destroy();
message.success(`成功导出 ${list.length} 条记录`);
}, 1000);
} catch (error: any) {
message.destroy();
message.error(error.message || '导出失败,请重试');
}
}

View File

@@ -8,10 +8,20 @@ export interface ShopDealerOrder {
id?: number;
// 买家用户ID
userId?: number;
// 订单ID
orderId?: number;
// 商品名称
title?: string;
// 买家用户昵称
nickname?: string;
// 订单编号
orderNo?: string;
// 订单总金额(不含运费)
orderPrice?: string;
// 结算金额
settledPrice?: string;
// 换算成度
degreePrice?: string;
// 支付金额
payPrice?: string;
// 分销商用户id(一级)
firstUserId?: number;
// 分销商用户id(二级)
@@ -24,12 +34,26 @@ export interface ShopDealerOrder {
secondMoney?: string;
// 分销佣金(三级)
thirdMoney?: string;
// 一级分销商昵称
firstNickname?: string;
// 二级分销商昵称
secondNickname?: string;
// 三级分销商昵称
thirdNickname?: string;
// 分销比例
rate?: number;
// 商品单价
price?: string;
// 订单月份
month?: string;
// 订单是否失效(0未失效 1已失效)
isInvalid?: number;
// 佣金结算(0未结算 1已结算)
isSettled?: number;
// 结算时间
settleTime?: number;
// 订单备注
comments?: string;
// 商城ID
tenantId?: number;
// 创建时间
@@ -43,5 +67,11 @@ export interface ShopDealerOrder {
*/
export interface ShopDealerOrderParam extends PageParam {
id?: number;
orderNo?: string;
productName?: string;
userId?: number;
isInvalid?: number;
isSettled?: number;
myOrder?: number;
keywords?: string;
}

View File

@@ -0,0 +1,131 @@
import request from '@/utils/request';
import type { ShopDealerPoster, ShopDealerPosterParam } from './model';
/**
* 分页查询分销商海报设置
*/
export async function pageShopDealerPoster(params: ShopDealerPosterParam) {
const res = await request.get('/shop/dealer/poster/page', { params });
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询分销商海报设置列表
*/
export async function listShopDealerPoster(params?: ShopDealerPosterParam) {
const res = await request.get('/shop/dealer/poster/list', { params });
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询分销商海报设置
*/
export async function getShopDealerPoster(id: number) {
const res = await request.get('/shop/dealer/poster/' + id);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 获取当前海报配置
*/
export async function getCurrentPosterConfig() {
const res = await request.get('/shop/dealer/poster/config');
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加分销商海报设置
*/
export async function addShopDealerPoster(data: ShopDealerPoster) {
const res = await request.post('/shop/dealer/poster', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改分销商海报设置
*/
export async function updateShopDealerPoster(data: ShopDealerPoster) {
const res = await request.put('/shop/dealer/poster', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 保存海报配置
*/
export async function savePosterConfig(data: any) {
const res = await request.post('/shop/dealer/poster/config', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除分销商海报设置
*/
export async function removeShopDealerPoster(id: number) {
const res = await request.delete('/shop/dealer/poster/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除分销商海报设置
*/
export async function removeBatchShopDealerPoster(ids: (number | undefined)[]) {
const res = await request.delete('/shop/dealer/poster/batch', { data: ids });
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 生成海报
*/
export async function generatePoster(userId: number, config?: any) {
const res = await request.post('/shop/dealer/poster/generate', { userId, config });
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 上传海报背景图片
*/
export async function uploadPosterBackground(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post('/shop/dealer/poster/upload/background', formData, {
headers: {
'Content-Type': 'multipart/form-data'
}
});
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,93 @@
import type { PageParam } from '@/api';
/**
* 分销商海报设置
*/
export interface ShopDealerPoster {
// 主键ID
id?: number;
// 海报名称
name?: string;
// 背景图片URL
backgroundImage?: string;
// 海报配置(JSON格式)
config?: string;
// 是否启用
enabled?: boolean;
// 是否默认
isDefault?: boolean;
// 排序
sort?: number;
// 商城ID
tenantId?: number;
// 创建时间
createTime?: string | Date;
// 修改时间
updateTime?: string | Date;
}
/**
* 海报配置
*/
export interface PosterConfig {
// 背景图片
backgroundImage?: string;
// 海报尺寸
width?: number;
height?: number;
// 是否显示头像
showAvatar?: boolean;
// 头像URL
avatarUrl?: string;
// 头像宽度
avatarWidth?: number;
// 头像形状 circle|square
avatarShape?: string;
// 是否显示昵称
showNickname?: boolean;
// 昵称
nickname?: string;
// 昵称字体大小
nicknameFontSize?: number;
// 昵称颜色
nicknameColor?: string;
// 是否显示二维码
showQrcode?: boolean;
// 二维码URL
qrcodeUrl?: string;
// 二维码宽度
qrcodeWidth?: number;
// 元素位置配置
elements?: {
avatar?: { x: number; y: number };
nickname?: { x: number; y: number };
qrcode?: { x: number; y: number };
[key: string]: { x: number; y: number } | undefined;
};
}
/**
* 分销商海报设置搜索条件
*/
export interface ShopDealerPosterParam extends PageParam {
id?: number;
name?: string;
enabled?: boolean;
keywords?: string;
}
/**
* 海报生成参数
*/
export interface PosterGenerateParam {
// 用户ID
userId: number;
// 海报配置
config?: PosterConfig;
// 用户信息
userInfo?: {
nickname?: string;
avatar?: string;
qrcode?: string;
};
}

View File

@@ -1,14 +1,14 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { CmsProductRecord, CmsProductRecordParam } from './model';
import type { ShopDealerRecord, ShopDealerRecordParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
*
*
*/
export async function pageCmsProductRecord(params: CmsProductRecordParam) {
const res = await request.get<ApiResult<PageResult<CmsProductRecord>>>(
MODULES_API_URL + '/cms/cms-product-record/page',
export async function pageShopDealerRecord(params: ShopDealerRecordParam) {
const res = await request.get<ApiResult<PageResult<ShopDealerRecord>>>(
MODULES_API_URL + '/shop/shop-dealer-record/page',
{
params
}
@@ -20,11 +20,11 @@ export async function pageCmsProductRecord(params: CmsProductRecordParam) {
}
/**
*
*
*/
export async function listCmsProductRecord(params?: CmsProductRecordParam) {
const res = await request.get<ApiResult<CmsProductRecord[]>>(
MODULES_API_URL + '/cms/cms-product-record',
export async function listShopDealerRecord(params?: ShopDealerRecordParam) {
const res = await request.get<ApiResult<ShopDealerRecord[]>>(
MODULES_API_URL + '/shop/shop-dealer-record',
{
params
}
@@ -36,11 +36,11 @@ export async function listCmsProductRecord(params?: CmsProductRecordParam) {
}
/**
*
*
*/
export async function addCmsProductRecord(data: CmsProductRecord) {
export async function addShopDealerRecord(data: ShopDealerRecord) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-record',
MODULES_API_URL + '/shop/shop-dealer-record',
data
);
if (res.data.code === 0) {
@@ -50,11 +50,11 @@ export async function addCmsProductRecord(data: CmsProductRecord) {
}
/**
*
*
*/
export async function updateCmsProductRecord(data: CmsProductRecord) {
export async function updateShopDealerRecord(data: ShopDealerRecord) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-record',
MODULES_API_URL + '/shop/shop-dealer-record',
data
);
if (res.data.code === 0) {
@@ -64,11 +64,11 @@ export async function updateCmsProductRecord(data: CmsProductRecord) {
}
/**
*
*
*/
export async function removeCmsProductRecord(id?: number) {
export async function removeShopDealerRecord(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-record/' + id
MODULES_API_URL + '/shop/shop-dealer-record/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -77,11 +77,11 @@ export async function removeCmsProductRecord(id?: number) {
}
/**
*
*
*/
export async function removeBatchCmsProductRecord(data: (number | undefined)[]) {
export async function removeBatchShopDealerRecord(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/cms-product-record/batch',
MODULES_API_URL + '/shop/shop-dealer-record/batch',
{
data
}
@@ -93,11 +93,11 @@ export async function removeBatchCmsProductRecord(data: (number | undefined)[])
}
/**
* id查询插件安装明细
* id查询客户跟进情况
*/
export async function getCmsProductRecord(id: number) {
const res = await request.get<ApiResult<CmsProductRecord>>(
MODULES_API_URL + '/cms/cms-product-record/' + id
export async function getShopDealerRecord(id: number) {
const res = await request.get<ApiResult<ShopDealerRecord>>(
MODULES_API_URL + '/shop/shop-dealer-record/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

View File

@@ -1,24 +1,24 @@
import type { PageParam } from '@/api';
/**
*
*
*/
export interface CmsDesignCollect {
//
export interface ShopDealerRecord {
// ID
id?: number;
//
title?: string;
//
// 上级id, 0是顶级
parentId?: number;
// 客户ID
dealerId?: number;
// 内容
content?: string;
//
image?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0已发布, 1待审核 2已驳回 3违规内容
// 状态, 0待处理, 1已完成
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
@@ -31,9 +31,9 @@ export interface CmsDesignCollect {
}
/**
*
*
*/
export interface CmsDesignCollectParam extends PageParam {
export interface ShopDealerRecordParam extends PageParam {
id?: number;
keywords?: string;
}

View File

@@ -8,8 +8,22 @@ export interface ShopDealerReferee {
id?: number;
// 分销商用户ID
dealerId?: number;
// 分销商名称
dealerName?: string;
// 分销商头像
dealerAvatar?: string;
// 分销商手机号
dealerPhone?: string;
// 用户id(被推荐人)
userId?: number;
// 昵称
nickname?: string;
// 头像
avatar?: string;
// 别名
alias?: string;
// 手机号
phone?: string;
// 推荐关系层级(1,2,3)
level?: number;
// 商城ID
@@ -25,5 +39,10 @@ export interface ShopDealerReferee {
*/
export interface ShopDealerRefereeParam extends PageParam {
id?: number;
dealerId?: number;
userId?: number;
level?: number;
startTime?: string;
endTime?: string;
keywords?: string;
}
}

View File

@@ -103,3 +103,38 @@ export async function getShopDealerUser(id: number) {
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导入分销商用户
*/
export async function importShopDealerUsers(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<unknown>>(
'/shop/shop-dealer-user/import',
formData,
{
headers: {
'Content-Type': 'multipart/form-data'
}
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出分销商用户
*/
export async function exportShopDealerUsers(params?: ShopDealerUserParam) {
const res = await request.get<Blob>(
'/shop/shop-dealer-user/export',
{
params,
responseType: 'blob'
}
);
return res.data;
}

View File

@@ -20,6 +20,10 @@ export interface ShopDealerUser {
freezeMoney?: string;
// 累积提现佣金
totalMoney?: string;
// 佣金比例
rate?: string;
// 单价
price?: string;
// 推荐人用户ID
refereeId?: number;
// 成员数量(一级)
@@ -35,9 +39,16 @@ export interface ShopDealerUser {
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
createTime?: string | Date;
// 修改时间
updateTime?: string;
updateTime?: string | Date;
// 扩展字段,用于编辑表单
shopDealerUserId?: number;
shopDealerUserName?: string;
status?: number;
comments?: string;
sortNumber?: number;
image?: string;
}
/**

View File

@@ -8,6 +8,14 @@ export interface ShopDealerWithdraw {
id?: number;
// 分销商用户ID
userId?: number;
// 真实姓名
realName?: string;
// 昵称
nickname?: string;
// 手机号码
phone?: string;
// 头像
avatar?: string;
// 提现金额
money?: string;
// 打款方式 (10微信 20支付宝 30银行卡)
@@ -16,6 +24,10 @@ export interface ShopDealerWithdraw {
alipayName?: string;
// 支付宝账号
alipayAccount?: string;
// 微信姓名
wechatAccount?: string;
// 微信账号
wechatName?: string;
// 开户行名称
bankName?: string;
// 银行开户名
@@ -25,11 +37,15 @@ export interface ShopDealerWithdraw {
// 申请状态 (10待审核 20审核通过 30驳回 40已打款)
applyStatus?: number;
// 审核时间
auditTime?: number;
auditTime?: any;
// 驳回原因
rejectReason?: string;
// 来源客户端(APP、H5、小程序等)
platform?: string;
// 上传支付凭证
image?: string;
// 备注
comments?: string;
// 租户id
tenantId?: number;
// 创建时间

View File

@@ -1,14 +1,13 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ShopExpress, ShopExpressParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询物流公司
*/
export async function pageShopExpress(params: ShopExpressParam) {
const res = await request.get<ApiResult<PageResult<ShopExpress>>>(
MODULES_API_URL + '/shop/shop-express/page',
'/shop/shop-express/page',
{
params
}
@@ -24,7 +23,7 @@ export async function pageShopExpress(params: ShopExpressParam) {
*/
export async function listShopExpress(params?: ShopExpressParam) {
const res = await request.get<ApiResult<ShopExpress[]>>(
MODULES_API_URL + '/shop/shop-express',
'/shop/shop-express',
{
params
}
@@ -40,7 +39,7 @@ export async function listShopExpress(params?: ShopExpressParam) {
*/
export async function addShopExpress(data: ShopExpress) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/shop/shop-express',
'/shop/shop-express',
data
);
if (res.data.code === 0) {
@@ -54,7 +53,7 @@ export async function addShopExpress(data: ShopExpress) {
*/
export async function updateShopExpress(data: ShopExpress) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/shop/shop-express',
'/shop/shop-express',
data
);
if (res.data.code === 0) {
@@ -68,7 +67,7 @@ export async function updateShopExpress(data: ShopExpress) {
*/
export async function removeShopExpress(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/shop/shop-express/' + id
'/shop/shop-express/' + id
);
if (res.data.code === 0) {
return res.data.message;
@@ -81,7 +80,7 @@ export async function removeShopExpress(id?: number) {
*/
export async function removeBatchShopExpress(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/shop/shop-express/batch',
'/shop/shop-express/batch',
{
data
}
@@ -97,7 +96,7 @@ export async function removeBatchShopExpress(data: (number | undefined)[]) {
*/
export async function getShopExpress(id: number) {
const res = await request.get<ApiResult<ShopExpress>>(
MODULES_API_URL + '/shop/shop-express/' + id
'/shop/shop-express/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;

Some files were not shown because too many files have changed in this diff Show More