# 无锡厚德销售订单DEMO **Repository Path**: karonluo/pywxhd ## Basic Information - **Project Name**: 无锡厚德销售订单DEMO - **Description**: 无锡厚德销售订单DEMO - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-17 - **Last Updated**: 2026-03-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PYWXHD Web System 无锡厚德销售业务 Web 系统,采用前后端分离架构,覆盖客户、报价、合同、交付、财务、售后、审计日志与个人空间的统一业务协同。 ## 技术栈 - 后端:Python 3 + Django + Django REST Framework + SimpleJWT - 前端:Vue 3 + Vite + Element Plus + Pinia + Vue Router - 权限模型:RBAC(用户、角色、菜单、权限码) - 数据库:MySQL - 文档导出:Office 模板回填 + 浏览器下载 ## 业务覆盖 - 客户管理 - 客户业务分析 - 产品手册 - 客户类型字典 - 产品管理、物料池 - 报价单、合同 - 发货通知、领料单、快递单、签回单 - 款项记录、开票申请 - 试用记录、售后工单 - 用户、角色、菜单权限管理 - 统一流程待办、顺序审批、会签、加签、转交审批 - 经营总览中的端到端业务流程图与角色导航 - 审计日志:登录日志、操作日志,支持日期范围筛选和 CSV/XLSX 导出 - 个人空间:昵称、头像、联系方式、个性化主题、本人改密 ## 关键文档 - [材料.md](材料.md):系统建设材料、业务本体、实现说明、维护约定 - [API.md](API.md):当前系统全部接口文档,未来接口变更必须同步更新 - [用户使用手册.md](用户使用手册.md):面向业务用户的系统操作手册,可继续补充截图和岗位说明 - 产品需求规格说明书(PRD).md:产品目标、业务对象、功能范围与验收标准 ## 目录结构 ```text backend/ Django 后端 config/ Django 总路由与配置 apps/ 业务模块 frontend/ Vue 3 前端 Client-provided project materials/ 客户提供资料 start-dev.ps1 本地调试启动脚本 README.md 项目说明 材料.md 系统建设材料 API.md 接口文档 产品需求规格说明书(PRD).md PRD 文档 用户使用手册.md 用户操作手册 ``` ## 数据库配置 当前项目默认接入远程 MySQL: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'db_wxhd', 'USER': 'root', 'PASSWORD': 'Pass@@word123!', 'HOST': '127.0.0.1', 'PORT': '13303', 'OPTIONS': { 'charset': 'utf8mb4', 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'", }, } } ``` ## 初始化状态 - 已完成数据库迁移 - 已导入初始 RBAC 菜单、角色和管理员账号 - 已可使用演示数据命令生成业务测试数据 - 已支持登录日志与操作日志落库,系统管理菜单可直接查询、按日期范围筛选并导出审计记录 - 已支持统一流程待办,合同/发货/开票审批共用正式审批任务模型,可处理顺序审批、会签、加签与转交 - 报价单、合同在起草时由后端按当前登录用户自动写入创建人,前端仅只读展示 - 报价单、合同明细在选择产品后会默认带入产品参考价,金额合计由系统自动汇总显示 - 物料参数已支持 key-value 可视化维护,接口仍保持 `parameter_snapshot` 对象结构 - 签回单仅允许关联非草稿合同,前端选择范围和后端保存校验均已收紧 - 发货通知、签回单、款项管理等凡展示合同编号的清单,已统一补充客户列,便于业务用户快速识别合同归属客户 - 客户清单已新增“分析”入口,可查看单一客户关联的报价、合同、发货、快递、签回、回款、开票、试用、售后清单与聚合统计 - 客户业务分析页已支持导出 Excel 摘要,便于销售离线复盘和向管理层传阅 - 交付管理已新增“产品手册”菜单,支持按产品浏览附件资料,管理员上传/更新/删除,普通用户只读预览和下载 - 经营总览页已新增端到端业务流程图,按“客户到售后”的主链路展示节点、角色与关键动作;桌面端支持悬停显示左右箭头并按节点逐个浏览 - 通用单据表单重置逻辑已补强,合同等使用 DocumentCrudPage 的页面在关闭编辑/查看后重新起草时,会彻底清空上一条记录内容 ## 代码仓库 - 当前统一开发分支为 `dev` - `master` 为正式环境发布分支,只允许仓库所有者本人从 `dev` 同步进入 `master` - 团队成员不得直接在 `master` 提交、推送或合并代码 - `main` 与 `develop` 已废弃,不再作为日常开发分支使用 - Gitee 仓库应开启 `master` 分支保护:仅仓库所有者可推送、可合并,其他成员只允许在 `dev` 协作 - 若 Gitee 页面默认分支仍不是 `dev`,应在仓库设置中将默认分支切换为 `dev` 默认管理员: - 用户名:admin - 密码:Admin@123456 ## 本地启动 ### 一键启动 ```powershell cd D:\pyproj\pywxhd .\start-dev.ps1 ``` 可选参数: - `-BackendPort 8001`:自定义后端端口 - `-FrontendPort 5174`:自定义前端端口 - `-ReuseCurrentWindow`:在当前窗口前台启动单个进程时使用 ### 单独启动后端 ```powershell cd backend python manage.py runserver ``` 默认地址:[http://127.0.0.1:8000](http://127.0.0.1:8000) ### 单独启动前端 ```powershell cd frontend npm run dev ``` 默认地址:[http://127.0.0.1:5173](http://127.0.0.1:5173) ## 常用命令 ### 后端 ```powershell cd backend python manage.py migrate python manage.py check python manage.py seed_initial_data python manage.py seed_demo_business_data ``` ### 前端 ```powershell cd frontend npm install npm run dev npm run build ``` ## 已验证 - manage.py migrate 通过 - manage.py check 通过 - npm run build 通过 - 客户分析接口 `/api/customers/{id}/analysis/` 已完成 Django shell 冒烟验证,返回 customer、overview、status_summary、top_rankings、recent_lists 五组数据 - manage.py makemigrations --check 通过,产品手册附件模型迁移已纳入代码库 - 个人空间资料更新接口与本人改密接口已做冒烟测试 - 审计日志新增数据库模型、接口与前端查询页面,并支持 CSV/XLSX 导出 - API.md 已整理为包含请求字段与返回示例的接口手册 ## 维护约定 - 任何 API 变更,必须同步更新 [API.md](API.md) - 关键设计、方法论约束和系统演进,必须同步更新 [材料.md](材料.md) - 新功能范围、业务流程和验收标准,应同步更新 [产品需求规格说明书(PRD).md](产品需求规格说明书(PRD).md) - 面向业务用户的操作流程、截图说明和培训材料,应同步更新 [用户使用手册.md](用户使用手册.md) - 共享组件层面的交互修复,例如表单 reset、流程图滚动、列表操作列策略,也要同步更新测试/UAT文档和前端说明