|
|
f612c47143
|
fix(filter): append 23:59:59 to end_date to resolve midnight truncation bug in date range queries
|
2026-04-07 17:39:14 +08:00 |
|
|
|
5ea2be58ae
|
fix(filter): globally apply not_contains operator parsing to all stock and inbound queries
|
2026-04-07 17:32:27 +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 |
|
|
|
30ab1c186c
|
fix: filter zero quantity items in inventory export and add batch/sn traceability to outbound record details
|
2026-04-07 16:41:53 +08:00 |
|
|
|
875de73a3a
|
4.7更改打印标签代码,去掉序列号以及批号
|
2026-04-07 16:11:04 +08:00 |
|
|
|
457e222632
|
fix(warehouse): fix 500 error on delete by extracting attributes before db commit
|
2026-04-02 10:31:53 +08:00 |
|
|
|
c8810891d8
|
fix(api): globally replace invalid material_base/material_name attributes with correct base relationship
|
2026-03-26 17:14:26 +08:00 |
|
|
|
46dd8f1c3a
|
fix(auth,audit): ensure display_name persists in token refresh and add fallback in audit log
|
2026-03-25 11:16:13 +08:00 |
|
|
|
f9edb5f1f7
|
fix(api): fix AttributeError on inbound deletion by accessing base.name instead of material_name
|
2026-03-25 11:02:32 +08:00 |
|
|
|
7421ef3231
|
fix(api): expose real 500 error stack trace and fix missing func import
|
2026-03-25 10:56:31 +08:00 |
|
|
|
ac7774e0e3
|
fix(api): gracefully handle integrity error on inbound record deletion
|
2026-03-25 10:48:43 +08:00 |
|
|
|
032479fe38
|
fix: capture and persist target object names for delete, outbound, and borrow operations in audit logs
|
2026-03-20 15:47:13 +08:00 |
|
|
|
b6e3ea76fa
|
fix: filter out invisible menus and clean up ghost nodes in permission tree
|
2026-03-20 13:12:16 +08:00 |
|
|
|
6c20233d45
|
fix: handle int type for JWT expires configuration to prevent 500 error on login
|
2026-03-20 10:43:29 +08:00 |
|
|
|
71e5f075d2
|
feat: implement composite debounced search with prepended select and wipe out duplicate root permission nodes
|
2026-03-20 10:26:45 +08:00 |
|
|
|
3bb3975022
|
fix: use .c to access SQLAlchemy subquery columns correctly
|
2026-03-20 10:15:11 +08:00 |
|
|
|
34629b432a
|
fix: correct SQLAlchemy join condition to resolve MaterialBase AttributeError
|
2026-03-20 10:06:22 +08:00 |
|
|
|
990399a408
|
feat: implement cross-table search and debounced dynamic search for borrow and return records
|
2026-03-20 09:58:42 +08:00 |
|
|
|
74089c7d7d
|
fix: clean orphaned permission tree nodes and enhance outbound search with material name/spec model
|
2026-03-20 09:53:32 +08:00 |
|
|
|
6336432a5c
|
refactor: restructure permission list to a tree format matching the sidebar navigation
|
2026-03-20 09:42:14 +08:00 |
|
|
|
1ad57da2a7
|
chore: remove legacy inventory stocktake menu and permission configs
|
2026-03-20 09:34:36 +08:00 |
|
|
|
b375cbfe25
|
fix: add stocktake and adjustment modules to role permission assignment UI
|
2026-03-20 09:31:33 +08:00 |
|
|
|
4223a95f10
|
feat: generate permission sql for stocktake modules and implement single-device login restriction
|
2026-03-20 09:11:54 +08:00 |
|
|
|
8db1015f99
|
fix: implement traffic-light color warning and correct ascending sort for overdue borrow records
|
2026-03-19 11:45:27 +08:00 |
|
|
|
b74464df6b
|
feat: add descending sort by return date and color-coded warning for impending returns
|
2026-03-19 11:40:38 +08:00 |
|
|
|
a32acad191
|
Merge remote-tracking branch 'origin/2.0权限管理' into 2.0权限管理
|
2026-03-19 10:50:47 +08:00 |
|
|
|
6596ce2458
|
fix: move keyword search filter to outer query to fix outerjoin bypass bug in material list
|
2026-03-19 10:43:09 +08:00 |
|
|
|
ebb7969807
|
fix: correct targeted search logic for material/stock list to prevent unrelated results
|
2026-03-19 09:49:21 +08:00 |
|
|
|
79d4a365e0
|
feat: add partial return support with returned_quantity tracking
|
2026-03-18 10:41:19 +08:00 |
|
|
|
11f5a1f51e
|
fix: patch validation bypass for mandatory inspection
|
2026-03-17 13:26:17 +08:00 |
|
|
|
c1c494893f
|
feat: implement dynamic inspection requirement logic based on material master data
|
2026-03-17 11:56:04 +08:00 |
|
|
|
dbe6997ca7
|
feat: add inventory descending as fallback sort for normal items and ensure list refresh after warning setup
|
2026-03-12 09:46:18 +08:00 |
|
|
|
58a519a62f
|
fix: refactor advanced filters to use WHERE for subquery columns and rewrite warning sort in pure order_by expressions
|
2026-03-12 09:40:10 +08:00 |
|
|
|
d8e86959b8
|
fix: 基础信息排序问题
|
2026-03-12 09:29:50 +08:00 |
|
|
|
3ecdb121d2
|
\"fix: remove list brackets from case() for SQLAlchemy 2.0 compatibility\"
|
2026-03-12 08:56:08 +08:00 |
|
|
|
7e403a87cd
|
\"fix: let frontend dictate warning sort flag and add SQL numeric casting\"
|
2026-03-12 08:53:09 +08:00 |
|
|
|
f0ec9a68d7
|
\"fix: use explicit labels and native text order_by to enforce strict warning logic\"
|
2026-03-11 17:35:27 +08:00 |
|
|
|
6bc2d2848e
|
\"fix: rewrite warning sort logic with proper case syntax and is_(True)\"
|
2026-03-11 17:28:50 +08:00 |
|
|
|
404577e6b5
|
\"fix: improve warning sort logic - red group by shortage desc, yellow group by safety distance asc\"
|
2026-03-11 17:17:10 +08:00 |
|
|
|
b1cc280a71
|
feat: 重构全局搜索框为复合条件选择,支持按名称、俗名、规格进行精准查杂
|
2026-03-11 13:37:52 +08:00 |
|
|
|
e224a07a47
|
feat: 升级预警批量设置交互,引入批量操作模式切换,提升界面整洁度与体验
|
2026-03-11 13:28:11 +08:00 |
|
|
|
d2d9abe201
|
全局审计日fix: 使用鸭子类型强制安全解包 SQLAlchemy Row 对象,彻底解决 to_dict 报错志
|
2026-03-11 13:11:16 +08:00 |
|
|
|
bc866e7670
|
fix: 修复标签打印功能中'打印份数'参数未生效的问题
|
2026-03-10 17:27:14 +08:00 |
|
|
|
e1e74e5983
|
feat: 增加后端初始化逻辑,自动向数据库注入审计日志菜单与默认权限
|
2026-03-10 12:24:34 +08:00 |
|
|
|
e4632086a1
|
feat: 重构鉴权系统为双Token无感刷新,并增加前端Token过期安全预判机制
|
2026-03-10 09:45:41 +08:00 |
|
|
|
5d813c24bc
|
feat: 采购/半成品/成品列表拆分SKU独立搜索框
|
2026-03-09 17:29:24 +08:00 |
|
|
|
4048447123
|
feat: 增加 BOM 另存为跨版本内容查重校验
|
2026-03-06 10:38:58 +08:00 |
|
|
|
86fa5ef458
|
修改启用查询问题
|
2026-03-06 09:36:34 +08:00 |
|
|
|
a5ffc200f5
|
入库记录只显示批次不显示序列号问题修复
|
2026-03-04 09:00:22 +08:00 |
|
|
|
e39c3fd030
|
筛选高级权限修改,基础信息启用禁用修改
|
2026-03-03 17:29:21 +08:00 |
|