Commit Graph
416 Commits
Author SHA1 Message Date
wuzilongandCursor c4ee338c3a feat(pl): wire stockRole into plan list, export, and facets
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 23:29:00 +08:00
wuzilongandCursor 63f19d2672 feat(pl): add stockRole filter for plan list by stop customer
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 23:25:44 +08:00
wuzilongandCursor 6a8cd90b98 feat: cascade column facet options by current list context
Make dynamic column-facet values respect other active filters (Excel-style), with backend facet context helpers, list-page wiring, slip print/sidebar fixes, and refreshed graphify graphs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-11 22:04:20 +08:00
wuzilong 9643b779a9 提交 2026-10-10 21:12:05 +08:00
wuzilongandCursor 811e6a129f feat(pl): allocate copy_seq_no on first driver plan share-to-group
Add ensure-copy-seq API and miniprogram clipboard prefix so each plan
gets a tenant-scoped fixed serial on first copy; cover allocation with
unit tests and refresh the backend graph.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 12:36:58 +08:00
wuzilongandCursor 5357df1cc2 feat(pl): add pl_plan.copy_seq_no for copy-to-group sequence
Persist a tenant-scoped fixed serial for driver-plan clipboard text;
include migration backfill by create_time.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 12:33:00 +08:00
wuzilong 8da59453b6 提交 2026-10-08 09:57:09 +08:00
wuzilong 318b934b86 提交 2026-10-06 17:55:20 +08:00
wuzilong 6abfb6e251 提交 2026-10-05 12:57:51 +08:00
zlwu c55f22a603 提交 2026-10-02 09:28:00 +08:00
zlwuandCursor 7f1f60e259 test: fix vehicle recharge submit fixture required fields
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 12:17:04 +08:00
zlwuandCursor 7a4ecc34e0 fix(api): commit mineVehicles helper required by recharge withdraw
withdraw commit imported should_restrict_mine_vehicles before the helper was on the branch.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 12:15:57 +08:00
zlwuandCursor c1113cc2ef test: assert current_node attribute on withdraw apply read model
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 12:09:19 +08:00
zlwuandCursor d8df5c47e2 feat(api): allow withdraw of in-approval vehicle recharge applies
Applicants can return an in-approval apply to draft while keeping prior approval rows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 12:08:48 +08:00
zlwuandCursor 388eb8cc7e test: add failing cases for vehicle recharge apply withdraw
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 12:06:12 +08:00
zlwu 4f364bc9a0 提交 2026-09-29 07:07:51 +08:00
zlwu c9fb39395c 提交 2026-09-28 10:47:42 +08:00
zlwuandCursor 37a7acf40d chore: update backend graphify after mineVehicles recharge apply
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:39:11 +08:00
zlwuandCursor 48aef9f233 feat(api): filter vehicle options by mineVehicles personnel
Limit GET /transport/vehicle to plates linked via pl_vehicle_personnel for the current user.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:36:28 +08:00
zlwuandCursor 0a9d5ba2ed feat(api): accept mineVehicles on vehicle-recharge-apply endpoints
Wire query param through list/get/create/update/submit/cancel for mini-program scope.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:35:59 +08:00
zlwuandCursor 0d2c5a2048 feat(pl): enforce mineVehicles write rules on recharge apply
Reject foreign plates on create and require own applicant for update/submit/cancel when mineVehicles is enabled.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:33:25 +08:00
zlwuandCursor ae1d01bf07 feat(pl): filter recharge applies by mineVehicles plates
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:25:58 +08:00
zlwuandCursor a903206dbe feat(pl): add helper for user personnel vehicle plates
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:23:31 +08:00
zlwuandCursor a3fbb92595 chore: update knowledge graphs after vehicle recharge workflow
Refresh AST graphs for backend/frontend and mark completed implementation plan steps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 21:08:05 +08:00
zlwuandCursor a1fbbac370 feat: expose current node name and action type on recharge apply read
Approval UI needs node display name and approve/disburse action without a separate node lookup.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 21:05:52 +08:00
zlwuandCursor f80a29fb8d feat: add vehicle recharge approval pending approve reject disburse
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 20:56:14 +08:00
zlwuandCursor ea8c2c0362 feat: add vehicle recharge apply submit and detail approvals
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 20:55:43 +08:00
zlwuandCursor bdd67d44d9 feat: add recharge workflow models and schema statuses
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 20:55:15 +08:00
zlwu b430e75a4b 提交 2026-09-26 11:59:39 +08:00
wuzilongandCursor 65d904fff1 chore: update graphify after archive zip export.
Refresh backend and web-admin graphs after plan-archive ZIP export changes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:47:41 +08:00
wuzilongandCursor d5c2e1f1a4 feat(pl): wire archive_zip export format on plan export API.
Reuse archive row building and attach document plus hazard-cert files into a zip response.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:46:52 +08:00
wuzilongandCursor 81e52477de feat(pl): build archive export zip with relative hyperlinks.
Pack archive xlsx plus attachment files under 附件/, with HYPERLINK columns on each plan's first row.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:46:15 +08:00
wuzilongandCursor 7af4d7ac7e feat(pl): collect hazard certs for archive zip export.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:42:44 +08:00
wuzilongandCursor d68a0ef0bd fix(pl): fix FakePlan id for planId export field.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:42:05 +08:00
wuzilongandCursor e9ffa5d042 feat(pl): add archive zip naming helpers and planId on export rows.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 12:40:04 +08:00
wuzilong c270d14057 提交 2026-09-23 12:03:07 +08:00
wuzilongandCursor b15d1ddde3 chore: update graphify after wx-qr web login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 20:22:42 +08:00
wuzilongandCursor 98e31c88b2 feat(api): confirm web QR login from mini program phone auth.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 20:17:14 +08:00
wuzilongandCursor ec0045d5bf feat(api): add web wx-qr create and status endpoints.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 20:16:15 +08:00
wuzilongandCursor 22634330d5 feat(wechat): generate unlimited mini program codes for web QR login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 20:15:15 +08:00
wuzilongandCursor 1e7c8bde3b test(auth): force in-memory backend for wx-qr session unit tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 20:14:35 +08:00
wuzilongandCursor 56a3311c45 feat(auth): add wx-qr session state machine for web login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 19:55:00 +08:00
wuzilongandCursor 7f2b5d06c1 chore: add wx-qr login config and encrypt exclude paths.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 18:15:27 +08:00
wuzilong 1ba1f38321 提交 2026-09-18 12:01:13 +08:00
wuzilongandCursor 98531845e4 chore: update graphify after mini phone quick login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:16:25 +08:00
wuzilongandCursor 713aa700ae feat(api): add mini wechat-login and share JWT issuance with web login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:14:18 +08:00
wuzilongandCursor 7ccd1f553e feat(backend): resolve wechat login user by phone and bind openid.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:12:03 +08:00
wuzilongandCursor 3d003e8d37 feat(backend): add wechat mini auth helpers and user phone lookups.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:09:04 +08:00
wuzilongandCursor 7e7f9226cf feat(config): add WECHAT_MP credentials for mini wechat login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:06:54 +08:00
wuzilongandCursor 2ce31b903f feat(db): add sys_user wx_openid columns for mini phone login.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 11:05:22 +08:00