zlwu and Cursor
a84f4fe903
docs: add quote list column stats design
...
Capture agreed UX and current-page aggregation rules for the
quote management list before implementation.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 15:48:05 +08:00
zlwu and Cursor
144e50f42d
refactor(crm): use shared settlement clause in contract print views
...
Wire ContractDetailDialog and detail page to settlementClause helpers so new settlement methods resolve fifth-clause text correctly.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 15:05:56 +08:00
zlwu and Cursor
477719c9a7
feat(crm): add frontend settlement clause helpers
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 15:03:44 +08:00
zlwu and Cursor
e1eeca0001
feat(crm): use settlement clause helper in save_template
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 15:03:05 +08:00
zlwu and Cursor
a73ee89f44
feat(crm): add settlement clause default text helper
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 15:01:47 +08:00
zlwu and Cursor
38a9f6f724
feat(crm): add settlement method dict options migration
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-16 14:59:57 +08:00
zlwu
34e5fcf0be
提交
2026-08-16 14:58:19 +08:00
zlwu and Cursor
4c23ff9f61
fix(duty): show duty schedule on portal home launcher
...
Register /duty frontend route module, add portal top-module order, and fix sys_menu as L1 directory with schedule leaf plus role grants.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-15 16:04:33 +08:00
zlwu and Cursor
a1321c145c
chore(duty): sync knowledge graph after duty schedule feature
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:15:22 +08:00
zlwu and Cursor
ba17a83df5
fix(duty): drop unused import in duty admin API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:14:59 +08:00
zlwu and Cursor
35e09fa09b
feat(duty): add web-admin calendar page and public H5 grab UI
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:14:05 +08:00
zlwu and Cursor
36fc7f286c
feat(duty): register admin and public duty APIs with encrypt exclude
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:12:40 +08:00
zlwu and Cursor
49cad98c84
feat(duty): add schemas and duty_schedule service with capacity tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:12:13 +08:00
zlwu and Cursor
f5ad2d7217
feat(duty): add SQLAlchemy models for duty schedule
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:10:36 +08:00
zlwu and Cursor
2502db7a02
fix(duty): add unique keys for duty_day date and slot shift_type
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:08:22 +08:00
zlwu and Cursor
931fd24671
chore(duty): add duty_day/slot/assignment tables and menu SQL
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-14 17:06:25 +08:00
zlwu
3f21007c18
提交
2026-08-12 21:40:55 +08:00
zlwu and Cursor
d00f5f6da3
docs(bx): mark negative invoice balance design as implemented pending QA
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 21:01:56 +08:00
zlwu and Cursor
5f290a8ef1
docs(bx): document that reimburse submit may leave invoice balance negative
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 21:01:30 +08:00
zlwu and Cursor
5983d31ab2
fix(bx-mobile): allow reimburse submit with insufficient invoice balance
...
Align soft tip and submit flow with web-admin; no longer block on wallet balance.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 21:00:31 +08:00
zlwu and Cursor
b53c1c4851
fix(web-admin): allow reimburse submit with insufficient invoice balance
...
Replace blocking tip with a soft warning and remove client-side submit guards.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 20:59:13 +08:00
zlwu and Cursor
99e4d4c69a
fix(bx): allow reimburse submit when invoice wallet balance is insufficient
...
Drop the hard balance check in debit_reimburse so occupancy can exceed uploaded invoices; balance may go negative until later top-ups.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 20:57:54 +08:00
zlwu and Cursor
4f75bc40b9
docs: add plan for allowing negative invoice balance on reimburse submit
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 20:56:43 +08:00
zlwu and Cursor
12e8cdaaf9
docs: allow negative invoice wallet balance on reimburse submit
...
Record the approved design to drop the hard balance gate while keeping full debit_reimburse occupancy.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-12 20:55:47 +08:00
zlwu
5fcdb03da1
提交
2026-08-11 07:54:28 +08:00
zlwu
a5210a6a9e
提交
2026-08-09 21:07:28 +08:00
zlwu and Cursor
b45ce2c32c
style(bx-mobile): polish reimburse invoice attachment picker layout
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 19:47:39 +08:00
zlwu and Cursor
0e8cefe89f
feat(bx-mobile): show attachment grid picker on reimburse apply
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 19:46:31 +08:00
zlwu and Cursor
9f92012e43
refactor(bx-mobile): use attachment-level invoice picks in reimburse apply logic
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 19:44:37 +08:00
zlwu
38383b35d9
提交
2026-08-09 19:42:32 +08:00
zlwu and Cursor
47ef575524
docs: add plan for bx-mobile reimburse invoice attachment picker
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 19:42:03 +08:00
zlwu and Cursor
2f87223236
docs: add bx-mobile reimburse invoice attachment picker design
...
Align mobile invoice selection with web-admin at attachment granularity;
include interactive HTML demo for the 3-column picker UX.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 19:38:40 +08:00
zlwu and Cursor
47a56e40fe
docs: mark bx-mobile shanxia2.0 adaptation complete
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:19:51 +08:00
zlwu and Cursor
96dbd3ccbc
feat(bx-mobile): complete P3 withdraw, proxy apply, history, and config pages
...
Align H5 with portal APIs for reimburse withdraw, approval history, applicant/date/title, and UUID-based expense/workflow config using portal user options.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:19:51 +08:00
zlwu and Cursor
9750e1f39d
feat(bx-mobile): show linked invoices on reimburse detail
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:13:58 +08:00
zlwu and Cursor
a8590db98b
feat(bx-mobile): add invoice wallet pages and bind reimburse apply to balance rules
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:13:42 +08:00
zlwu and Cursor
522d691050
fix(bx-mobile): align business pages with UUID ids for P1 portal API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:10:53 +08:00
zlwu and Cursor
8eb0ad14e7
feat(bx-mobile): render home entries from portal-filtered menu catalog
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:08:09 +08:00
zlwu and Cursor
a0eebfdbd3
feat(bx-mobile): guard routes by portal menuCodes and drop bx admin IAM pages
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:07:23 +08:00
zlwu and Cursor
a4f04ff297
feat(bx-mobile): finish portal login page and normalize current-user fields
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:06:43 +08:00
zlwu and Cursor
3f1faeae34
feat(bx-mobile): add bxClient and retarget business APIs to shanxia2.0
...
Remove legacy bx user/role/menu/auth APIs. Wire auth store to portal
temporarily so the app still typechecks; IAM admin pages use local stubs
until Task 6 drops their routes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:06:12 +08:00
zlwu and Cursor
c7a8930ad6
feat(bx-mobile): add portal HTTP client and RSA login API
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:03:58 +08:00
zlwu and Cursor
2840c7d1c0
feat(bx-mobile): add Web bx menuCode catalog and permission helpers
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:03:17 +08:00
zlwu and Cursor
39630d39e5
fix(bx-mobile): load VITE_API_PROXY_URL via loadEnv in vite config
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:01:40 +08:00
zlwu and Cursor
4d75713e15
chore(bx-mobile): point API proxy to shanxia2.0 backend and add jsencrypt
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:00:32 +08:00
zlwu
7a0f1554bd
提交
2026-08-09 15:59:22 +08:00
zlwu
f70dc26206
提交
2026-08-09 14:51:41 +08:00
zlwu and Cursor
ca6aca2b14
docs: add transport plan supplier/demander free-product design and plan.
...
Capture agreed rules for dual-party customers, multi-contract sides, ProductSelector-only products, and no historical migration before implementation.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-08 23:35:35 +08:00
zlwu
90ae136f38
提交
2026-08-08 23:14:40 +08:00
zlwu
fdf7d391a6
提交
2026-08-08 22:19:09 +08:00