You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
14 hours ago | |
|---|---|---|
| .. | ||
| README.md | 14 hours ago | |
| debug_login.py | 14 hours ago | |
| index.html | 14 hours ago | |
| seed_project_demo.py | 14 hours ago | |
| smoke_a5.py | 14 hours ago | |
README.md
A5 项目管理 Demo 操作说明(票 14/15 产出 · 供 16 审计与 19 验收使用)
入口
- 单页入口:
.scratch/crm-project/demo/index.html(浏览器直接打开;默认 API=http://localhost:8080,可用?api=<base>覆写,存 localStorage)。 - 被测后端:
crm-appfat jar,verify profile(见下「环境」)。
环境(起服)
构建:mvn -s settings.xml clean package -DskipTests (JAVA_HOME=C:\Users\Administrator\.jdks\corretto-17.0.13,mvn=IDEA 捆绑 D:\INTELL~1.3\plugins\maven\lib\maven3\bin\mvn.cmd)
起服:SPRING_PROFILES_ACTIVE=verify + CRM_MINIO_AK=admin + CRM_MINIO_SK=Itc@123456 → java -jar crm-app\target\crm-app-1.0.0-SNAPSHOT.jar
DB:远程共享库 8.129.84.155(凭据在 application.yml 默认值);本地 8080 占用时先杀 java 进程(jar 锁)。
种子数据(幂等)
py -X utf8 .scratch/crm-project/demo/seed_project_demo.py # 造客户/商机/方案卡/两个用户
py -X utf8 .scratch/crm-project/demo/seed_project_demo.py --wipe # 清理(demo 项目按名 A5DEMO-% 清)
产出固定 id:客户 99021001 / 方案卡 99021008 / 销售总监 99021002(title=销售总监,可回退)/ 普通销售 99021003(回退被拒 68005)。
角色切换
页头输入 userId → 「uid 登录」(verify profile /api/auth/debug/token,ADR-0014)。审计/验收至少切:99021002(总监,回退可见可操作)、99021003(普通销售,回退按钮可见但服务端 68005 拒绝——原型权限在服务端强制)。真实管理员角色用户(ROLE_ADMIN)同样可回退。
全流程演示路径(对齐票 19 验收路径)
- 建项:
+ 新建项目→ 名称 + 客户99021001+ 方案卡99021008→ 创建。落库 stage=0 冲突处理 / 报备审核中(建项即报备,grill#12);自动跳详情。 - 冲突解除=报备审核(详情动作区或看板 stage0 卡「冲突解除」):通过 → filing=2 + stage 0→1 双写;驳回 → filing=3 停 stage0(可再审)。
- 推进:1→2→3 逐级(动作区按钮);stage3 有两颗按钮:
投标完成→4与无需招投标(3→5 连跳)(唯一连跳)。 - 回退:stage≥2 出现「回退…」→ 弹窗列可选节点(已过节点、下限 stage1;3→5 连跳后 stage4 不在列)→ 选节点回退。总监可操作;普通销售服务端拒绝。
- 赢/输分叉(stage5):
标记赢单→ stage5 闭环锁死(回退 68003);标记输单→ stage6 结项终态(status=3)。 - 关闭:任意 stage(进行中)→ 关闭类型/原因/备注 → status=2,关后无动作(终态锁)。
- 详情 8 页签:跟进(可新增)、附件(fileId 挂载/软删)、客户(目录单客户)、动态(全事件投影)、方案设计/商务报价/招投标(含标底等级名)/开标(赢输快照)——全读主表扩展列,零阶段子表。
冒烟自检
.scratch/customer-e2e/.venv10/Scripts/python.exe .scratch/crm-project/demo/smoke_a5.py
25 步:登录→建项→看板 7 列/badge→列表双筛/mine→动态→冲突解除→推进→连跳→回退口径→赢单锁死(68003)→输单终态→关闭→8 页签→跟进新增→普通销售 68005→零 PUT/DELETE、零 console error。结果落 smoke-result.json,截图落 shots/。
已知演示性简化(非缺陷)
- 附件新增需先经 crm-file 上传拿 fileId(demo 不含上传控件,直接贴 fileId)。
- 「跟进时间」默认值取浏览器 UTC 时间(toISOString),演示时可手改本地时间。
- 看板卡/列表行点击进详情;详情依赖最近一次点击的项目(刷新页面后需重进)。