|
|
f18dfd9819
|
新增 /cascade-inventory 级联库存缺口查询接口,供 AI 调用 BOM 出库缺口分析
|
2026-06-01 09:59:48 +08:00 |
|
|
|
fb5b8d873b
|
版本变更V3.35将图像的处理统一更换到新表当中
|
2026-05-26 11:28:26 +08:00 |
|
|
|
92e1f7275e
|
feat: 以图搜图返回 business_data 包含 name/spec_model/url,支持详情页跳转
|
2026-05-25 17:52:03 +08:00 |
|
|
|
3ffcd35093
|
版本变更V3.31添加识图功能
|
2026-05-22 11:40:35 +08:00 |
|
|
|
8c635d6afe
|
版本变更V3.31添加识图功能
|
2026-05-22 10:59:39 +08:00 |
|
|
|
c273f5a9d9
|
feat: 以图搜图功能升级(跨表UNION检索 + 拍照识图入口 + 批量向量初始化脚本)
|
2026-05-21 15:43:45 +08:00 |
|
|
|
1a7c06f197
|
feat: 添加以图搜图功能(CLIP ONNX + pgvector)+ Dify会话修复 + 版本升至V3.30
|
2026-05-21 14:09:57 +08:00 |
|
|
|
4d81056075
|
feat: 实现异步导出骨架(Threading + Redis 状态流转),支持 POST 提交/轮询状态/下载文件
|
2026-05-19 10:35:33 +08:00 |
|
|
|
c60112f5f8
|
perf: 引入 Redis Cache-Aside 模式优化 BOM 读取,TTL=12h,写操作后主动失效缓存
|
2026-05-19 10:14:55 +08:00 |
|
|
|
cf55c94826
|
feat: 库存接口增加 ai_mode=true 极简返回模式,键名压缩为 n/s/c
|
2026-05-19 09:53:06 +08:00 |
|
|
|
d736d5d4a9
|
fix: 彻底移除 op_records 字段级权限过滤,所有字段对普通角色可见
|
2026-05-15 10:40:53 +08:00 |
|
|
|
27683d2a8b
|
fix: 借用记录列表移除 sku 字段的权限过滤,所有角色均可正常查看
|
2026-05-15 09:57:55 +08:00 |
|
|
|
1a76c4853e
|
feat(purchase): 物料搜索分页+价格半联动+图片必填校验
|
2026-05-12 17:48:29 +08:00 |
|
|
|
9dfcb93146
|
feat(purchase): 新增采购申请模块后端(模型+Service+API路由)
|
2026-05-12 16:33:18 +08:00 |
|
|
|
6b4ebfa24f
|
feat(upload): 上传组件删除前需二次确认,支持ZIP/RAR/7Z压缩包上传
|
2026-05-12 15:34:26 +08:00 |
|
|
|
3dae206828
|
feat(outbound): 完善出库审批邮件通知逻辑,支持申请人与审批人同时收到邮件(带物料明细),审批通过后申请人和库管均收到带物料明细的通知
|
2026-05-12 13:42:15 +08:00 |
|
|
|
259f3a7e0d
|
4.29扫码获取库位小工具接口
|
2026-04-29 15:40:43 +08:00 |
|
|
|
183b93012e
|
4.28
|
2026-04-28 16:07:11 +08:00 |
|
|
|
62c0e3738e
|
fix(outbound+trans): 修复POST接口错误数据清洗导致的sku/quantity字段被清除Bug,并新增出库审批工作流全链路
|
2026-04-28 16:02:34 +08:00 |
|
|
|
e08eaff40a
|
feat(outbound): 库存列表按规格+库位聚合 + BOM明细类型修复
|
2026-04-28 09:23:59 +08:00 |
|
|
|
40e405becd
|
4.27
|
2026-04-27 16:33:54 +08:00 |
|
|
|
d6ae9499db
|
feat: 新增首页全局搜索功能,支持跨模块多词搜索
|
2026-04-27 15:57:26 +08:00 |
|
|
|
48f2011a38
|
fix: 盘点草稿已盘数量统计兼容字段名 quantity
|
2026-04-24 13:32:46 +08:00 |
|
|
|
996056d46a
|
fix: 修复库存盘点已盘数量卡在500的问题
|
2026-04-24 13:19:57 +08:00 |
|
|
|
f0c200a15f
|
fix: delete_bom use .all() instead of .first() to delete all child records
|
2026-04-24 11:42:42 +08:00 |
|
|
|
a849e14b2c
|
refactor(orm): 将所有的批量 delete/update 重构为对象级操作,以确保触发 SQLAlchemy 审计事件
|
2026-04-20 15:43:48 +08:00 |
|
|
|
772f3f45f4
|
feat(profile): implement independent email update dialog to prevent accidental password resets during partial updates
|
2026-04-17 12:48:30 +08:00 |
|
|
|
d651d19e86
|
feat(system): implement robust batch user creation integrating existing pinyin logic and backend duplication prevention
|
2026-04-17 12:16:45 +08:00 |
|
|
|
477da7c434
|
fix-security-correct-field-permission-mapping-and-403-denial
|
2026-04-14 15:37:39 +08:00 |
|
|
|
ae05f3bb75
|
fix-security-field-permission-matching
|
2026-04-14 15:09:15 +08:00 |
|
|
|
ae1fd1afd4
|
fix-security-permission-codes
|
2026-04-14 14:49:53 +08:00 |
|
|
|
c7ac092be4
|
feat(material): add global floating helper to track latest specification codes with smart grouping
|
2026-04-13 08:28:27 +08:00 |
|
|
|
e23e8c6a9e
|
fix(scrap): resolve material names, specs and operator names in list query
|
2026-04-09 17:49:51 +08:00 |
|
|
|
454f9b1184
|
feat(scrap): integrate repair items into physical scrap scanning flow and lock manual status
|
2026-04-09 09:53:20 +08:00 |
|
|
|
41b5118ecd
|
feat(repair): implement backend CRUD services and API routes with RBAC permissions for repair module
|
2026-04-08 18:34:48 +08:00 |
|
|
|
4a4baa2f8f
|
fix: sort warehouse tree by name, fix tree batch delete cascade, and implement safe history location autofill
|
2026-04-08 17:32:00 +08:00 |
|
|
|
6d80c90b66
|
feat: add 'not contains' operator, implement inbound record export, and verify export filter rules
|
2026-04-07 17:23:00 +08:00 |
|
|
|
0d8f697df4
|
fix(stocktake): enforce session_id in resume, make missing generation idempotent, update UI to show SN, and fix excel time offset
|
2026-04-03 09:42:51 +08:00 |
|
|
|
43e1d0aa55
|
fix(stocktake): strictly isolate stocktake drafts by session_id in list and finish generation to prevent historical data mixing
|
2026-04-03 09:25:52 +08:00 |
|
|
|
6aec571775
|
fix(stocktake): resolve 500 error caused by missing batch or sn attributes using strict getattr fallback
|
2026-04-03 09:05:48 +08:00 |
|
|
|
c361d25ea0
|
fix(stocktake): display batch number in scanning dialog and fix empty uncounted items in Excel export
|
2026-04-02 19:06:19 +08:00 |
|
|
|
dbcb7d0d92
|
perf(system): optimize large data rendering in stocktake, fix N+1 in warehouse, and add upload size limits
|
2026-04-02 18:51:13 +08:00 |
|
|
|
a52ced0375
|
fix(backend): resolve DetachedInstanceError in audit_log, add pessimistic locks for stock adjustments, and eliminate N+1 queries with eager loading
|
2026-04-02 18:44:12 +08:00 |
|
|
|
b614a7c8f5
|
fix(warehouse): fix tree path generation logic and integrity error causing 500 in batch generation
|
2026-04-02 11:05:41 +08:00 |
|
|
|
e28326b2e4
|
feat(warehouse): implement bulk delete and multi-level rule-based batch generation for locations
|
2026-04-02 10:55:17 +08:00 |
|
|
|
84e615baf6
|
fix(warehouse): fix AttributeError by safely extracting existing attribute from SysWarehouseLocation
|
2026-04-02 10:44:33 +08:00 |
|
|
|
457e222632
|
fix(warehouse): fix 500 error on delete by extracting attributes before db commit
|
2026-04-02 10:31:53 +08:00 |
|
|
|
b2ce9d31f8
|
fix(stocktake): replace hardcoded 'admin' with actual current user in excel export
|
2026-03-27 09:04:13 +08:00 |
|
|
|
2a27f2e0df
|
feat(stocktake): implement strict blind stocktake logic with hidden system qty, editable count and status filters
|
2026-03-26 17:42:51 +08:00 |
|
|
|
db0444cc13
|
fix(scrap): completely refactor scan API return dict with safe getattr to prevent attribute errors
|
2026-03-26 17:20:43 +08:00 |
|