chenxing
|
5cf1ce8d1f
|
B2 议题二前端:版本历史补全 + 升版本改动说明 + 列表分组 + 在途可见
- Defs.vue 版本历史弹窗 640→820,补 创建人/创建时间/改动说明 三列(存量说明显示「(未填写)」)
- def-editor 升版本保存弹「本次改动说明(可跳过)」:doSave 入口设闸(!editId&&baseGuid 或
editId&&sourceStatus!==0),主体抽成 submitSave(changeLog) 防递归;常用类型 chips 分号追加,
500 字上限;跳过与填写两条路径都放行并按说明有无区分 toast;草稿直改不弹不传
- Defs.vue 列表默认分组态(同 flowGuid 折叠一行,代表行=已发布最高版,无已发布标「无生效版」),
展开行复用 rowActions;可切「显示全部版本」回现状平铺
- 在途(议题二④):defList 落位后批量取 distinct flowGuid → 新接口 defInflight,
分组行/平铺 GUID 旁展示「在途 N 件」(0 也展示,接口失败降级「—」);停用确认 N>0 追加在途文案
- flow.ts:defSave 加 changeLog 入参、新增 defInflight(未跑 api:gen,按方案手工改)
验证:npm run build 通过;vue-tsc 1.8.27 与 TS 5.9.3 不兼容无法作门禁(另记)
|
2026-10-12 16:14:32 +08:00 |
|
chenxing
|
2a1ec48b25
|
feat(workbench): 四页签加「按应用筛选」(appKey)+页签重排(我提交的→3、抄送我的→4)
build / build (push) Successful in 1m52s
列宽/展示:待办办件标题 minWidth 220→160、四页签时间列 170→190、已办意见列
ellipsis+tooltip(长意见单行截断 hover 看全文);应用管理停用态 Tag 改用 iView
默认样式(原 gray 非预设色)。应用筛选下拉数据源同流程定义页(flw_app enabled=1)。
门禁:vite build ✓;vue-tsc 本机不可用(TS 5.9.3 与 vue-tsc 1.8.27 不兼容)
|
2026-10-12 11:25:58 +08:00 |
|
chenxing
|
ff1c50931a
|
feat(callback/app): 回调管理增强——注册操作列加「探测」(width 140→240 修复挤压溢出)+探测结果弹窗;推送日志加详情抽屉(完整 payload pretty JSON+响应摘要+重试链);应用管理加搜索框+回调注册数列+停用二次确认
build / build (push) Successful in 2m1s
|
2026-10-11 22:40:56 +08:00 |
|
chenxing
|
ed5f818c1a
|
feat(dept): 应用设置-科室管理 tab(组+成员维护+一键拉取);办理人映射页下线
build / build (push) Successful in 2m3s
- AppSetting tab2:科室表格(成员维护 Modal 复用 UserSelectInput/改名/停启用/删除)+ 拉取预览确认导入
- 编辑器科室下拉/校验数据源切 deptList(停用科室不进下拉);Maps.vue 与 104 路由删除
- flow.ts:dept 系列 API;map 系列 CRUD 删除(保留 mapLookupUser 选人检索)
|
2026-10-10 19:48:00 +08:00 |
|
chenxing
|
f835965e29
|
feat(def): 流程定义列表增「编辑信息」弹窗(原地改名称/归属应用)+ 编辑器非草稿进入提示
- 弹窗限 name+appKey(当前 appKey 不在启用集时兜底选项提示);保存后 version 不变
- 编辑器打开已发布/停用时提示:结构改动将升版本,仅改属性请用「编辑信息」
|
2026-10-10 19:23:45 +08:00 |
|
chenxing
|
e8f9af534b
|
feat(app): 应用设置页(107)+ 流程定义/编辑器应用下拉改读白名单显示应用名
- AppSetting.vue:tab1 应用管理(学校池同步说明+开关 i-switch);tab2 科室管理占位(Part E)
- Defs.vue 筛选下拉与表格应用列显示 appName;编辑器归属应用下拉去 allow-create、限启用集合
- flow.ts 增 appList/appEnable(defAppKeys 保留 deprecated)
|
2026-10-10 19:17:39 +08:00 |
|
chenxing
|
acbf601e7a
|
feat(condition): 编辑器支持表达式判断——判断方式切换 + 出口条件就地编辑 + 表达式调试
- ConditionNode 增 judgeMode/conditions(SERVICE 缺省,旧定义天然兼容);DefEdgeJson/DefNodeJson 透传 condition/judgeMode
- convert.ts 双向透传:CONDITION 分支首边带 condition,序列化顺序=分支顺序(求值优先级保序)
- ConditionDrawer 判断方式 Radio(服务/表达式);ConditionBox 表达式模式分支头部条件输入(序号即优先级)
- validate.ts 镜像校验:表达式模式每出口条件必填(语法由后端发布期拦)
- Routers 页加「表达式调试」Modal(/admin/router/eval,与线上同一求值核心)
- addBranch/removeBranch 同步维护 conditions 占位
|
2026-10-10 18:52:54 +08:00 |
|
chenxing
|
570eec74ff
|
feat(def): 流程定义按应用筛选——列表应用列+筛选下拉、编辑器归属应用选择
build / build (push) Successful in 5m37s
- Defs.vue:工具栏"按应用筛选"下拉(/def/appkeys 数据源,clearable/filterable)+ 应用列(空显示 -)
- 编辑器:头部"应用"Select(clearable/filterable/allow-create,可手输新值),载入回显、保存透传 appKey
- defList 支持 appKey 可选参数、新增 defAppKeys;新参数全部可选,与后端部署顺序无依赖
|
2026-10-10 14:34:33 +08:00 |
|
chenxing
|
e30e7ab665
|
feat(admin): 抄送(NOTIFY)与条件分支(CONDITION)全栈接入编辑器/轨迹/管理面
build / build (push) Successful in 1m55s
NOTIFY(2026-09-23):编辑器抄送卡片+抽屉+画布 bpmn:ServiceTask 映射、工作台「抄送我的」页签、轨迹 kind=CC 行、示意图青框卡片
CONDITION(2026-09-24):ConditionBox 互斥分支容器(分支列出口名就地编辑、无 JOIN 语义分支尾隐式汇合)、ConditionDrawer 判断服务下拉(flw_router)、convert 双向序列化(CONDITION+命名出边、uid+c 尾缀往返收敛)、validate 镜像后端口径、画布 bpmn:ExclusiveGateway 映射、轨迹「系统判断→出口」行(失败挂起提示)、示意图紫菱形(SVG 与服务端 PNG 同配色)、管理面 flw_router 维护页(/admin/routers)与办件记录「重跑路由」入口
convert 往返 54 项全过、npm run build 通过
|
2026-09-24 01:19:15 +08:00 |
|
chenxing
|
cdf04f0930
|
feat(ui): 应用页规范全量重构 + 工作台与流程轨迹优化
build / build (push) Successful in 3m17s
应用页规范(bsch)重构:
- 6 个列表页迁规范骨架: page-wrapper/tabs-wrapper + search-wrap 搜索区(关键字 200px 即输即搜, 去查询按钮) + link-table table-bottom-box 定高表格 + page-panel 分页栏
- 分页列表统一接 TablePageAlovaNew(页长 [10,20,30,40]/customPageCount 记忆/增删智能翻页); dataApi 须返回 Method, 调 .send() 会导致表格静默空数据
- 操作列统一图标式 operatingHandle(Tooltip+fixed right 居中); 各列表补序号列; 危险操作统一 MyConfirm 二次确认
- 弹窗表单必填红星 + 统一提示「请填写红色星号内容!」
- TablePageAlovaNew 补页长记忆与重载后清空勾选; 新增 src/types OperatorEnum
工作台与流程轨迹优化:
- 已办列表去重: 每办件一行, doneCount>1 显示「共办理 N 次」标签
- 新增 TraceTimeline 轨迹时间流(时间升序/kind/轮次, 按人员/科室切换写回 URL), 接入详情/办理页
- 新增流程源码只读抽屉 SourceDrawer, 接入定义列表与图示页
- 办理人映射/流程定义新增「启用」回路(/admin/map/enable, /admin/def/enable)
- 图示视图口径统一 dept/user 两档, 缺省人员视图; 状态列 Tag 色映射统一导出
|
2026-09-18 16:52:40 +08:00 |
|
chenxing
|
b76c419a6f
|
feat(admin): 画布↔卡片数据打通——卡片树为唯一数据源(uid 即 contentJson 节点 id, 画布=contentJson 投影/反解); 多人审批默认或签; 选人弹窗换 /admin/user/teacherTree 教师树; 示意图页三视图(示意图/画布视图/进度图PNG)
build / build (push) Successful in 2m3s
|
2026-09-17 14:52:55 +08:00 |
|
chenxing
|
2e591e7a54
|
feat(admin): 选人组件接入——UserCheckModal 加单选模式+UserSelectInput 单选封装;映射办理人/审批节点指定用户弃手输 ID 改弹窗选人 (/admin/user/tree);删休眠 UserCheckInput 死代码
build / build (push) Successful in 1m56s
|
2026-09-17 11:09:53 +08:00 |
|
chenxing
|
e52c4324f6
|
feat: 流程编辑器 bpmn-js 画布模式 + 引擎多出口/退回/移交/或签前端接线
build / build (push) Successful in 4m6s
- def-editor 新增画布模式(默认):bpmn-js 内存画布(精简 palette/汉化/撤销重做/缩放/出口命名/导出 BPMN),
toBpmn/fromBpmn 双向序列化,contentJson 仍为持久格式(+layout 坐标);卡片模式保留回退
- 新增 utils/flowLayout.ts 分层布局(设计器与查看器共用)
- TaskHandle:多出口节点出口选择下拉;退回/移交按钮与弹窗;轨迹显示已退回/已移交及所选出口
- FlowDiagram:优先使用保存坐标;边画出口名标签;办件状态着色/当前节点高亮
- api/flow:approve 带 edgeName,新增 returnBack/transfer
|
2026-09-16 22:22:26 +08:00 |
|
chenxing
|
842a4cfb14
|
feat: 办理人映射页一键拉取教师组(预览确认+批量导入)+ 流程编辑器存量
build / build (push) Successful in 2m6s
- Maps.vue:一键拉取教师组按钮 + 预览弹窗(科室/成员明细)+ 确认导入
- flow.ts:mapGroupPreview/mapImportGroups API
- 含流程编辑器(def-editor)、路由 catch-all、示意图入口存量
|
2026-09-16 01:21:10 +08:00 |
|
chenxing
|
670988816c
|
fix(api): 修正 POST 请求体丢失致 def/save 报 body missing
build / build (push) Successful in 3m17s
alova 的 Method 请求体是构造函数第 5 个参数(instance.data),不是 config 上的键。
原 post() 把 body 塞进 config,被适配器静默忽略,POST 恒发空 body,
后端 @RequestBody 直接抛 HttpMessageNotReadableException: Required request body is missing。
受影响的接口(同一 helper):
- def/save、map/save、callback/repush:一律 400 Required request body is missing
- task/reject:opinion 送不到,而 FlowTaskService 强制要求非空,拒绝必然失败
- task/approve:请求成功但审批意见被静默丢弃
同时:
- Defs.vue 保存时回传 baseGuid,否则「升版本」会另起流程线而非同线升版本
- 补上调用方已在使用但 FlowApi 未定义的 callbackHung / callbackMarkDead
验证:本地后端实测 def/save 带 body 返回 code=0(新建草稿、编辑草稿、
baseGuid 升版本 version+1 且 flowGuid 不变);alova 运行时对照确认
config.body 与 config.data 均发不出 body,仅第 5 参有效。
|
2026-09-15 19:04:46 +08:00 |
|
chenxing
|
90db00cf16
|
feat: 提交流程中心前端代码
build / build (push) Successful in 3m21s
Vue3 + Vite + view-ui-plus 前端源码,含流程工作台、实例详情、
任务处理、管理端(定义/实例/映射/回调)等页面。
保留远程 .gitea/workflows/build.yml CI 配置。
|
2026-09-15 10:42:45 +08:00 |
|