- Docker bridge 网络隔离(8000 端口封死) - Gunicorn 4 Worker 多进程 - Alembic 数据库迁移基线 - 日志轮转 20m×3 - JWT 密钥 + DB 密码 + CORS 收紧 - 3-2-1 备份链路(NAS + R740-B 冷备) - 连接池 pool_pre_ping + pool_recycle=3600
6.0 KiB
创建时间, 更新时间, tags
| 创建时间 | 更新时间 | tags | ||
|---|---|---|---|---|
| 2026-02-27T15:07 | 2026-02-27T15:13 |
|
项目现状与后端开发交接说明书 (Project Handover Document)
1. 项目概况与技术栈 (Project Overview & Tech Stack)
业务背景: 本项目为专为润滑油行业深度定制的 B2B 企业级 ERP/CRM 综合系统。业务链路完整覆盖了“客(客户与客情)、货(产品与库存)、单(订单与发货)、财(发票与智能报销)、权(组织与权限)”五大核心中后台数字化流转。
技术栈要求:
-
前端 (已完成 UI 占位):Vue 3 (Composition API), TypeScript, Element Plus, Vite.
-
后端 (即将开发,请 AI 注意):[⚠️请在此处填入你期望的后端语言,如:Node.js (NestJS) / Java (Spring Boot) / Python (FastAPI)] + MySQL/PostgreSQL 关系型数据库 + Redis (用于 Token 鉴权与缓存)。
2. 已完成的前端模块全景图 (Completed Frontend Modules)
现阶段已完成全套核心前台视图(UI/UX)搭建与交互逻辑封皮,主要包含以下独立路由模块:
-
/及基础框架 (Layout):基于el-container的经典折叠侧边栏与顶部面包屑导航,预留多级路由。 -
/customers(客户管理大盘):涵盖高级检索,实现 A/B/C 三级高净值客户的标签化表格总览。 -
/customers/detail(客户详情):深度整合 AI。左侧档案卡+AI客情健康度;右侧/下方搭载沉浸式时间轴(Timeline),及弹窗式AI 拜访简报生成器。 -
/products(产品与库存):采用“左树右表”布局。左侧分类树,右侧精细管理多包装规格 SKU,内置双抽屉查看详情及【出入库流水账】。 -
/orders(订单管理):业务极度复杂的交易枢纽。含【客户专属历史定价自动带出】逻辑,精准追踪发货状态(待/部分/已发货)及付款进度(进度条跟踪)。 -
/shipping(物流发货记录):与订单强关联,支持【一笔订单分批发货】,追踪承运方与物流单号。 -
/finance(财务发票与报销中心):-
大一统票据池:上传即刻 OCR 提取,底层实行软删除(作废)。
-
智能报销申请 (草稿体系):左侧票据池拉取,右侧购物车封装(内置费用描述及两级票据类型转换),实时合计。
-
专属 A4 打印:利用 CSS
@media print穿透重绘出带大写金额转化、极高信噪比的定制版报销单。
-
-
/settings(系统设置与权限):标准 RBAC 控制台。左树(部门)右表(员工);角色池分配极细粒度的“数据横向穿透权限”(全部/本部门/仅本人)及菜单按钮权限。
3. 核心业务数据结构 (Core Data Structures / API Contracts)
注:这是后端建立 SQL Schema 的绝对契约基准。
1. 客户与日志实体 (Customer & FollowUp)
-
Customer:
id,name,level,industry,contact,phone,aiScore,address,status -
FollowUpLog:
id,customerId,salespersonId,content,emotionType,nextVisitTime,createTime(用于生成 AI 简报的底层饲料)
2. 产品库存实体 (Product SKU & InventoryFlow)
-
ProductSku:
id,categoryId,skuCode,name,spec(如 200L/桶),standardPrice,stockQty,warningThreshold,status -
InventoryFlow:
id,skuCode,changeQty(+/-),reason(进货/出库/损耗),operatorId,createTime
3. 订单交易实体 (Order)
-
OrderMain:
orderNo,customerId,totalAmount,shippingState(pending/partial/shipped),paymentState(unpaid/partial/cleared),createTime -
OrderItem:
id,orderNo,skuCode,qty,unitPrice,subTotal
4. 独立发货单实体 (Shipping - 承接分批发货)
-
ShippingRecord:
shippingNo,orderNo,carrier(如德邦),trackingNo,status(transit/delivered),shipDate -
ShippingItem:
id,shippingNo,skuCode,shippedQty(本次实际发货量)
5. 财务及报销实体 (Invoice & Expense)
-
InvoicePool (票据池):
id,uploaderId,fileUrl,merchantName,amount,invoiceDate,type(客户发票/报销发票),is_deleted(防物理篡改) -
ExpenseRecord (报销总单):
systemNo,applicantId,totalAmount,status(draft/pending/approved/rejected) -
ExpenseDetail (报销明细行):
id,systemNo,invoiceId,expenseDesc,originalType(油费/招待),offsetType(冲顶类型),amount
6. 权限角色实体 (Role & Setup)
-
User:
userId,deptId,roleId,username,passwordHash,status -
Role:
roleId,roleName,dataScope(all/dept_and_sub/self),menuKeys
4. 下一阶段开发规划 (Next Phase Planning)
前端 UI 及交互体验已接近完全体(目前皆由 ref/reactive 驱动的纯本地响应式黑盒)。开启新一轮对话进入后端主导阶段,强烈建议按以下顺位破冰:
-
确定后端框架与建库方案:
-
优先依据上述实体契约搭建关系型数据库模型(含 ER 关联图设计)。
-
注意:所有财务与流水表强制引入
is_deleted及update_time等审计字段。
-
-
鉴权与 RBAC 拦截栈基座开发:
-
开发 JWT Token 签发与认证体系。
-
核心难点预警:必须在底层封装针对
dataScope的 SQL 动态拼接过滤器,严防数据越权访问。
-
-
消除前端 Mock 层联调:
-
配置前端代理环境。
-
开发通用 CRUD 接口,逐步替换 Vue 文件中的 Mock 数据。
-
-
复杂流体业务 API 攻坚:
-
开发“历史专享价”带出接口。
-
开发“分批发货关联扣减订单待发数量”的事务一致性逻辑。
-
开发“购物车报销合单”的长事务锁定逻辑。
-