f3dc6a760da3a6810f8350e8532539dafb210e53
- 新组件 CombineCanvas: 交互对齐原站画图编辑器 库面板可拖拽(dragstart/drop) → 画布落点摆放 自由拖移(同uid单元整体移动) + 边缘吸附对齐(12px容差+红色辅助线) 点选高亮/底边对齐/Del键删除/平移缩放/双击复位 - CombineView 重构: 拖放+点击双入口, 保留2D编辑与3D预览切换 - 另存我的样板时剥离内部标记字段, 保持标准 drawing_data 格式 - 原'顺序拼接'模式由画布自由摆放取代
huamenchuang
门窗行业云平台(功能对标 windoorcraft.com,全部自研实现)。
当前进度
- ✅ 目标站逆向与数据采集(样板库 254 套全量 + 二维平面图 254 张 + 接口全量留档)
- ✅ 后端 v0.2:认证 / 订单(状态机+生产进度+审计日志)/ 客户 / 合同(意向单→正式单)/ 样板库 / 优化下料(FFD)
- ✅ 前端 v0.2:Vue3 + Element Plus,7 个页面,自研二维窗型画布渲染器(可渲染全部 254 套样板)
- ⏳ 报价引擎 / 打印模板 / 微信生态(规划中,见方案 §6 里程碑)
文档导航
目录
doc/ 设计文档
data/
├── api-endpoint-inventory.txt 目标站接口名清单(≈300 条)
├── api-samples/ 核心接口真实响应样本 + 样板库全量清单
├── windoor-drawings/ 254 套官方样板完整绘制数据 (drawing_data)
├── windoor-images/ 254 张样板二维平面图
└── full-site/ 整站接口全量扫描留档
src/huamenchuang/ 后端(FastAPI,分层: api/services/repositories/models)
frontend/ 前端(Vue3 + TS,规划中)
快速开始
uv sync # 后端依赖
npm --prefix frontend install # 前端依赖
uv run python -m huamenchuang.scripts.seed # 管理员 + 254 套样板入库
npm --prefix frontend run build # 构建前端到 frontend/dist(后端自动挂载)
uv run uvicorn huamenchuang.main:app --reload # 启动 → http://localhost:8000
打开 http://localhost:8000 即为完整系统(SPA 由后端服务,深链接自动回退)。
前端开发热更新:npm --prefix frontend run dev(5173 端口,/api 代理到 8000)。
管理员账号(开发):13800000000 / 123456。
环境变量(均可选):HMC_DATABASE_URL(默认 SQLite,可切 MySQL)、HMC_JWT_SECRET(生产必设)、HMC_ENABLED_MODULES(套餐模块开关)。
Languages
Vue
45.2%
Python
38%
JavaScript
10.4%
TypeScript
6.1%
Dockerfile
0.2%