feat: 办事大厅用户面前端(hall)首版入库——由 app/public 改名去 app 层;build.yml 修并发撞名容exit137
build / build (push) Successful in 3m6s

This commit is contained in:
chenxing
2026-09-17 09:12:03 +08:00
parent 6511923327
commit f87523c524
89 changed files with 16000 additions and 14 deletions
+35
View File
@@ -0,0 +1,35 @@
/**
* 公共办事大厅前端基础类型(本前端自持一份,不依赖后台前端 types)。
* 说明:`host.config.ts` 与 `utils/index.ts` 里原先 import 的 `@/types/Basics` 在本仓缺失
* (类型位置 import 被 esbuild 剥离才没炸),此处补齐并登记用户面专有的 conf 键。
*/
/** 通用对象 */
export interface IObj {
[key: string]: any;
}
/** 表格高度等设置项(view-ui 表格页通用形态) */
export interface UseTableSetting {
height?: number;
[key: string]: any;
}
/** 运行期配置(优先级见 host.config.ts) */
export interface BaseConf {
baseHost: string;
ssoHost: string;
serviceHost: string;
/** 本部署对应的 CMS 站点标识(用户面无站点选择器,见 utils/site.ts) */
siteCode: string;
/** 皮肤包名(未注册整页回退 default,见 utils/theme.ts) */
theme: string;
/** 皮肤参数覆盖(按皮肤声明的 params 过滤) */
themeParams: Record<string, string>;
relayConf: {
ziyuankuHost: string;
zhuanxiangHost: string;
};
isMock: boolean;
isDebug: boolean;
}
+110
View File
@@ -0,0 +1,110 @@
/**
* 办事大厅前端类型(对齐后端 SvcModels/OapiModels)。
*/
/** 学校组织树节点(BaseApi GetUserInfo/GetUserMod 通用形态) */
export interface SchoolTreeNode {
id?: number;
name?: string;
[key: string]: any;
}
// ===== 站点 =====
export interface SiteOption {
siteCode: string;
name: string;
schId: number;
}
// ===== 字典 =====
export interface ApplyVo {
id: number;
siteCode: string;
itemId: number;
itemCode: string;
itemTitle: string;
itemSnapshotJson?: string;
formVersion?: number;
formDataJson?: string;
attachmentsJson?: string;
submitterId: number;
submitterName: string;
flowGuid?: string;
flowInstanceId?: number;
flowStatus: number;
flowResultJson?: string;
submitTime?: string;
finishTime?: string;
createTime?: string;
}
/** 事项大厅列表行(后端复用 oapi ItemRow,见 HallController) */
export interface HallItem {
id: number;
itemCode: string;
title: string;
summary?: string;
coverImage?: string;
deptName?: string;
categoryName?: string;
handleMode?: number;
onlineFlag?: number;
publishTime?: string;
}
export interface HallFilterOption {
key?: string;
id?: number;
name: string;
count: number;
}
/** 筛选项(服务对象/分类/部门,各带已发布计数) */
export interface HallFilters {
objects?: HallFilterOption[];
categories?: HallFilterOption[];
depts?: HallFilterOption[];
}
/** 审批进度(后端复用 SDK FlowProgress,见 /api/apply/{id}/progress) */
export interface FlowProgressVo {
instanceId?: number;
bizType?: string;
bizId?: string;
bizTitle?: string;
status?: number;
currentNodes?: string;
submitterId?: number;
submitterName?: string;
submitTime?: string;
finishTime?: string;
steps?: FlowProgressStep[];
}
export interface FlowProgressStep {
nodeId?: string;
nodeName?: string;
label?: string;
active?: boolean;
assignees?: FlowProgressTask[];
}
export interface FlowProgressTask {
taskId?: number;
userId?: number;
userName?: string;
status?: number;
statusLabel?: string;
opinion?: string;
arriveTime?: string;
handleTime?: string;
edgeName?: string;
}
export interface PageResult<T> {
total: number;
list?: T[];
items?: T[];
}