Commit Graph
337 Commits
Author SHA1 Message Date
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 591736f11f feat(web-admin): add Generate Word on contract detail print dialog
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 14:50:00 +08:00
zlwuandCursor 9ac37d1196 feat(web-admin): add Generate Word on contract print dialog
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 14:44:36 +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 e2b676121a chore(web-admin): add @turbodocx/html-to-docx for contract Word export
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 14:35:23 +08:00
zlwuandCursor f43ef91d70 chore(web-admin): update frontend knowledge graph after plan tab sync
Refresh graphify outputs after handlePlanTypeTabChange arranged tab wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 17:36:46 +08:00
zlwuandCursor 75d60c5b75 feat(web-admin): sync followStatus when switching to arranged plan tab
Mirror pending_arrange behavior so the arranged tab forces followStatus filter to arranged.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 17:36:34 +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
zlwuandCursor 7a5b8c3d96 chore: update graphify after plan-archive price permission
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 16:48:28 +08:00
zlwuandCursor b92418fa4a feat(web-admin): gate archive actions and price columns by menu codes
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 16:34:49 +08:00
zlwuandCursor af0ae031a5 feat(web-admin): split archive qty vs price display flags
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 16:33:04 +08:00
zlwu dd3bb3cf06 提交 2026-09-03 15:54:34 +08:00
zlwu 54a1ba0c5c 提交 2026-09-03 13:50:25 +08:00
zlwuandCursor 67d37a1f0e chore: update graphify after transport address notes
Mark the notes-fill design as implemented and refresh backend/frontend graphs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 12:01:40 +08:00
zlwuandCursor d798ef55a7 feat(web-admin): manage transport address notes on library page
Expose notes in list, form, and view dialog for address master data.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 12:00:36 +08:00
zlwuandCursor bf5f6b66be feat(web-admin): edit address library notes in select dialog
Allow create/update of notes while picking an address for a plan stop.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 11:59:40 +08:00
zlwuandCursor 6021287c97 feat(web-admin): fill load/delivery notes from address when empty
Apply library notes only if the stop notes field is currently blank.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 11:59:29 +08:00
zlwuandCursor 9c3c53c705 feat(web-admin): pass address library notes through apply payload
Allow load/delivery sections to receive notes when an address is selected.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 11:59:09 +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 585b731846 chore: update graphify after plan draft-save feature
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 11:43:47 +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
zlwuandCursor 506cc7991a feat(web-admin): viewport-fill list height for system manage menus
Wire 系统信息 lists (tenant/dict/menu/dept/role/user/post/operlog) and
临时存放 CRM lists under 系统管理 to useListTableViewportHeight, with
onActivated recalc for keep-alive pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:42:20 +08:00
zlwuandCursor f457d5e106 feat(web-admin): viewport-fill list height for workflow menus
Wire 流程配置、待办/已办中心、我的申请 and 请假申请 lists to
useListTableViewportHeight for sticky headers and viewport-fill scrolling.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:32:30 +08:00
zlwuandCursor c577edc597 feat(web-admin): viewport-fill list height for pl transport menus
Wire 运输管理 list pages (plans, IO orders, freight panels, vehicles,
personnel, and related lists) to useListTableViewportHeight so table body
scrolls with sticky header and pager stays near the content bottom.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:27:17 +08:00
zlwuandCursor 11185f066a feat(web-admin): viewport-fill list height for db weighbridge menus
Wire 地磅计划 and 地磅出入库 lists to useListTableViewportHeight (stats +
pager below the table wrap), matching 地磅单管理. Dashboard has no list.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:17:33 +08:00
zlwuandCursor 7ed3f26f9c feat(web-admin): viewport-fill list height for bx reimbursement menus
Wire remaining报销管理列表(审批/发放/付款/发票夹/费用项/流程/视图)to
useListTableViewportHeight so table body scrolls with sticky header and
pager stays ~10px above the content viewport bottom.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:14:01 +08:00
zlwuandCursor 6f7461d009 feat(web-admin): viewport-fill list height for CRM menu pages
Wire contract, quote, customer, product, and price-letter lists to useListTableViewportHeight.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:00:02 +08:00
zlwuandCursor 7f8cd18b4d chore: update web-admin graphify after viewport scroll changes
Keep the frontend knowledge graph in sync with new composables and list wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 18:53:18 +08:00
zlwuandCursor 6e92bf49d8 fix(web-admin): recalc viewport table height on activate
Ensure order and weighing lists refresh table height after tab activation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 18:52:41 +08:00
zlwuandCursor fa48577a74 feat(web-admin): roll out viewport list height to more lists
Apply fill-viewport table height on demo product/order, bx mine, and db weighing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 18:51:59 +08:00
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
zlwuandCursor 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
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