refactor: ♻️ 通知公告、字典重构

This commit is contained in:
ray
2024-10-03 17:42:51 +08:00
parent 476f257bc1
commit 3db4b2a6e5
25 changed files with 931 additions and 669 deletions

157
src/api/dict-data.ts Normal file
View File

@@ -0,0 +1,157 @@
import request from "@/utils/request";
const DICT_DATA_BASE_URL = "/api/v1/dict-data";
class DictDataAPI {
/**
* 获取字典分页列表
*
* @param queryParams 查询参数
* @returns 字典分页结果
*/
static getPage(queryParams: DictDataPageQuery) {
return request<any, PageResult<DictDataPageVO[]>>({
url: `${DICT_DATA_BASE_URL}/page`,
method: "get",
params: queryParams,
});
}
/**
* 获取字典数据表单
*
* @param id 字典ID
* @returns 字典数据表单
*/
static getFormData(id: number) {
return request<any, ResponseData<DictDataForm>>({
url: `${DICT_DATA_BASE_URL}/${id}/form`,
method: "get",
});
}
/**
* 新增字典数据
*
* @param data 字典数据
*/
static add(data: DictDataForm) {
return request({
url: `${DICT_DATA_BASE_URL}`,
method: "post",
data: data,
});
}
/**
* 修改字典数据
*
* @param id 字典ID
* @param data 字典数据
*/
static update(id: number, data: DictDataForm) {
return request({
url: `${DICT_DATA_BASE_URL}/${id}`,
method: "put",
data: data,
});
}
/**
* 删除字典
*
* @param ids 字典ID多个以英文逗号(,)分隔
*/
static deleteByIds(ids: string) {
return request({
url: `${DICT_DATA_BASE_URL}/${ids}`,
method: "delete",
});
}
/**
* 获取字典的数据项
*
* @param dictCode 字典编码
* @returns 字典数据项
*/
static getOptions(dictCode: string) {
return request<any, OptionType[]>({
url: `${DICT_DATA_BASE_URL}/${dictCode}/options`,
method: "get",
});
}
}
export default DictDataAPI;
/**
* 字典查询参数
*/
export interface DictDataPageQuery extends PageQuery {
/** 关键字(字典数据值/标签) */
keywords?: string;
/** 字典编码 */
dictCode?: string;
}
/**
* 字典分页对象
*/
export interface DictDataPageVO {
/**
* 字典ID
*/
id: number;
/**
* 字典编码
*/
dictCode: string;
/**
* 字典数据值
*/
value: string;
/**
* 字典数据标签
*/
label: string;
/**
* 状态1:启用0:禁用)
*/
status: number;
/**
* 字典排序
*/
sort?: number;
}
/**
* 字典
*/
export interface DictDataForm {
/**
* 字典ID
*/
id?: number;
/**
* 字典编码
*/
dictCode?: string;
/**
* 字典数据值
*/
value?: string;
/**
* 字典数据标签
*/
label?: string;
/**
* 状态1:启用0:禁用)
*/
status?: number;
/**
* 字典排序
*/
sort?: number;
}

View File

@@ -80,19 +80,6 @@ class DictAPI {
method: "get",
});
}
/**
* 获取字典的数据项
*
* @param typeCode 字典编码
* @returns 字典数据项
*/
static getOptions(code: string) {
return request<any, OptionType[]>({
url: `${DICT_BASE_URL}/${code}/options`,
method: "get",
});
}
}
export default DictAPI;
@@ -105,6 +92,11 @@ export interface DictPageQuery extends PageQuery {
* 关键字(字典名称/编码)
*/
keywords?: string;
/**
* 字典状态1:启用0:禁用)
*/
status?: number;
}
/**
@@ -122,45 +114,13 @@ export interface DictPageVO {
/**
* 字典编码
*/
code: string;
dictCode: string;
/**
* 字典状态1-启用0-禁用)
* 字典状态1:启用0:禁用)
*/
status: number;
/**
* 字典项列表
*/
dictItems: DictItem[];
}
/**
* 字典项
*/
export interface DictItem {
/**
* 字典项ID
*/
id?: number;
/**
* 字典项名称
*/
name?: string;
/**
* 字典项值
*/
value?: string;
/**
* 排序
*/
sort?: number;
/**
* 状态1-启用0-禁用)
*/
status?: number;
}
// TypeScript 类型声明
/**
* 字典
*/
@@ -176,7 +136,7 @@ export interface DictForm {
/**
* 字典编码
*/
code?: string;
dictCode?: string;
/**
* 字典状态1-启用0-禁用)
*/
@@ -185,8 +145,4 @@ export interface DictForm {
* 备注
*/
remark?: string;
/**
* 字典数据项列表
*/
dictItems?: DictItem[];
}

View File

@@ -73,7 +73,7 @@ class NoticeAPI {
*/
static publish(id: number) {
return request({
url: `${NOTICE_BASE_URL}/release/${id}`,
url: `${NOTICE_BASE_URL}/${id}/publish`,
method: "patch",
});
}
@@ -84,32 +84,21 @@ class NoticeAPI {
* @param id 撤回的通知id
* @returns
*/
static revoke(id: number): Promise<[]> {
static revoke(id: number) {
return request({
url: `${NOTICE_BASE_URL}/${id}/revoke`,
method: "patch",
});
}
/**
* 获取未读消息
*/
static getUnreadList() {
return request<any, UserNoticePageVO[]>({
url: `${NOTICE_BASE_URL}/unread`,
method: "get",
});
}
/**
* 查看通知
*
* @param id
*/
static getDetail(id: number): Promise<NoticeDetailVO> {
return request({
static getDetail(id: string) {
return request<any, NoticeDetailVO>({
url: `${NOTICE_BASE_URL}/${id}/detail`,
method: "PATCH",
method: "get",
});
}
@@ -117,7 +106,7 @@ class NoticeAPI {
static readAll() {
return request({
url: `${NOTICE_BASE_URL}/read-all`,
method: "PATCH",
method: "put",
});
}
@@ -139,6 +128,8 @@ export interface NoticePageQuery extends PageQuery {
title?: string;
/** 发布状态(0未发布1已发布-1已撤回) */
publishStatus?: number;
isRead?: number;
}
/** 通知公告表单对象 */
@@ -151,7 +142,7 @@ export interface NoticeForm {
/** 通知类型 */
type?: number;
/** 优先级(LMH高) */
level?: number;
level?: string;
/** 目标类型(1-全体 2-指定) */
targetType?: number;
/** 目标ID合集以,分割 */
@@ -160,7 +151,7 @@ export interface NoticeForm {
/** 通知公告分页对象 */
export interface NoticePageVO {
id?: string;
id: string;
/** 通知标题 */
title?: string;
/** 通知内容 */

View File

@@ -199,8 +199,8 @@ class UserAPI {
/**
* 获取用户下拉列表
*/
static getOptions(): AxiosPromise<OptionType[]> {
return request({
static getOptions() {
return request<any, OptionType[]>({
url: `${USER_BASE_URL}/options`,
method: "get",
});