2026-07-30 15:43:24 +08:00
|
|
|
|
/**
|
2026-07-30 16:57:22 +08:00
|
|
|
|
* 操作日志假数据
|
|
|
|
|
|
* 对应接口:GET /admin/sys/operation/page
|
|
|
|
|
|
*
|
|
|
|
|
|
* 支持按 type、nickname、dateBegin/dateEnd 前端筛选,
|
|
|
|
|
|
* 模拟后端分页行为。
|
2026-07-30 15:43:24 +08:00
|
|
|
|
*/
|
2026-07-30 16:57:22 +08:00
|
|
|
|
import type { SysOperationLogVO, OperationLogQueryParams, PageData } from '@/api/logs';
|
2026-07-30 15:43:24 +08:00
|
|
|
|
|
2026-07-30 16:57:22 +08:00
|
|
|
|
const MOCK_LOGS: SysOperationLogVO[] = [
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '张三',
|
|
|
|
|
|
createDate: '2026-07-30 08:00:00',
|
|
|
|
|
|
content: '下架赛事"第二十一届贝格林羽毛球大赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
|
|
|
|
|
nickname: '张三',
|
|
|
|
|
|
createDate: '2026-07-30 09:30:00',
|
|
|
|
|
|
content: '上架赛事"第二十一届贝格林羽毛球大赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 3,
|
|
|
|
|
|
nickname: '李四',
|
|
|
|
|
|
createDate: '2026-07-29 10:12:00',
|
|
|
|
|
|
content: '禁用用户"王五(1003)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 4,
|
|
|
|
|
|
nickname: '李四',
|
|
|
|
|
|
createDate: '2026-07-29 10:20:00',
|
|
|
|
|
|
content: '启用用户"王五(1003)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '赵六',
|
|
|
|
|
|
createDate: '2026-07-28 14:00:00',
|
|
|
|
|
|
content: '下架赛事"春季马拉松大赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
|
|
|
|
|
nickname: '赵六',
|
|
|
|
|
|
createDate: '2026-07-28 15:00:00',
|
|
|
|
|
|
content: '上架赛事"春季马拉松大赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 3,
|
|
|
|
|
|
nickname: '张三',
|
|
|
|
|
|
createDate: '2026-07-27 09:00:00',
|
|
|
|
|
|
content: '禁用用户"钱七(1005)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 4,
|
|
|
|
|
|
nickname: '张三',
|
|
|
|
|
|
createDate: '2026-07-27 09:15:00',
|
|
|
|
|
|
content: '启用用户"钱七(1005)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '孙八',
|
|
|
|
|
|
createDate: '2026-07-26 16:30:00',
|
|
|
|
|
|
content: '下架赛事"夏季游泳锦标赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
|
|
|
|
|
nickname: '孙八',
|
|
|
|
|
|
createDate: '2026-07-26 17:00:00',
|
|
|
|
|
|
content: '上架赛事"夏季游泳锦标赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '李四',
|
|
|
|
|
|
createDate: '2026-07-25 11:00:00',
|
|
|
|
|
|
content: '下架赛事"秋季篮球邀请赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
|
|
|
|
|
nickname: '李四',
|
|
|
|
|
|
createDate: '2026-07-25 12:00:00',
|
|
|
|
|
|
content: '上架赛事"秋季篮球邀请赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 3,
|
|
|
|
|
|
nickname: '周九',
|
|
|
|
|
|
createDate: '2026-07-24 08:30:00',
|
|
|
|
|
|
content: '禁用用户"吴十(1008)"',
|
|
|
|
|
|
},
|
2026-07-30 15:43:24 +08:00
|
|
|
|
{
|
2026-07-30 16:57:22 +08:00
|
|
|
|
type: 4,
|
|
|
|
|
|
nickname: '周九',
|
|
|
|
|
|
createDate: '2026-07-24 08:45:00',
|
|
|
|
|
|
content: '启用用户"吴十(1008)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '张三',
|
|
|
|
|
|
createDate: '2026-07-23 13:00:00',
|
|
|
|
|
|
content: '下架赛事"冬季滑雪挑战赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
2026-07-30 15:43:24 +08:00
|
|
|
|
nickname: '张三',
|
2026-07-30 16:57:22 +08:00
|
|
|
|
createDate: '2026-07-23 14:00:00',
|
|
|
|
|
|
content: '上架赛事"冬季滑雪挑战赛"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 3,
|
|
|
|
|
|
nickname: '郑十一',
|
|
|
|
|
|
createDate: '2026-07-22 10:00:00',
|
|
|
|
|
|
content: '禁用用户"冯十二(1012)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 4,
|
|
|
|
|
|
nickname: '郑十一',
|
|
|
|
|
|
createDate: '2026-07-22 10:10:00',
|
|
|
|
|
|
content: '启用用户"冯十二(1012)"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 1,
|
|
|
|
|
|
nickname: '孙八',
|
|
|
|
|
|
createDate: '2026-07-21 15:30:00',
|
|
|
|
|
|
content: '下架赛事"元旦全民健身跑"',
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
type: 2,
|
|
|
|
|
|
nickname: '孙八',
|
|
|
|
|
|
createDate: '2026-07-21 16:00:00',
|
|
|
|
|
|
content: '上架赛事"元旦全民健身跑"',
|
2026-07-30 15:43:24 +08:00
|
|
|
|
},
|
|
|
|
|
|
];
|
|
|
|
|
|
|
2026-07-30 16:57:22 +08:00
|
|
|
|
/** 按日期范围过滤(dateBegin / dateEnd 格式 yyyy-MM-dd) */
|
|
|
|
|
|
function inDateRange(dateStr: string, begin?: string, end?: string): boolean {
|
|
|
|
|
|
if (!begin && !end) return true;
|
|
|
|
|
|
const d = dateStr.slice(0, 10); // yyyy-MM-dd
|
|
|
|
|
|
if (begin && d < begin) return false;
|
|
|
|
|
|
if (end && d > end) return false;
|
|
|
|
|
|
return true;
|
2026-07-30 15:43:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2026-07-30 16:57:22 +08:00
|
|
|
|
export function buildMockOperationLogPage(
|
|
|
|
|
|
page: number,
|
|
|
|
|
|
limit: number,
|
|
|
|
|
|
params: OperationLogQueryParams,
|
|
|
|
|
|
): PageData<SysOperationLogVO> {
|
|
|
|
|
|
let filtered = [...MOCK_LOGS];
|
|
|
|
|
|
|
|
|
|
|
|
// 按操作类型筛选(API 传 '1'/'2'/'3'/'4')
|
|
|
|
|
|
if (params.type) {
|
|
|
|
|
|
filtered = filtered.filter((item) => item.type === Number(params.type));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 按操作人昵称模糊筛选
|
|
|
|
|
|
if (params.nickname) {
|
|
|
|
|
|
filtered = filtered.filter((item) => item.nickname.includes(params.nickname!));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 按日期范围筛选
|
|
|
|
|
|
filtered = filtered.filter((item) =>
|
|
|
|
|
|
inDateRange(item.createDate, params.dateBegin, params.dateEnd),
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
const total = filtered.length;
|
2026-07-30 15:43:24 +08:00
|
|
|
|
const start = (page - 1) * limit;
|
2026-07-30 16:57:22 +08:00
|
|
|
|
const list = filtered.slice(start, start + limit);
|
|
|
|
|
|
|
|
|
|
|
|
return { total, list };
|
2026-07-30 15:43:24 +08:00
|
|
|
|
}
|