初始化

This commit is contained in:
2025-01-27 23:24:42 +08:00
parent c8a96306c4
commit 6ae8339299
421 changed files with 35687 additions and 0 deletions

143
api/cms/article/index.ts Normal file
View File

@@ -0,0 +1,143 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { Article, ArticleParam } from './model';
import { MODULES_API_URL } from '~/config';
/**
* 分页查询文章
*/
export async function pageArticle(params: ArticleParam) {
const res = await request.get<ApiResult<PageResult<Article>>>(
MODULES_API_URL + '/cms/article/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询文章列表
*/
export async function listArticle(params?: ArticleParam) {
const res = await request.get<ApiResult<Article[]>>(
MODULES_API_URL + '/cms/article',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加文章
*/
export async function addArticle(data: Article) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改文章
*/
export async function updateArticle(data: Article) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除文章
*/
export async function removeArticle(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除文章
*/
export async function removeBatchArticle(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改用户状态
*/
export async function updateArticleStatus(articleId?: number, status?: number) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article/status',
{
articleId,
status
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询文章
*/
export async function getArticle(id: number) {
const res = await request.get<ApiResult<Article>>(
MODULES_API_URL + '/cms/article/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 检查IP是否存在
*/
export async function checkExistence(
field: string,
value: string,
id?: number
) {
const res = await request.get<ApiResult<unknown>>(
MODULES_API_URL + '/cms/article/existence',
{
params: { field, value, id }
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}

View File

@@ -0,0 +1,98 @@
import type { PageParam } from '@/api';
/**
* 文章
*/
export interface Article {
// 文章id
articleId?: number;
// 文章标题
title?: string;
// 分类类型
type?: number;
// 展现方式
showType?: any;
// 文章类型
categoryId?: number;
// 文章分类
categoryName?: string;
// 父级分类
parentId?: number;
// 父级分类名称
parentName?: string;
// 父级分类路径
parentPath?: string;
// 封面图
image?: string;
// 附件
files?: string;
// 附件
fileList?: string[];
// 缩列图
thumbnail?: string;
// 视频地址
video?: string;
// 上传的文件类型
accept?: string;
// 来源
source?: string;
// 文章内容
content?: string;
// 虚拟阅读量
virtualViews?: number;
// 实际阅读量
actualViews?: number;
// 浏览权限
permission?: number;
// 访问密码
password?: string;
// 访问密码(客户端传)
password2?: string;
// 用户ID
userId?: number;
// 用户昵称
nickname?: string;
// 账号
username?: string;
// 用户头像
avatar?: string;
// 作者
author?: string;
// 所属门店ID
shopId?: number;
//
likes?: number;
// 排序
sortNumber?: any;
// 备注
comments?: any;
// 状态
status?: number;
// 创建时间
createTime?: string;
// 更新时间
updateTime?: string;
// 租户ID
tenantId?: number;
// 租户名称
tenantName?: string;
// 租户logo
logo?: string;
}
/**
* 文章搜索条件
*/
export interface ArticleParam extends PageParam {
title?: string;
articleId?: number;
categoryId?: number;
status?: string;
sortNumber?: string;
createTime?: string;
username?: string;
nickname?: string;
userId?: number;
// 商户编号
merchantCode?: string;
}