小程序端广告

This commit is contained in:
2024-07-23 01:59:50 +08:00
parent 3b6191cd6e
commit be0676239e
19 changed files with 2089 additions and 7 deletions

106
src/api/cms/mp/index.ts Normal file
View File

@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { Mp, MpParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询小程序信息
*/
export async function pageMp(params: MpParam) {
const res = await request.get<ApiResult<PageResult<Mp>>>(
MODULES_API_URL + '/cms/mp/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询小程序信息列表
*/
export async function listMp(params?: MpParam) {
const res = await request.get<ApiResult<Mp[]>>(
MODULES_API_URL + '/cms/mp',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加小程序信息
*/
export async function addMp(data: Mp) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改小程序信息
*/
export async function updateMp(data: Mp) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除小程序信息
*/
export async function removeMp(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除小程序信息
*/
export async function removeBatchMp(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询小程序信息
*/
export async function getMp(id: number) {
const res = await request.get<ApiResult<Mp>>(
MODULES_API_URL + '/cms/mp/' + 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,59 @@
import type { PageParam } from '@/api';
/**
* 小程序信息
*/
export interface Mp {
// ID
mpId?: 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 MpParam extends PageParam {
mpId?: number;
keywords?: string;
}

106
src/api/cms/mpAd/index.ts Normal file
View File

@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { MpAd, MpAdParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询小程序广告位
*/
export async function pageMpAd(params: MpAdParam) {
const res = await request.get<ApiResult<PageResult<MpAd>>>(
MODULES_API_URL + '/cms/mp-ad/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询小程序广告位列表
*/
export async function listMpAd(params?: MpAdParam) {
const res = await request.get<ApiResult<MpAd[]>>(
MODULES_API_URL + '/cms/mp-ad',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加小程序广告位
*/
export async function addMpAd(data: MpAd) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-ad',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改小程序广告位
*/
export async function updateMpAd(data: MpAd) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-ad',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除小程序广告位
*/
export async function removeMpAd(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-ad/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除小程序广告位
*/
export async function removeBatchMpAd(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-ad/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询小程序广告位
*/
export async function getMpAd(id: number) {
const res = await request.get<ApiResult<MpAd>>(
MODULES_API_URL + '/cms/mp-ad/' + 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,45 @@
import type { PageParam } from '@/api';
/**
* 小程序广告位
*/
export interface MpAd {
// ID
adId?: number;
// 页面ID
pageId?: number;
// 广告类型
adType?: string;
// 广告位名称
name?: string;
// 宽
width?: string;
// 高
height?: string;
// 广告图片
images?: string;
// 路由/链接地址
path?: string;
// 用户ID
userId?: number;
// 排序(数字越小越靠前)
sortNumber?: number;
// 备注
comments?: string;
// 状态, 0正常, 1冻结
status?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 注册时间
createTime?: string;
}
/**
* 小程序广告位搜索条件
*/
export interface MpAdParam extends PageParam {
adId?: number;
keywords?: string;
}

View File

@@ -0,0 +1,132 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { MpField, MpFieldParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询小程序配置
*/
export async function pageMpField(params: MpFieldParam) {
const res = await request.get<ApiResult<PageResult<MpField>>>(
MODULES_API_URL + '/cms/mp-field/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询小程序配置列表
*/
export async function listMpField(params?: MpFieldParam) {
const res = await request.get<ApiResult<MpField[]>>(
MODULES_API_URL + '/cms/mp-field',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加小程序配置
*/
export async function addMpField(data: MpField) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改小程序配置
*/
export async function updateMpField(data: MpField) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除小程序配置
*/
export async function removeMpField(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除小程序配置
*/
export async function removeBatchMpField(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询小程序配置
*/
export async function getMpField(id: number) {
const res = await request.get<ApiResult<MpField>>(
MODULES_API_URL + '/cms/mp-field/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 清除缓存
*/
export async function removeMpInfoCache(key?: string) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field/clearMpInfo/' + key
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 恢复项目参数
*/
export async function undeleteMpField(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/mp-field/undelete/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

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