zlwu
c55f22a603
提交
2026-10-02 09:28:00 +08:00
zlwu
c9fb39395c
提交
2026-09-28 10:47:42 +08:00
zlwu and Cursor
7b99040f9c
feat: add vehicle recharge approval workflow and pending UI
...
Wire configurable workflow config, approval todo with approve/reject/disburse, apply submit and history, and block disburse board for in-approval rows.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 21:05:57 +08:00
zlwu
b430e75a4b
提交
2026-09-26 11:59:39 +08:00
wuzilong and Cursor
0af792f535
feat(web-admin): add image preview transform helpers for fit/zoom.
...
Pure functions for AttachmentUploadField image preview rotate/zoom math, with a Node assert script.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-23 14:23:34 +08:00
wuzilong
c270d14057
提交
2026-09-23 12:03:07 +08:00
wuzilong
1ba1f38321
提交
2026-09-18 12:01:13 +08:00
wuzilong
86694f739f
提交
2026-09-17 09:10:10 +08:00
wuzilong and Cursor
92bb4bf0d0
feat(web-admin): add mp plan detail action splitter.
...
Cap the sticky footer at two primary actions and park the rest in a more sheet.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:31:43 +08:00
wuzilong and Cursor
b3ad19f6a9
feat(web-admin): enrich mp plan card with party and follower fields.
...
List cards need supplier→buyer and follow user to match the approved mobile demo.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:29:46 +08:00
wuzilong and Cursor
bf22c4b031
style(web-admin): format webview plan form and paste helpers.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:48:25 +08:00
wuzilong and Cursor
866a87f747
feat(web-admin): add mobile print preview for transport plan slips.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:47:12 +08:00
wuzilong and Cursor
1a5aa1c934
feat(web-admin): add mobile plan detail and shared action guards.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:25:09 +08:00
wuzilong and Cursor
17edd7016f
feat(web-admin): add mobile card list for transport plans in webview.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:25:09 +08:00
wuzilong and Cursor
c0721786ff
feat(web-admin): skip desktop chrome and login page inside mp webview routes.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:15:08 +08:00
wuzilong and Cursor
a564bfe733
feat(web-admin): add apply attachment display name helper
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 11:30:16 +08:00
wuzilong
8c96de2c0c
提交
2026-09-13 13:08:52 +08:00
wuzilong and Cursor
ab3a90c3f5
feat(web-admin): append pound QR links in copy-to-driver text
...
Include multi-line public pound QR URLs after the driver link when dibang slips exist.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 09:41:41 +08:00
wuzilong
8e87c7d576
提交
2026-09-11 21:19:52 +08:00
wuzilong and Cursor
39161e43e4
feat(web-admin): plan form package UI keyed by product and package spec
...
Contract-bound stop products use package options from the contract, arrange-qty
cache/API include packageSpec, and save validates required package selections.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-10 18:06:52 +08:00
wuzilong
05559def40
提交
2026-09-09 13:03:02 +08:00
wuzilong and Cursor
55abe614f8
feat(pl): add personnel cert zip packing and shared pack core.
...
Extract packAndSaveCertZip for reuse; keep vehicle API; name folders with _2 on collisions.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 20:38:43 +08:00
wuzilong and Cursor
31ef9d4053
feat(pl): pack selected vehicle cert attachments into zip.
...
Add JSZip builder with concurrency, injectable fetch/save for tests, and multi-vehicle folders.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 20:25:27 +08:00
wuzilong and Cursor
e07af251c0
feat(web-admin): add fetchAttachmentBlob for zip packing.
...
Reuse attachment download-url flow to load file bytes without triggering anchor download.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 20:21:54 +08:00
wuzilong and Cursor
8d3062a5af
feat(pl): add vehicle cert zip naming and collect helpers.
...
Pure functions for toolbar batch ZIP: plate folders, 主·/挂· labels, and collision-safe paths.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 20:19:50 +08:00
zlwu
7f05162fd1
提交
2026-09-06 20:44:56 +08:00
zlwu and Cursor
c90ff7c419
feat(web-admin): submit stable load/delivery/product ids on plan save.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 18:31:59 +08:00
zlwu and Cursor
f09399f5f0
fix(web-admin): prevent blank Word export from broken seal img tags
...
Self-closing slash before style produced invalid HTML that caused html-to-docx to emit an empty document.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 15:38:54 +08:00
zlwu and Cursor
0dc7ce0de8
fix(web-admin): polish Word header layout and floating seals
...
Use float text rows for header meta without table borders; rewrite seal images to float over party fields while keeping title underlines.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 15:33:47 +08:00
zlwu and Cursor
da2f36af7f
fix(web-admin): keep contract header meta side-by-side in Word export
...
Convert flex+absolute rows (供方/合同编号, 需方/签订地点) into borderless two-column tables before html-to-docx.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 15:26:31 +08:00
zlwu and Cursor
57c2a37171
fix(web-admin): drop Word watermark and keep party columns side-by-side
...
Word export no longer injects watermarks; convert the flex 供方/需方 footer into a two-cell table so html-to-docx preserves left-right layout.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 15:21:10 +08:00
zlwu and Cursor
f872333df6
fix(web-admin): polyfill Buffer/global for contract Word export in Vite
...
html-to-docx still reads Node globals after Vite rebundles; inject buffer polyfill, map global to globalThis, and alias the package to the browser build.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 15:06:20 +08:00
zlwu and Cursor
8bbc716d17
fix(web-admin): use html-to-docx browser build and inline images for Word export
...
Vite was resolving the Node ESM entry which needs Buffer/global; switch to the browser bundle and pre-convert images to data URLs so seals and watermarks embed.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 14:59:58 +08:00
zlwu and Cursor
deefdf7bb4
fix(web-admin): resolve html-to-docx default import interop for Word export
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 14:52:03 +08:00
zlwu and Cursor
b078245fbc
feat(web-admin): generate contract DOCX blob from prepared HTML
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 14:42:44 +08:00
zlwu and Cursor
17b42dc06c
feat(web-admin): add contract HTML prep helpers for Word export
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-05 14:38:23 +08:00
zlwu and Cursor
01946dde8e
feat(web-admin): add arranged tab to transport plan list filters
...
Insert「已安排」after「待安排」in PL_PLAN_LIST_TABS and map it to followStatus=arranged.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-04 17:34:34 +08:00
zlwu
dd3bb3cf06
提交
2026-09-03 15:54:34 +08:00
zlwu
54a1ba0c5c
提交
2026-09-03 13:50:25 +08:00
zlwu and Cursor
86e668920c
feat(web-admin): add resolveAddressNotesFill for address library notes
...
Encode empty-only fill rule for load/delivery notes when selecting an address.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-02 11:57:27 +08:00
zlwu and Cursor
3c7e3c69c5
feat(web-admin): add plan draft save UI and drafting follow-status filters
...
Rename pending tab to 待安排/草稿, default-select drafting, and add 暂存 with saveMode.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-02 11:42:23 +08:00
zlwu
1dfcc66d2c
提交
2026-09-02 08:20:52 +08:00
zlwu
0e8f244bc3
提交
2026-09-01 13:51:32 +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
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
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
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
63a1209620
提交
2026-08-30 09:30:02 +08:00
zlwu
16986f443e
提交
2026-08-27 19:38:12 +08:00