Files
f9-web-ai-test/工作进度/工作进度-27.md
T
yanpeng200212 1f1b184411 新增工资/仓储/生产日报等模块,移除旧考勤模块
- 新增 PayRoll(工资)、Wms(仓储)、Prod(车速/缫丝/考勤/丝片检测/丝片台账/纤检日报/质量日报) 模块
- 新增对应 Domain 实体、Application DTO/Service、Api Controller 与前端页面
- 移除旧 Attendance 考勤模块(Controller/Service/Entity/DTO 及 5 个前端页面),由 Prod/Kaoqin 取代
- 调整路由、仪表盘、Lsjl 流丝记录实体与服务
- 更新业务种子数据与 DbSeeder
- 补充工作进度文档 14-27
2026-10-27 09:09:57 +08:00

2.3 KiB
Raw Blame History

工作进度-27

规则原文:每次对话结尾都要生成工作进度

本轮任务

回答用户提问:本项目采用的架构是什么(纯咨询,无代码改动)。

本轮完成内容

  1. 梳理并确认项目整体架构:
    • 总体:前后端分离 + 单体后端四层分层(DDD + CQRS),IIS 单站点同源部署(wwwroot 静态资源 + MapFallbackToFile("index.html"))。
    • 后端 .NET 8 四层:F9WebAiTest.Domain / .Application / .Infrastructure / .Api,依赖方向 Api → Application → Domain ← Infrastructure。
    • CQRS + MediatR 12.4.1(Application/CQRS/SYS/**/Commands|Queries,45 个文件),读写仓储分离。
    • 工作单元 IUnitOfWork_F9、雪花 ID 单例、FreeSql 软删除全局过滤器。
    • 领域事件 BusinessChangedEvent → MediatR Handler → SignalR /hubs/notification 推送。
    • RBAC:用户–角色–权限–菜单,JWT Bearer;SignalR 与报表下载走 query string access_token。
    • LongToStringJsonConverter 解决雪花 ID 精度丢失。
    • 前端 web/:Vue 3 + Vite + Element Plus + Pinia + Vue Router + axios,NSwag 生成 src/api/client.ts,v-permission 按钮级权限,动态路由。
    • 数据层:SQLite + FreeSql(CodeFirst + DbSeeder 种子),枚举映射 int 兼容旧库。
    • 遗留/辅助目录:client/ + server/(早期「社区生活圈」Express + Vue3 原型)、TempleRun/(旧 WinForms 参考)、tools/、deploy-iis.ps1、update-iis.ps1。

改动文件

无(本轮为架构说明,未修改任何代码)。

发现的问题(待修正)

  • 根目录 README.md 中「数据库:SQLite(EF Core)」的表述已过时,实际 ORM 为 FreeSql;README 也缺少 CQRS/MediatR、SignalR、DDD 分层等当前架构描述。

验证情况

  • 已通过目录浏览、README、F9WebAiTest.Api.csproj、Program.cs、Infrastructure/DependencyInjection.cs、web/package.json、server/package.json、client/package.json 交叉核对确认。
  • 未编译、未运行(无代码改动)。

待办

  1. (可选)更新 README.md:EF Core → FreeSql,补充 CQRS/MediatR、SignalR 实时推送、IIS 同源部署说明。
  2. 继续按既有计划推进业务模块迁移。