chenxing 1369b103ee
build / build (push) Successful in 2m51s
feat(condition): 条件路由变量契约收口 + 子应用对接健康度面板(议题一 P0/P1 + 议题二 P2)
议题一(条件路由体验收口):
- 编辑器动作入口上移顶栏与「保存草稿」同排,右栏「快捷入口」整块删除(流程图痛点 7)
- 发布期变量引用静态校验:validateModel 增加 knownVars 参数,出边表达式引用未在已知变量中的标识符给 warn 级提示。只提示不阻断——拼错与「运行时才有的动态变量」在静态期无法区分,宁可放过
- CONDITION 判断方式文案业务语言化:「服务(外部判断接口)/表达式」→「到达该节点时才能确定/提交时就已确定」,各补一行说明;syncFromNode 取值归一化逻辑未动,零兼容风险
- 内置 8 变量与表达式变量提取抽到 def-editor/model.ts 单一来源(EXPR_BUILTIN_VARS/extractExprVars/unknownExprVars),ConditionBox 与 ExprEvalModal 改为消费,去掉两份本地重复实现

议题二(子应用接入健康度):
- AppSetting.vue 新增 tab3「对接健康度」:每应用一行(评分色块/结论/六项检查 chips/结论说明),问题应用 bad>warn>ok 置顶;首次切入该 tab 才请求,避免进页面就多打一次聚合查询
- Callbacks.vue 新增 appKey 筛选框 + query.appKey 预填,承接健康度面板「查推送日志」跳转
- api 层新增 callbackHealth()

数据来源为已有资产(flw_callback_reg / flw_callback_log),零新增表。对齐《子应用接入流程中心规范.md》§4.2/§7 与《条件路由与子应用接入-痛点调研-20261014.md》。vite build --mode base 通过,产物已构建进 front/dist/。
2026-10-15 14:51:04 +08:00
2026-09-15 10:42:45 +08:00
2026-09-15 10:42:45 +08:00
2026-09-15 10:42:45 +08:00

通知公告前端(Vue3 + Vite + view-ui-plus)

本地启动

npm install

1)纯前端调试(推荐,后端不可用时)

本地连不上 sso.yunhaixingtong.com / base.yunhaixingtong.com 时,后端 CAS 过滤器会拦截 /api/* 请求导致所有接口失败。此时使用内置 mock 调试前端页面:

npm run dev:mock
  • 启用 src/assets/mock/noticeapi.ts 中的内存 mock(vite-plugin-mock),覆盖全部页面接口: 用户/菜单、发文部门字典、通知增删改查、阅读情况、联系组、选择用户树、附件上传等。
  • mock 数据为内存态,刷新页面即还原;修改 mock 文件后需重启 dev server 才生效。
  • mock 模式下请求走 vite 同源(host.config.ts 中 serviceHost 为空串)。

2)连接后端调试

npm run dev
  • .env.dev:VITE_SERVICE_HOST=http://localhost:8070/notice(Java 后端,见 ../service)。
  • 后端需要能访问 CAS(yh.sso.server-url-prefix)与用户中心(yh.open.*),否则接口 302/失败。

主要页面

路由 页面
/notice/newnotice 通知发送(新建/编辑 ?serid=/转发 ?fid=,wangeditor 富文本)
/notice/notice_list 已发通知
/notice/notice_accept 已收通知(左列表 + 右详情,打印/转发/附件)
/notice/manage 通知列表(管理端)
/notice/setting 应用设置(发文部门卡片 + 自定义组)
/notice/notice_details 通知详情(type=0 管理视角含阅读进度/编辑/打印,type=1 查看)

关键组件

  • components/UserCheckModal.vue:选择用户弹窗(组织树勾选 + 已选列表,移植自旧前端 oldfront/src/components/userCheck.vue)。
  • components/UserCheckInput.vue:通知对象选择(全部用户/指定用户,移植自旧 user_check_input.vue)。
  • components/NoticeUpload.vue:通知附件上传(选择文件 + 200MB 限制,移植自旧 uploadFile.vue)。
  • 发文部门卡片:见 views/notice/NoticeSetting.vue,样式与交互对齐 UserBase「应用类型」 (UserBase/front/src/views/app/AppCategory.vue),额外支持停用/启用。

统计说明

统计相关前端已按需求移除(Notice_statis 接口封装、菜单、图标等),后期统计不在本应用内做。

S
Description
managed by projman
Readme
3.3 MiB
Languages
Vue 60.8%
TypeScript 18.1%
JavaScript 18%
SCSS 1.5%
CSS 1.3%
Other 0.3%