refactor: 重构项目结构

- 优化 `车站-设备-告警`  轮询机制
- 改进设备卡片的布局
- 支持修改设备
- 告警轮询中获取完整告警数据
- 车站告警详情支持导出完整的 `今日告警列表`
- 支持将状态持久化到 `IndexedDB`
- 新增轮询控制 (调试模式)
- 新增离线开发模式 (调试模式)
- 新增 `IndexedDB` 数据控制 (调试模式)
This commit is contained in:
yangsy
2025-12-11 13:42:22 +08:00
commit 37781216b2
278 changed files with 17988 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
import type { BaseModel } from './model';
export interface BasicPageParams {
page: number;
pageSize: number;
}
export interface BasicFetchResult<T> {
items: T[];
total: number;
}
export interface RemoteData {
key: string | number;
data?: any;
}
export type PageQueryExtraKeyPrefix<T> = keyof T & string;
export type PageQueryExtraKeySuffix = 'in' | 'like' | 'likeLeft' | 'likeRight' | 'ge' | 'le' | 'precisest' | 'preciseed';
export type PageQueryExtraKey<T> = `${PageQueryExtraKeyPrefix<T>}_${PageQueryExtraKeySuffix}`;
// export type PageQueryExtra<T> = Partial<Record<PageQueryExtraKey<T>, any>>;
export type PageQueryExtra<T> = {
[K in PageQueryExtraKey<T>]?: any;
};
export interface PageParams<T> {
model: T;
size: number;
current: number;
sort?: keyof T & string;
order?: 'ascending' | 'descending';
extra?: PageQueryExtra<T & BaseModel>;
}
export interface PageResult<T> {
records: T[];
// offset: number
pages: string;
current: string;
total: string;
size: string;
orders: any[];
}