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
+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[];
}