zlwu
b430e75a4b
提交
2026-09-26 11:59:39 +08:00
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
b15d1ddde3
chore: update graphify after wx-qr web login.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 20:22:42 +08:00
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
98531845e4
chore: update graphify after mini phone quick login.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 11:16:25 +08:00
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong and Cursor
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
wuzilong
86694f739f
提交
2026-09-17 09:10:10 +08:00
wuzilong and Cursor
5eb7b0b193
feat(backend): exchange miniprogram webview tickets for JWT sessions.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:11:36 +08:00
wuzilong and Cursor
98292cb914
fix(backend): consume webview tickets atomically and fail closed on Redis errors.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:07:45 +08:00
wuzilong and Cursor
62161e2905
feat(backend): add one-time Redis tickets for miniprogram webview login.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 16:03:18 +08:00
wuzilong
b7d0d4a4f8
提交
2026-09-14 11:57:58 +08:00
wuzilong and Cursor
7a45df9de7
chore: update graphify after bx apply withdraw
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 10:05:16 +08:00
wuzilong and Cursor
9d06e1830e
feat(bx): add advance apply withdraw API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 09:59:02 +08:00
wuzilong
8c96de2c0c
提交
2026-09-13 13:08:52 +08:00
wuzilong and Cursor
407dd76a6f
chore: update graphify after driver-plan feature
...
Refresh backend AST graph after new driver-plan service and routes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 11:46:03 +08:00
wuzilong and Cursor
57ca252f81
feat(pl): add JWT driver-plan routes for miniprogram
...
Expose history/detail/feedback/attachments under /transport/driver-plan
and exclude the path from API encryption middleware.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 11:44:24 +08:00
wuzilong and Cursor
1303fae1e0
feat(pl): add driver-plan service for personnel-scoped history
...
Resolve plans by linked driver/escort personnel and reuse public
driver page/feedback helpers for login-state miniprogram APIs.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 11:44:24 +08:00
wuzilong and Cursor
ca3062b0e2
feat(pl): optional escort selection on transport arrange
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 10:48:23 +08:00
wuzilong and Cursor
26b096ae38
feat(pl): bind sys user on personnel and snapshot selectedEscortId
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 10:37:11 +08:00
wuzilong and Cursor
0658090223
feat(pl): add personnel sys_user_id and transport escort columns
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 10:30:49 +08:00
wuzilong and Cursor
1c631ccd50
chore: update graphify after pound QR public link
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 09:45:42 +08:00
wuzilong and Cursor
10183dabc2
feat(backend): expose pound QR items on driver transport page
...
Enrich inventory links with business type/partner and attach
poundQrcodeItems for the public driver footer button.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 09:29:03 +08:00
wuzilong and Cursor
87ed40512c
feat(backend): add public pound-qr endpoint by inventory id
...
Expose a read-only payload for the shared weighbridge QR card without auth.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 09:24:09 +08:00
wuzilong and Cursor
d7981eda17
chore: update graphify after deliveryTimes list column
...
Keep backend and frontend knowledge graphs in sync with the new
plan delivery time filter and list UI wiring.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 21:31:45 +08:00
wuzilong and Cursor
204b5f48c8
feat(pl): wire deliveryTimeFrom/To through plan list and export
...
Contract-gap list/export share the same stop-date EXISTS filter.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 21:23:31 +08:00
wuzilong and Cursor
0e3df1f39d
feat(pl): expose deliveryTimes on plan list and contract-gap schemas
...
Populate from delivery stops during attach/gap row build.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 21:20:55 +08:00
wuzilong and Cursor
9c5a1cfb8e
feat(pl): aggregate unique delivery dates from stop rows
...
Provide YYYY-MM-DD dedupe helper for plan list deliveryTimes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 21:08:54 +08:00
wuzilong and Cursor
efe8aed409
feat(pl): filter plans by delivery-stop date range
...
Add EXISTS on pl_plan_delivery.delivery_time for list column filters.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 21:07:23 +08:00
wuzilong
2dadd34981
提交
2026-09-12 19:42:20 +08:00
wuzilong and Cursor
9968fc72a3
docs: add ETC-only vehicle recharge design/plan and refresh graphify
...
Persist the approved cutover spec and implementation plan; sync graphs after the ETC-only changes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 08:50:12 +08:00
wuzilong and Cursor
62d46d6e57
chore: update graphify after ETC-only vehicle recharge cutover
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 08:48:14 +08:00
wuzilong and Cursor
27d69f1af9
fix(pl): hide non-ETC vehicle recharge rows in list and get APIs
...
Force etc on reads so historical fuel data stays in DB but out of this module.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 08:45:36 +08:00
wuzilong and Cursor
542ecc63e7
fix(pl): allow only etc recharge type in vehicle recharge schemas
...
Reject fuel writes so the shared module can be narrowed to ETC-only.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-12 08:43:49 +08:00
wuzilong
8e87c7d576
提交
2026-09-11 21:19:52 +08:00