Commit Graph

31 Commits

Author SHA1 Message Date
weicw-dshsa 623404ce9a fix(ai): 失败态与整包 JSON 不再进 UI,兜底收敛到公共模块(issue 10)
admin 端原本**没有**任何 AI 结果兜底公共实现(src/utils/ 下零命中
pickDisplayable / isFailedPayload / FALLBACK_TEXT / FAILED_TEXT),
四个 AI 页面各写一份,且方向相反——都保留了「JSON.stringify 整包」兜底。
后果是解析不出内容时把内部标识符渲染给用户,实测:

    {"answer":"","conversationId":"c1d2e3f4-…","messageId":"m1"}

改动:
- 新增 src/utils/ai-result.ts,从 tuanwei-uniapp/utils/ai-result.js 移植,
  逐函数对齐语义(getPayloadStatus / isFailedPayload / isDisplayableAnswer /
  pickDisplayable / resolveDisplayText / 两个文案常量)。原始报文只进
  console.error,不进 UI。
- 四处整包 JSON 兜底全部替换为 resolveDisplayText,并删掉各自的
  stringifyUnknown:oa/chatgpt(两处)、gxmu/manuscriptGen、
  gxmu/activityOutlineGen。
- 四页正文候选改用 pickDisplayable(原 pickString 只判非空,
  失败报文里 UUID 形状的 answer 会被当正文)。
- 失败态优先判定:isFailedPayload 为真时直接给 FAILED_TEXT,
  不再走「主题 + 失败文案」的拼接。
- gxmu/creativeAssistant:删掉已无引用的 rawOutputsText(模板引用早被注释,
  留下一个"看似有原始输出视图"的死代码),并给「未识别到输出字段」补可读文案。

评审跟进修掉的两个真缺陷:
- creativeAssistant 的兜底文案**原本不可达**:模板 a-empty 的
  v-if="!loading && !hasAnyResult" 会遮蔽 v-else 里的 status-alert,
  失败时 hasAnyResult 为假 → 用户仍看到「填写文本指令并上传附件后执行工作流」。
  条件补上 && !workflowResponse。
- WS 路径不消费 reset:后端失败时带 reset:"true" 要求覆盖半截内容,
  两个页面都忽略它,于是编辑器变成「半截正文 + 生成失败,请稍后重试」;
  且 streamStarted 为真时会直接丢弃 HTTP 返回体,新加的 status 也就读不到。
  appendOutlineChunk / appendAssistantChunk 增加 reset 参数并在
  handleSocketMessage 里透传。

验证:
- .scratch/ai-assistant/verify-admin-ai-result.js 用项目自带 TypeScript
  编译器转译后求值,并从真实 .vue 抽取 parseOutline / parseResult /
  formatWritingResult 跑断言(验真实代码而非重写副本)→ 41/41 PASS。
- vue-tsc --noEmit 改动前后错误集合完全一致(1365 条全在 .bak 等预存文件),
  本次改动的 4 个文件零错误。
- eslint:ai-result.ts 零问题;creativeAssistant 的未使用变量由 3 个降到 2 个。
2026-10-13 02:12:58 +08:00
weicw-dshsa 930ef760f1 docs(ai): 说明大纲入参 event_funding 为何保持 string
上游该变量是 number,但表单输入框是自由文本(示例值形如
「预算 5000 元,来源为校团委志愿服务专项经费」),故由后端
normalizeEventFunding 抽出数值后再发送。抽不出数值时后端降级为空串 ——
实测上游接受空串,但不接受不可解析的文本(会让整个工作流 failed)。

同时补上 event_member / people_manage / tel_people 三个 Dify 必填变量的
可选声明:当前表单未采集,由后端补空串占位(见 issue 09)。
2026-10-13 00:37:23 +08:00
weicw-dshsa 3a57965349 修改端口号 2026-09-22 20:35:30 +08:00
weicw-dshsa 829c17f1ce AI团宝页面对纯学生隐藏「进入后台」入口 2026-09-19 17:26:48 +08:00
weicw-dshsa 6b967b6b69 修正类型导入写法,补上 pnpm 锁文件
- ItemType / ColumnItem / EleProTableDone 等纯类型改用 import type,
  避免打包器把类型当运行时依赖处理
- 提交 pnpm-lock.yaml 与 pnpm-workspace.yaml

注:仓库里原有的 package-lock.json 与 yarn.lock 未动,三份锁文件并存。
2026-09-18 23:30:55 +08:00
weicw-dshsa add24cfde8 后台登录新增统一身份认证入口
与学生端共用后端 /sso/login 接口,学号 + 统一身份认证密码,
返回结构与账号登录一致,拿到 access_token 后流程无差别。
2026-09-18 23:30:54 +08:00
weicw-dshsa b2b7d4208e 新增后台「教师名册」页
纯只读页面,形态与学生名册一致(#19)。

- src/api/gxmu/teacher:分页查询与导出接口
- src/views/gxmu/teacherRoster:学院/教工号/姓名/状态筛选 + 列表 + CSV 导出
- 导出按钮按 gxmu:teacher:export 权限渲染,与查询权限分开
- 手机号按 spec §5.2 不进任何列表接口,页面与导出均无该列
2026-09-15 17:21:38 +08:00
weicw-dshsa a592e66f78 新增后台「数据同步」与「学生名册」页
数据同步页 /gxmu/dataSync:
- 分段手动同步(部门/教师/班级/学生)+ 全部同步
- 同步为异步:提交后立即返回批次号,每 2 秒轮询 /gxmu/sync/status 展示分段进度
  (待执行/进行中/成功/失败 + 成功/失败/停用计数 + 错误摘要)
- 页面挂载时先查一次状态,可接管定时任务或别处触发的同步
- 同步记录列表,支持按类型筛选

学生名册页 /gxmu/studentRoster:
- 按学院(取组织树 parentId=24)/班级/学号/姓名/培养层次/状态/认领状态筛选
- 手机号与身份证由后端脱敏后返回
- 导出用 gxmu:student:export 单独授权,前端生成 CSV
- 支持手动认领与解除认领

对应 api 模块 src/api/gxmu/sync 与 src/api/gxmu/student。
2026-09-15 15:55:00 +08:00
b2894lxlx 019ed28d37 260720 2026-07-20 11:50:47 +08:00
b2894lxlx 95d43746f6 调整 2025-05-22 10:27:07 +08:00
gxwebsoft 963b239333 新增:配件管理模块 2024-02-27 20:29:45 +08:00
gxwebsoft aa56030cbd 完成:保养记录和厂内维修模块 2024-02-25 19:33:03 +08:00
gxwebsoft 08f83ed015 完成:安全维保管理模块 2024-02-25 16:19:52 +08:00
gxwebsoft 726bb3c163 完成:安全维保管理模块 2024-02-25 15:23:15 +08:00
gxwebsoft e6caabbba8 新增:每月1日自动生成保养计划 2024-02-23 13:57:48 +08:00
gxwebsoft 25864fb449 新增:一机一档的详情页 2024-02-22 13:48:27 +08:00
gxwebsoft 6452b887dc 新增采购入库功能 2024-02-05 21:47:55 +08:00
gxwebsoft aac8dc687d 新增标准节租金等功能 2024-02-05 15:54:26 +08:00
b2894lxlx 494e3ee248 调整 2024-01-31 14:56:48 +08:00
b2894lxlx 14cbb87311 新增历史结算;
新增租单管理
2023-06-13 01:44:18 +08:00
b2894lxlx df95f7d02c 完善合同管理;
新增结算管理
2023-06-12 01:33:08 +08:00
b2894lxlx 7f080a4c54 新增客户管理;
新增合同管理
2023-06-10 01:29:51 +08:00
gxwebsoft 4eca2ea5f5 合并代码 2023-06-09 12:30:46 +08:00
gxwebsoft f5cb3dc489 完成合同管理模块和公共参数模块 2023-06-08 19:33:24 +08:00
weicw 7ee10c16c7 导入 2023-06-06 12:45:50 +08:00
weicw 372843d129 产权公司 2023-06-06 10:26:22 +08:00
weicw 2c11634cfa 防坠器 2023-06-05 22:57:25 +08:00
gxwebsoft 01a57c177e 修复部分问题 2023-06-05 16:50:04 +08:00
gxwebsoft 6fcff7b0e1 11 2023-06-04 00:35:09 +08:00
gxwebsoft 552dde6cb1 11 2023-06-04 00:18:23 +08:00
南宁网宿科技 13bed2bafb Initial commit 2023-06-03 23:57:39 +08:00