|
|
2abac8b3f9
|
feat(borrow,outbound): 申请页审批人改可选(默认免审批),提示语更新
- 出库/借库申请不再强制选审批人;命中需审批且未选人时由后端提示补选
- 成功提示改为:含需审批物料将进入审批,否则直接交库管执行
|
2026-09-09 09:31:28 +08:00 |
|
|
|
93f149739d
|
feat(material): 基础信息列表加“出库/借库需审批”开关列
- material_base.ts 新增 batchSetApprovalRequired
- material/list.vue:列配置/权限/表格 switch,单行拨动即保存(乐观更新)
|
2026-09-09 09:31:23 +08:00 |
|
|
|
4cd3eefdf4
|
feat(borrow,outbound): 默认免审批改造——命中物料需审批才走原流程
- models/base.py 加 is_approval_required 列及 isApprovalRequired 序列化;field_permissions 登记
- 新增 POST /inbound/base/batch-approval(批量设需审批,仿批量质检)
- borrow_service.submit_approval / outbound_service.create_request:明细含需审批物料→须选审批人走原审批;否则创建即 status=1(待库管执行)、不发审批邮件
- 判定按 (name,spec_model) 反查启用物料
|
2026-09-09 09:31:18 +08:00 |
|
|
|
e03c035ee0
|
feat(db): material_base 增加 is_approval_required 开关列(出库/借库需审批)
- boolean NOT NULL DEFAULT false,存量默认不审批
|
2026-09-09 09:31:12 +08:00 |
|
|
|
6aba09880c
|
feat(borrow): 库管借库执行自动把申请单原因带入备注说明
- 选中已审批借库申请单时 form.remark 自动填充该单 remark(申请原因),无需重复手填,可再改
|
2026-09-09 09:31:06 +08:00 |
|
|
|
9622baf76e
|
fix(borrow,outbound): 记录查看按角色收窄——普通只看自己,库管/主管/超管/跨域看全部
- decorators 新增 is_privileged_viewer(SUPER_ADMIN/SUPERVISOR/WAREHOUSE_MGR 或 crossDomain)
- 借库记录列表:非管理者强制 applicant_id=当前用户
- 出库记录列表+详情:非管理者强制只看自己/无权访问他人单(403)
|
2026-09-09 09:31:01 +08:00 |
|
|
|
578c15dc95
|
fix(bom): 另存为版本自增基准改响应式,修复 V1.1→V1.2 未升级
- originalVersion/currentBomNo 为普通 let,computed 读不到变化;且 handleSaveAs 在赋值前就算版本候选,导致从 V1.1 另存得到 V1.1 覆盖原版本
- 新增响应式 upgradeBaseVersion/upgradeBaseBomNo,versionOptions 改读 ref;handleSaveAs 先锁定基准再计算
- 修复后:V1.1→V1.2、V1.9→V1.10、主版本→V2.0,占用号自动跳过
|
2026-09-08 18:19:28 +08:00 |
|
|
|
00dde3a896
|
fix(inbound/buy): 采购入库表单批号续号改用精准接口
- checkHistoryAndSetMode 改调 /inbound/buy/latest-record 续号,不再依赖 getBuyList 前1000条
- 采购单导入“仅有 base_id”分支也自动续批号并带历史库位
|
2026-09-08 18:16:08 +08:00 |
|
|
|
2b0e335790
|
fix(inbound/buy): 批号自增改为按物料精准取最近一条
- 新增 get_latest_batch_record_by_base_id:SQL 直接 filter(base_id)+order by in_date/id desc first(),O(1) 不分页
- 新增 GET /inbound/buy/latest-record
- 修复原“拉全表前1000条再前端过滤”导致的历史被截断→批号退回000001/重复入库被拦(如 CCAB0029)
|
2026-09-08 18:16:04 +08:00 |
|
|
|
b4971f057e
|
fix(bom): 管理页启停/归档即时同步与界面健壮性大修
- 只读启停用后端权威 bom_no/version,修复改状态报 BOM不存在(400)
- 成功路径统一 await reloadCurrentGroups():先更新分组摘要,再静默覆盖已展开分类明细
- 本地秒移除 applyLocalRowState:按新状态+当前筛选把不符合行立即踢出缓存并强制 Map 换引用
- 接口层与界面层 try 分离:UI 刷新异常不再误报“状态更新失败”,避免红绿/黄提示同弹
- 遍历全部改为 Array.isArray/?.keys()/entries()/||[] 防御,杜绝 undefined 误报
- 兼容 el-collapse 手风琴(String)与多开(Array):新增 isCategoryActive/setActiveList,修复 activeCategories.filter is not a function
|
2026-09-08 13:58:48 +08:00 |
|
|
|
66b3e4897f
|
fix(bom): get_bom_summary 关键词与 list 对齐 + 状态更新方法健壮化
- get_bom_summary 关键词过滤改为与 get_bom_list 同款子查询(同时匹配 bom_no、父件名/规格、子件名/规格),任意关键词下 summary 计数与 list 明细严格一致,消除“标题有数、表格为空”
- update_enabled/update_archived 对 bom_no/version 做 strip 规范化,并细化“BOM不存在”报错(带上实际参数便于排查)
|
2026-09-08 13:58:43 +08:00 |
|
|
|
cb1d385e77
|
V3.73,9.8推送
|
2026-09-08 11:27:53 +08:00 |
|
|
|
9fc6ff00f9
|
feat(bom): 出库/借库清单头部 BOM 号后显示父件物料名
- selectedBomLabel 追加父件名(优先候选列表 parent_name,回退最近详情 parent_name)
- 主清单与欠料待补清单两处头部同时生效;取不到名称时退回原格式
|
2026-09-08 11:13:42 +08:00 |
|
|
|
02f74278df
|
feat(bom): 归档业务闭环——状态筛选+归档/取消归档入口
- get_bom_list/get_bom_summary 状态过滤支持 archived,enabled 语义改为“启用且未归档”
- get_bom_list 输出补 is_archived;新增 update_archived 与 POST /bom/archive(整组切换归档、清缓存、审计)
- “未指定版本自动取最新”硬化为仅认启用且未归档(get_bom_detail / get_bom_no_by_parent)
- 前端:状态按钮组加“归档”;列表状态列区分归档;操作列加“归档/取消归档”按钮
|
2026-09-08 11:13:38 +08:00 |
|
|
|
1daa60590c
|
feat(bom): BOM 管理页 UI——子件版本下拉、只读启停、状态按钮组、公司筛选、手风琴、详情 loading
- 自制件子件行内版本下拉(必选,默认最新启用,外购件不显示);保存/草稿带引用版本
- 查看/只读态“是否启用”开关解耦,切换走独立启停接口
- 状态筛选改 el-radio-group 按钮组(默认启用)
- 顶部接入 CompanySelector,父件/子件物料搜索联动公司并标注公司
- 分类手风琴(全部展开临时关手风琴)与详情弹窗 v-loading;列表默认只显示启用
|
2026-09-08 10:14:51 +08:00 |
|
|
|
424df231d5
|
feat(bom): 前端 BOM API——候选版本、独立启停、物料搜索支持公司
- bom.ts 新增 getChildBomVersions(候选版本) 与 updateBomStatus(独立启停)
- inbound/buy.ts searchMaterialBase 增加可选 company 参数(跨域按公司过滤)
|
2026-09-08 10:14:47 +08:00 |
|
|
|
91fb6c1a03
|
feat(bom): 自制件子件选版本落库/强校验 + 独立启停 + 状态筛选
- save_bom 落库 child_bom_no/child_bom_version;自制件必选且须属于启用未归档配方集,外购件置空;跨版本查重纳入引用版本
- get_bom_detail 改为读存储列,空则回退最新启用配方;候选/校验/回退读取均排除 is_archived
- 新增 GET /bom/self-bom-versions(子件候选版本);新增 POST /bom/status 独立启停(update_enabled 清缓存)
- 草稿链路 save_draft/get_draft_detail/publish 持久化引用版本
- get_bom_list/get_bom_summary 支持 status(enabled/disabled) 过滤
|
2026-09-08 10:14:44 +08:00 |
|
|
|
6250fa94cb
|
feat(bom): BOM 子件引用版本与归档 数据库迁移
- bom_table/bom_draft_table 加 child_bom_no/child_bom_version(子件引用的自制BOM版本)
- bom_table 加 is_archived 归档标记(仍启用可查看/编辑,但不再作为子件版本候选)
- 回填 60 行自制件子件引用版本,4 个多版本自制件按业务口径(79/92/226/1905)
- 3 套占位/废弃配方改标归档并恢复启用
|
2026-09-08 10:14:40 +08:00 |
|
|
|
7d9828e403
|
feat: BOM套餐添加弹窗齐套清单显示自制件子件版本号
|
2026-09-07 18:03:43 +08:00 |
|
|
|
3dd8458de0
|
feat: BOM 子件展示自制件 BOM 版本号——子件列表与出库/借库 BOM 清单打印均显示
|
2026-09-07 18:01:16 +08:00 |
|
|
|
d182af7d2a
|
feat: 采购申请支持整批修改重提——批次主行对有被驳回明细的批次一键载入全部被驳明细重提
|
2026-09-07 17:08:37 +08:00 |
|
|
|
d163a36117
|
feat: 采购申请被驳回单支持「修改重提」——预填原单内容改后重新提交
|
2026-09-07 17:02:04 +08:00 |
|
|
|
fd55b7adfe
|
perf: 摄像头扫码重构——动态 qrbox 聚焦框、720p、CODE_128/QR 白名单,提升平板扫码体验
|
2026-09-07 15:53:11 +08:00 |
|
|
|
220f73acbd
|
feat: 首页全局搜索支持按 SKU 查库位——采购/半成品/成品库存纳入搜索并显示库位
|
2026-09-07 15:47:25 +08:00 |
|
|
|
803e8a1532
|
fix: 出库申请的出库类型改为不默认、必填校验(不能为空提交)
|
2026-09-07 14:04:34 +08:00 |
|
|
|
859d783b5c
|
V3.72,9.7推送
|
2026-09-07 14:02:55 +08:00 |
|
|
|
478b90fe50
|
feat: 出库类型贯穿申请→扫码出库——申请单加 outbound_type,申请时选类型、扫码出库自动带出
|
2026-09-07 14:01:13 +08:00 |
|
|
|
eaafeaf24e
|
feat: 出库类型新增「维修出库(REPAIR)」下拉选项与记录类型/标签映射
|
2026-09-07 13:51:38 +08:00 |
|
|
|
73510d3a71
|
feat: 借还记录默认排序重构——有限期单按预计归还时间升序靠前,无限期单按借出时间升序靠后(优先关注快到期/逾期)
|
2026-09-04 16:17:42 +08:00 |
|
|
|
b274ed1ed1
|
feat: TransBorrow 归还人 to_dict 自动把数字 user id 映射为用户名(历史记录不再显示数字,lru_cache 防 N+1)
|
2026-09-04 16:12:36 +08:00 |
|
|
|
02f36b383c
|
fix: 借库归还/报废/借库执行操作人由 JWT 数字 ID 改为用户名(归还人不再显示数字)
|
2026-09-04 16:10:00 +08:00 |
|
|
|
808e491fe8
|
fix: BOM 匹配库存(bom_match_stock)加行级公司隔离(三表按 base 公司过滤,超管/跨域不受限)
|
2026-09-04 15:57:14 +08:00 |
|
|
|
b40aa3ab90
|
fix: 出库选单手动添加库存(/v1/inbound/stock/list)加行级公司隔离(三表按 base 公司过滤,超管/跨域不受限)
|
2026-09-04 15:55:24 +08:00 |
|
|
|
2f6027b43c
|
fix: 采购列表字段过滤后补回 base_id,恢复前端批号自动叠加(与 semi 列表一致,修 LICA 同物料二次入库拦截)
|
2026-09-04 15:33:17 +08:00 |
|
|
|
b6ecde11dd
|
refactor: warehouse/tree 移除临时打点日志,保留 O(N) build_tree 优化
|
2026-09-04 15:19:00 +08:00 |
|
|
|
7e3fc11bf5
|
chore: warehouse/tree 接口加 3 阶段耗时打点日志(查库/build_tree/序列化)
|
2026-09-04 15:16:20 +08:00 |
|
|
|
bc6e97ae97
|
perf: warehouse build_tree 改为 Map 分组内存组装,消除 O(N²) 递归全扫(tree TTFB 1.7s→0.08s)
|
2026-09-04 15:10:38 +08:00 |
|
|
|
3bd19c1ab5
|
feat: 借库审批支持手动完结——已通过(status=1)单可强制完结,库管/主管/超管可见
|
2026-09-04 14:52:31 +08:00 |
|
|
|
0daf50ac21
|
fix: 成品/半成品/维修列表第二层跨域判断补认 crossDomain(解决库管配跨域仍看不到双边)
|
2026-09-04 13:01:44 +08:00 |
|
|
|
27fb34807d
|
V3.71,9.4推送
|
2026-09-04 12:02:43 +08:00 |
|
|
|
1527d552d4
|
feat: 出库/借库记录记录并展示库位快照(DB加列+后端写入+记录页展示)
|
2026-09-04 11:42:44 +08:00 |
|
|
|
8e561836eb
|
feat: 库位按物料公司白名单显示——WarehouseSelector 支持 allowedTopPrefixes,IRIS 仅显 Y、LICA 显 C/L
|
2026-09-04 11:02:03 +08:00 |
|
|
|
7cdc0bc3a1
|
perf: 库位选择器改为按需懒加载——新增 /warehouse/children 接口,WarehouseSelector 移除全量树依赖
|
2026-09-04 10:51:49 +08:00 |
|
|
|
0535cd8bd7
|
fix: 借库申请页预计归还日期禁止选择早于当日
|
2026-09-04 09:58:48 +08:00 |
|
|
|
e5c49c5177
|
fix: 入库 search-base 物料选择加公司隔离,恢复半成品批号按本公司历史自动递增
|
2026-09-04 09:42:49 +08:00 |
|
|
|
1b760f351e
|
fix: 出库/借库扫码查库存与 BOM 子件物料选择加行级公司隔离(超管/跨域不受限)
|
2026-09-04 09:40:00 +08:00 |
|
|
|
2acbd00222
|
fix: 修正报废/库存调整/维修入库模块前端权限码与权限表不一致(scrap_list/stock_adjustment/维修统一 operation)
|
2026-09-04 09:27:55 +08:00 |
|
|
|
e61351b0ca
|
fix: 借库审批页按钮权限码改为 op_borrow_approval:operation(主管看不到审批按钮)
|
2026-09-04 09:23:33 +08:00 |
|
|
|
c68ffdca0f
|
fix: 入库成品/半成品/采购编辑其它字段时不再误清空图片——仅显式携带图片字段才更新
|
2026-09-03 14:14:24 +08:00 |
|
|
|
7fe861b4a7
|
fix: 基础信息修改其它字段时不再误清空 product_image(图片消失)——仅显式携带 generalImage 才更新图片
|
2026-09-03 14:12:15 +08:00 |
|