zlwu and Cursor
d676bfadd7
feat(backend): add customer-service dict list and ensure-on-write helpers.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 10:47:11 +08:00
zlwu and Cursor
eee70e417c
feat(backend): add models for customer-service and sample-level cert/insurance.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 10:45:54 +08:00
zlwu and Cursor
da35921f58
docs(sql): add sample-level storage cert and insurance with migrate-from-protocol.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 10:43:36 +08:00
zlwu and Cursor
8618141c2f
docs(sql): add customer-service tables and rename sample-info menu.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-13 10:42:34 +08:00
zlwu and Cursor
af992b5680
fix: drop 付款确认中 from sample payment progressStatus
...
Sample-level 缴费进度 is now only 待缴费 / 部分已缴 / 已缴清.
Transfer jfqrz still blocks canConfirm but no longer surfaces as progress.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:26:36 +08:00
zlwu and Cursor
cc0b217c89
feat(mobile-oa-h5): align transfer payStatus labels with 付款 wording
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:10:14 +08:00
zlwu and Cursor
727002761d
fix(backend): align pay-status user messages with 付款 wording
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:10:14 +08:00
zlwu and Cursor
a5bf4252b9
chore: rename payment-confirm menu to 缴费财务确认
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:10:14 +08:00
zlwu and Cursor
a6f56f3453
feat(web-admin): rename transfer pay statuses to 付款 wording
...
Use 已付款/付款确认中/付款完成 for payStatus; keep period money
labels 应缴费/已缴费/欠缴费 unchanged.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:10:13 +08:00
zlwu and Cursor
c71bb5a11c
fix(web-admin): align schedule paid/arrears with yjf-only rule
...
Period 已缴费 now counts only 付款完成 transfers, matching backend
summarize_period.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:10:13 +08:00
zlwu and Cursor
d2bb1e0fa1
test(backend): align market chase assertions with yjf-only paid
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:06:22 +08:00
zlwu and Cursor
b8b20dcebe
fix(backend): count period paid amount as yjf only
...
Align displayPaidAmount/arrears with business rule: 已缴费 excludes
已付款 and 付款确认中 transfers.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 18:01:06 +08:00
zlwu and Cursor
a1be31c694
docs: add payment status and paid-amount semantics implementation plan
...
Break the confirmed spec into TDD tasks covering backend yjf-only paid
amounts, web/mobile label renames, and menu SQL migration.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 17:50:54 +08:00
zlwu and Cursor
06a30ff658
docs: specify payment status labels and paid-amount semantics
...
Clarify transfer statuses (已付款/付款确认中/付款完成) vs period money
(应缴费/已缴费/欠缴费), with 已缴费 counting only yjf, and rename the
finance confirm menu.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 17:47:48 +08:00
zlwu and Cursor
97bf67c962
feat(mobile-oa-h5): rename freight unlink action to 取消运费
...
Also include the two-button freight config/cancel design spec and plan.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 14:07:51 +08:00
zlwu and Cursor
f659ec602e
feat(web-admin): align sample-freight page cancel UX with two-button rules
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 14:07:39 +08:00
zlwu and Cursor
8c0cbb8ab8
feat(web-admin): gate protocol freight config and unify cancel dialog
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 14:07:07 +08:00
zlwu and Cursor
75bae974e4
feat(web-admin): add shared freight unlink dialog
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 14:06:28 +08:00
zlwu and Cursor
d72e28959d
feat(web-admin): add shared freight unlink dialog
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 13:49:18 +08:00
zlwu and Cursor
ce9d836194
feat(web-admin): add freight config sample partition helper
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-12 13:46:54 +08:00
zlwu
55e321f266
docs: document the market card overflow fix.
2026-10-11 16:22:20 +08:00
zlwu
54ec8e1cd1
fix: serialize mobile presign conversion amounts.
2026-10-11 14:02:20 +08:00
zlwu
e0dc7f4cee
fix: preserve mobile presign decimal precision.
2026-10-11 13:50:47 +08:00
zlwu
f761c7021e
fix: decouple mobile market API contracts from page routes.
2026-10-11 13:34:03 +08:00
zlwu
06255d1e41
fix: harden mobile presign contracts and authorization.
2026-10-11 13:22:04 +08:00
zlwu
0927a514d2
chore: add the mobile market contract dependency closure.
2026-10-11 13:14:56 +08:00
zlwu
0c4a2408ee
docs: add the remaining mobile market parity demo.
2026-10-11 13:04:23 +08:00
zlwu
a3a2ffcce0
fix: isolate mobile presign action scopes and transfer locks.
2026-10-11 12:59:22 +08:00
zlwu
7a750e7e81
docs: plan the remaining mobile market parity demo.
2026-10-11 12:51:26 +08:00
zlwu
b28ed3e280
feat: add tested mobile presign contracts and form state.
2026-10-11 12:49:21 +08:00
zlwu
702ff0e074
docs: define the remaining mobile market parity demo design.
2026-10-11 12:49:19 +08:00
zlwu
81bda0cb79
fix: scope user organization labels to the current tenant.
2026-10-11 12:37:32 +08:00
zlwu
02d1e16036
fix: scope authentication roles to the current tenant.
2026-10-11 12:25:50 +08:00
zlwu
3f40caa1cd
fix: enforce atomic presign status and action transitions.
2026-10-11 12:06:22 +08:00
zlwu
337d31bbe8
feat: integrate required mobile market backend dependencies.
2026-10-11 12:00:52 +08:00
zlwu
7e930c77fd
feat: expose complete scoped presign actions to mobile clients.
2026-10-11 11:43:38 +08:00
zlwu
34bf9aa0dc
fix: make mobile presign transitions concurrency-safe.
2026-10-11 11:31:24 +08:00
zlwu
c5c7e42feb
fix: make mobile presign transitions concurrency-safe.
2026-10-11 11:17:06 +08:00
zlwu
8453c9c805
feat: enforce scoped presign deletion and transfer workflows on mobile.
2026-10-11 10:56:06 +08:00
zlwu
e8e278be86
docs: plan verified mobile presign parity implementation.
2026-10-11 10:45:55 +08:00
zlwu
99bd4749ea
docs: define mobile presign parity design for consistent market workflows.
2026-10-11 10:42:33 +08:00
zlwu
d20b9f5a20
docs: record backend graph verification constraints.
2026-10-11 10:25:58 +08:00
zlwu and Cursor
3018d05bc4
feat(mobile-h5): show non-prod env stripe on home
...
Render a short local/test banner above the green header
so the active APP_ENV is obvious before WeChat upload.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-11 10:09:21 +08:00
zlwu
7a6d804cfa
fix: honor order numbers in protocol workflow lists.
2026-10-11 10:08:40 +08:00
zlwu and Cursor
a47a7db7dc
feat(mobile-h5): export ENV_BANNER from APP_ENV
...
Add buildEnvBanner so the homepage can show a non-prod
stripe without hardcoding environment labels.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-11 10:01:42 +08:00
zlwu and Cursor
f5c999f633
docs: plan mobile-h5 non-prod env banner implementation
...
Break the approved homepage stripe into TDD tasks for
config mapping and the index page UI.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-11 10:00:33 +08:00
zlwu and Cursor
8c82f6a6dd
docs: add mobile-h5 non-prod env banner design
...
Capture the approved homepage top-stripe approach so local/test
builds are visually distinct before WeChat upload.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-11 09:59:51 +08:00
zlwu
28990e66be
test: align API crypto coverage with the AES-GCM protocol
2026-10-11 09:53:48 +08:00
zlwu
5a24f3b433
docs: plan the backend baseline test failure fixes.
2026-10-11 09:49:22 +08:00
zlwu
b2ea79710c
docs: describe how to resolve the existing backend test failures.
2026-10-11 09:47:52 +08:00