docs: 添加分销商相关功能说明文档
- 新增分销商提现弹窗优化说明文档 - 新增分销商申请页面异常修复说明文档 - 新增分销商设置弹窗优化说明文档 - 新增分销商资金流动弹窗优化说明文档 - 新增分销海报功能说明文档
This commit is contained in:
@@ -17,11 +17,11 @@ export interface ShopDealerApply {
|
||||
// 申请方式(10需后台审核 20无需审核)
|
||||
applyType?: number;
|
||||
// 申请时间
|
||||
applyTime?: number;
|
||||
applyTime?: string | number | Date;
|
||||
// 审核状态 (10待审核 20审核通过 30驳回)
|
||||
applyStatus?: number;
|
||||
// 审核时间
|
||||
auditTime?: number;
|
||||
auditTime?: string | number | Date;
|
||||
// 驳回原因
|
||||
rejectReason?: string;
|
||||
// 商城ID
|
||||
@@ -37,5 +37,13 @@ export interface ShopDealerApply {
|
||||
*/
|
||||
export interface ShopDealerApplyParam extends PageParam {
|
||||
applyId?: number;
|
||||
userId?: number;
|
||||
realName?: string;
|
||||
mobile?: string;
|
||||
refereeId?: number;
|
||||
applyType?: number;
|
||||
applyStatus?: number;
|
||||
startTime?: string;
|
||||
endTime?: string;
|
||||
keywords?: string;
|
||||
}
|
||||
|
||||
@@ -43,5 +43,11 @@ export interface ShopDealerOrder {
|
||||
*/
|
||||
export interface ShopDealerOrderParam extends PageParam {
|
||||
id?: number;
|
||||
orderId?: number;
|
||||
orderNo?: string;
|
||||
productName?: string;
|
||||
userId?: number;
|
||||
isInvalid?: number;
|
||||
isSettled?: number;
|
||||
keywords?: string;
|
||||
}
|
||||
|
||||
131
src/api/shop/shopDealerPoster/index.ts
Normal file
131
src/api/shop/shopDealerPoster/index.ts
Normal 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));
|
||||
}
|
||||
93
src/api/shop/shopDealerPoster/model/index.ts
Normal file
93
src/api/shop/shopDealerPoster/model/index.ts
Normal 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;
|
||||
};
|
||||
}
|
||||
@@ -25,5 +25,10 @@ export interface ShopDealerReferee {
|
||||
*/
|
||||
export interface ShopDealerRefereeParam extends PageParam {
|
||||
id?: number;
|
||||
dealerId?: number;
|
||||
userId?: number;
|
||||
level?: number;
|
||||
startTime?: string;
|
||||
endTime?: string;
|
||||
keywords?: string;
|
||||
}
|
||||
|
||||
@@ -35,9 +35,9 @@ export interface ShopDealerUser {
|
||||
// 租户id
|
||||
tenantId?: number;
|
||||
// 创建时间
|
||||
createTime?: string;
|
||||
createTime?: string | Date;
|
||||
// 修改时间
|
||||
updateTime?: string;
|
||||
updateTime?: string | Date;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user