Files
svc-hall-hall/src/types/svc.ts
T
chenxing 05b6c78a93
build / build (push) Successful in 2m11s
feat(apply): 办件详情「申请内容」按表单 schema 渲染——中文 label + 分组
- 新增 utils/formDataGroups.ts:groups 顺序展示、schema 外字段归「其他信息」、无 schema 回落按 key
- ApplyDetail 改用详情出参 formSchemaJson(删除再调 /api/apply/item 取 schema 的旁路);ApplyVo 类型补 formSchemaJson
- 顺带入库 hall 动态表单修复(就地写 reactive + 内联 validate,2026-09-17 会话)
2026-09-17 14:51:04 +08:00

129 lines
3.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 办事大厅前端类型(对齐后端 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[];
}