zlwu and Cursor
aef6927181
feat(web-admin): viewport-fill scroll on reimburse apply list
...
Wire ListTable height to the shared composable and stop double-scroll on wraps.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-01 18:47:13 +08:00
zlwu and Cursor
597fca416d
feat(web-admin): use viewport table height on demo unit list
...
Pilot the fill-viewport list scroll pattern on the standard list template page.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-01 18:45:49 +08:00
zlwu and Cursor
55ac1ebbf6
feat(web-admin): add useListTableViewportHeight composable
...
Measure content viewport, table top, and pager to drive el-table height.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-01 18:45:22 +08:00
zlwu and Cursor
7d78f76129
feat(web-admin): add list table viewport height formula
...
Pure calc keeps pagination visible with a 10px bottom gap for main list scroll UX.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-01 18:45:15 +08:00
zlwu
0e8f244bc3
提交
2026-09-01 13:51:32 +08:00
zlwu
ba21c40058
提交
2026-08-31 20:53:46 +08:00
zlwu
69fa5b1fa8
提交
2026-08-31 08:28:36 +08:00
zlwu
19c5aaa8f5
提交
2026-08-30 18:33:13 +08:00
zlwu and Cursor
c8cec132bf
chore: update web-admin graphify after arrange-required product fields
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:54:29 +08:00
zlwu and Cursor
810c9aacae
feat(web-admin): mark arrange-required product fields with asterisk
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:53:47 +08:00
zlwu and Cursor
a4619a0788
feat(web-admin): block arrange when stop product required fields missing
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:53:06 +08:00
zlwu and Cursor
765a27779c
feat(pl): add arrange-required check for stop product fields
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:52:47 +08:00
zlwu and Cursor
79b33c6ba1
docs: add implementation plan for plan product arrange-required fields
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:51:10 +08:00
zlwu and Cursor
5fbb15611c
docs: add design for plan product fields required on arrange
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:49:27 +08:00
zlwu and Cursor
81b1cb9b1d
feat(pl): show available contract qty before plan qty in stop products
...
Add contract-product-arrange-qty API and form UI with green available qty,
red plan qty over-hint, and click-through dialog for usage and plan list.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 17:41:36 +08:00
zlwu and Cursor
3011cb9dae
feat(pl): hard-block over-limit contract qty on arrange and remind after success
...
Validate arranged+this plan qty against fixed contract product quantities on
transport arrange; return post-success remaining/framework cumulative reminders.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 16:47:21 +08:00
zlwu and Cursor
d326996976
docs: add transport plan contract quantity check design and demo
...
Capture hard-block on over-limit arrange and post-success remaining/framework reminders aligned with contract detail qty aggregation.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 15:59:53 +08:00
zlwu and Cursor
bbd82b7963
fix(web-admin): harden contract product validation and fetch race
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:09:37 +08:00
zlwu and Cursor
946a71b2e0
feat(web-admin): enforce single contract on plan-contract supplement save
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:05:15 +08:00
zlwu and Cursor
173e6cdf59
feat(web-admin): allow removing products on delivery stops
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:05:15 +08:00
zlwu and Cursor
8777173fb7
fix(web-admin): treat empty allowedProductIds as restricted mode
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:04:12 +08:00
zlwu and Cursor
9b8848ea8c
feat(web-admin): gate load products by selected contract
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:02:58 +08:00
zlwu and Cursor
bbab39e6b7
feat(web-admin): allow ProductSelector to restrict by product ids
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 11:00:05 +08:00
zlwu and Cursor
f18442be2e
feat(web-admin): make plan stop contract selector single-choice
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:58:14 +08:00
zlwu and Cursor
e9fd94de03
feat(web-admin): add helpers to filter plan products by contract
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:57:09 +08:00
zlwu and Cursor
1959394223
feat(pl): enforce single contract on stop-contracts and legacy side paths
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:55:00 +08:00
zlwu and Cursor
a6d900ee1f
fix(pl): harden load-contract product checks and tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:53:10 +08:00
zlwu and Cursor
fbcd27b213
feat(pl): require load products to belong to selected contract
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:49:36 +08:00
zlwu and Cursor
eb1bfc5732
feat(pl): enforce at most one contract per plan stop
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:46:41 +08:00
zlwu and Cursor
98db382e70
docs: add implementation plan for plan single-contract product rules
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:43:29 +08:00
zlwu and Cursor
051c6b6fea
docs: add design for plan single-contract and load products from contract
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-30 10:40:49 +08:00
zlwu
63a1209620
提交
2026-08-30 09:30:02 +08:00
zlwu
16986f443e
提交
2026-08-27 19:38:12 +08:00
zlwu
ebf006eeff
提交
2026-08-27 19:38:01 +08:00
zlwu
4611dbc2b2
提交
2026-08-27 14:23:18 +08:00
zlwu and Cursor
e56d227fe8
feat(pl): add customer stop pref service and unit tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-26 17:10:37 +08:00
zlwu and Cursor
bd682288f9
feat(pl): add PlCustomerStopPref model
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-26 17:06:59 +08:00
zlwu and Cursor
031f1d50f6
docs: add pl_customer_stop_pref migration for stop logistics memory
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-26 17:04:56 +08:00
zlwu
4222eaa593
提交
2026-08-26 11:10:40 +08:00
zlwu
dd1acdc787
提交
2026-08-23 18:42:27 +08:00
zlwu
b74d483682
提交
2026-08-23 09:47:38 +08:00
zlwu and Cursor
8dbb816d01
feat(pl): add blank slip print commands to plan list toolbar
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:29:26 +08:00
zlwu and Cursor
4de82c0805
feat(pl): expose openBlank on slip print dialogs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:28:11 +08:00
zlwu and Cursor
dfa033da02
feat(pl): add blank HTML renderer for subpack slips
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:28:10 +08:00
zlwu and Cursor
3ec188666c
feat(pl): add blank HTML renderers for inbound and delivery slips
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:23:50 +08:00
zlwu and Cursor
7ebe635fca
docs(pl): add implementation plan for blank slip print
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:21:47 +08:00
zlwu and Cursor
ed939097f0
docs(pl): add blank slip print design for transport plans
...
Document toolbar blank inbound/delivery/subpack print via openBlank(),
including empty fields, no seal on delivery blanks, and no selection required.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-22 11:18:31 +08:00
zlwu
16be6fa22d
提交
2026-08-22 09:08:05 +08:00
zlwu and Cursor
833544def3
fix(bx): include export_common helper and advance export endpoints
...
Previous reimbursement export commit depended on these files but they were left unstaged.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-21 18:34:35 +08:00
zlwu and Cursor
dbba755fd8
feat(bx): add list Excel export for reimbursement module pages
...
Wire ListExportDropdown on advance/reimburse/payment/expense/view/wallet lists, with matching POST export endpoints.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-21 18:34:22 +08:00