Commit Graph
139 Commits
Author SHA1 Message Date
zlwu c55f22a603 提交 2026-10-02 09:28:00 +08:00
zlwu c9fb39395c 提交 2026-09-28 10:47:42 +08:00
zlwuandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
wuzilongandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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