AWS亚马逊

ER图

关键点总结

Session是顶层容器:每次"卖家+角色"登录创建一个session

Diagnosis按角色创建:GM创建3个,LGM创建2个,OPS创建1个

Optimize是1:1关系:每个诊断只有一次优化过程(重置会创建新的诊断)

Dialog是多轮对话:一次优化包含多轮对话,每轮对话是一条记录

History是归档:诊断完成后创建历史记录,保存报告文件ID

Chat是独立功能:与诊断流程无关,直接关联session

数据库表关系图

用户登录 → 选择卖家+角色 → 上传Excel

scop_session (会话表) 1:N

├─ scop_diagnosis (诊断表)

│ ├─ IPSF (入库配置费)

│ ├─ SIPP (自包裹计划)

│ └─ LTSF (长期仓储费)

├─ scop_file (上传的Excel文件) 1:N

├─ scop_file_response (AI返回的看板数据) 1:N

│ ├─ 10个看板指标 (多条记录)

│ ├─ 引导语 (1条记录)

│ └─ 3个诊断卡片数据 (3条记录)

└─ scop_chat (问题答疑聊天) 1:N

scop_diagnosis (诊断表) 1:1

└─ scop_diagnosis_optimize (优化表)

└─ scop_diagnosis_optimize_dialog (对话表) 1:N

├─ 第1步对话

├─ 第2步对话

└─ 第N步对话

scop_diagnosis (诊断表) 1:1

└─ scop_diagnosis_history (历史表)

└─ reportId (生成的Excel报告)

完整业务流程

第1步:首页 - 开始诊断

界面:输入卖家名称 + 选择角色(总经理/物流经理/运营经理) + 上传Excel

后端:startDiagnosis()

├─ 创建 scop_session (1条)

├─ 创建 scop_diagnosis (根据角色创建1-3条)

│ └─ GM角色 → IPSF + SIPP + LTSF (3条)

│ └─ LGM角色 → IPSF + SIPP (2条)

│ └─ OPS角色 → LTSF (1条)

├─ 保存 scop_file (上传的Excel文件)

└─ 调用AI: /scop/upload-data

└─ 保存 scop_file_response

├─ 10条看板数据 (多条数据看板)

├─ 1条引导语

└─ 3条诊断卡片数据

第2步:诊断首页 - 查看看板和诊断卡片

界面:显示10个看板指标 + 引导语 + 3个诊断卡片

  • 入库配置费IPSF: $30,260.2

  • 自包裹计划SIPP: $88,672.9

  • 长期仓储费LTSF: $7,455.3

后端:getDiagnosisDetail(sessionId)

└─ 从 scop_file_response 读取数据

第3步:点击诊断卡片 - 开始优化(例如IPSF)

界面:点击"入库配置费IPSF"的"继续优化"按钮

后端:startOptimize(sessionId, diagnosis="IPSF")

├─ 调用AI: /scop/analysis (通知AI开始分析)

├─ 调用AI: /scop/optimize (message="start")

├─ 创建 scop_diagnosis_optimize (1条优化记录)

└─ 创建 scop_diagnosis_optimize_dialog (第1轮对话)

└─ message: "您希望深入了解哪些进化优化的详细内容和如何有效地实施吗?"

content: ["是的,我想要了解更多步骤", "暂时不需要,继续后续"]

第4步:IPSF优化指南 - 多轮对话

界面:显示AI的问题和选项,用户选择答案

后端:continueOptimize(sessionId, diagnosisId, content="用户选择的答案")

├─ 调用AI: /scop/optimize (message=用户选择)

├─ 更新上一轮对话的answer字段

└─ 创建新的 scop_diagnosis_optimize_dialog (第N轮对话)

└─ 重复直到 endFlag=true

第5步:优化完成 - 生成报告

当 endFlag=true 时:

├─ 调用AI: /scop/report (获取Word报告)

├─ 保存报告到文件系统

├─ 创建 scop_diagnosis_history (1条历史记录)

│ └─ reportId: 报告文件ID

│ └─ reportName: "report_张三_gm_IPSF.docx"

└─ 更新 scop_diagnosis.status = "已完成"

第6步:问题答疑 - 独立聊天

界面:右侧"SCOP问题答疑"聊天框

后端:chat(sessionId, requestContent)

├─ 调用AI: /scop/chat

└─ 保存 scop_chat (每次对话1条记录)

└─ 与session是1:N关系

相关推荐
不急不躁1234 小时前
Android16 给应用默认获取权限
android·java
C雨后彩虹4 小时前
5G网络建设
java·数据结构·算法·华为·面试
码界奇点4 小时前
基于Spring Boot的后台管理系统设计与实现
java·spring boot·后端·车载系统·毕业设计·源代码管理
爱敲点代码的小哥4 小时前
json序列化和反序列化 和 数组转成json格式
java·前端·json
零度念者4 小时前
Java IO/NIO 深度解析:从底层原理到高性能图片网关实战
java·nio
这是程序猿4 小时前
基于java的ssm框架经典电影推荐网站
java·开发语言·spring boot·spring·经典电影推荐网站
Nan_Shu_6144 小时前
学习:Java (1)
java·开发语言·学习
花花无缺4 小时前
搞清‘’时区设置‘’以及Mysql的`DATETIME` 和 `TIMESTAMP`
java·mysql
曹牧4 小时前
Java:String.startsWith 方法
java·开发语言