build / build (push) Successful in 2m11s
- 新增 utils/formDataGroups.ts:groups 顺序展示、schema 外字段归「其他信息」、无 schema 回落按 key - ApplyDetail 改用详情出参 formSchemaJson(删除再调 /api/apply/item 取 schema 的旁路);ApplyVo 类型补 formSchemaJson - 顺带入库 hall 动态表单修复(就地写 reactive + 内联 validate,2026-09-17 会话)
129 lines
3.1 KiB
TypeScript
129 lines
3.1 KiB
TypeScript
/**
|
||
* 办事大厅前端类型(对齐后端 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;
|
||
/** 办理表单 schema(仅详情出参;「申请内容」按 groups/fields 显示中文 label 与分组的唯一事实源) */
|
||
formSchemaJson?: string;
|
||
attachmentsJson?: string;
|
||
submitterId: number;
|
||
submitterName: string;
|
||
flowGuid?: string;
|
||
flowInstanceId?: number;
|
||
flowStatus: number;
|
||
flowResultJson?: string;
|
||
submitTime?: string;
|
||
finishTime?: string;
|
||
createTime?: string;
|
||
}
|
||
|
||
|
||
/** 表单附件字段行(对齐后端 ApplyAttachmentItem;attachmentId=上传接口返回的附件行 id) */
|
||
export interface ApplyAttachmentItem {
|
||
fieldKey?: string;
|
||
attachmentId: number;
|
||
}
|
||
|
||
/** 发起提交入参(对齐后端 ApplySubmitRequest) */
|
||
export interface ApplySubmitRequest {
|
||
siteCode: string;
|
||
itemCode: string;
|
||
/** 表单数据 JSON 字符串({key:value};无表单事项传空) */
|
||
formData?: string;
|
||
/** 附件字段上传的附件行(可空;缺失会导致后端 bindApply 不执行、办件材料无效) */
|
||
attachments?: ApplyAttachmentItem[];
|
||
}
|
||
|
||
/** 事项大厅列表行(后端复用 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[];
|
||
}
|