zlwu
eccefc6650
提交
2026-08-01 22:49:11 +08:00
zlwu
e59b2aa6cb
提交
2026-08-01 17:29:37 +08:00
zlwu and Cursor
06956b742b
feat(crm): add tenant-level contract approver setting with submit prefill
...
Mirror the quote approver setting so contract submit dialogs can prefill ordered approvers from a tenant config page while remaining editable.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:37:23 +08:00
zlwu and Cursor
ce75576fb0
docs: mark quote approver setting design implemented
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:09:13 +08:00
zlwu and Cursor
98f33644f1
feat(web-admin): prefill quote submit approvers from tenant setting
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:06:59 +08:00
zlwu and Cursor
209f5cb7a8
feat(web-admin): add quote approver setting page and route
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:05:55 +08:00
zlwu and Cursor
a1e26f044d
feat(web-admin): add quote approver setting API client
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:04:29 +08:00
zlwu and Cursor
8646f33587
feat(crm): expose quote approver setting get/save APIs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:04:07 +08:00
zlwu and Cursor
ffbb5e36b3
feat(crm): implement quote approver setting model and upsert CRUD
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:03:35 +08:00
zlwu and Cursor
82e648de9f
feat(crm): add quote approver setting table and menu SQL
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 13:02:47 +08:00
zlwu and Cursor
3aafae6a9d
feat(crm): add quote approver setting id helpers and unit tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 12:54:29 +08:00
zlwu and Cursor
10c3c5470c
chore: sync local PL/CRM/BX and migration work to new Gogs host
...
Bundle pending backend/web-admin feature updates, data-migration scripts,
and related docs so the V1.5 branch on the Tencent Cloud Gogs matches the
current workspace (excluding local secrets).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-01 09:19:21 +08:00
zlwu and Cursor
5a9abfdd5d
fix(pl): keep multi-brand site feedback when plan product row is stale
...
Persist submitted brand qtys even if plan brand_mode lookup fails; resolve soft-deleted plan products for brand metadata instead of substituting another product; stop seeding all actual qty onto the first brand option.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 07:06:41 +08:00
zlwu and Cursor
d1daedc17d
docs: update brand qty demo copy for required-as-preference
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:58:06 +08:00
zlwu and Cursor
e6a1c1db2b
fix(web-admin): align site/driver public brand qty with preference semantics
...
Ensure required mode keeps full brand options and multi-select entry.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:58:06 +08:00
zlwu and Cursor
c39c0e2760
fix(web-admin): driver feedback dialog multi-brand for required preference
...
Load full brand options and preselect preferred brand without locking.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:58:06 +08:00
zlwu and Cursor
07cadc9025
fix(web-admin): archive dialog loads all brands for required preference
...
Preselect preferred brand but allow multi-brand qty entry like any mode.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:58:06 +08:00
zlwu and Cursor
b28cf4a335
fix(web-admin): allow multi-brand chips when plan brand is required
...
Treat required like any in BrandQtyChipsField so preference brand is not locked.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:54:43 +08:00
zlwu and Cursor
156e4b63e5
fix(pl): treat required brand as preference in brand qty validation
...
Allow multi-brand feedback/archive rows when plan brandMode is required; only enforce sum equals actual qty.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:52:49 +08:00
zlwu and Cursor
b3efbe8781
docs: specify transport plan required brand as preference only
...
Document that feedback/archive brand qty entry uses any-mode multi-select with preferred-brand preselect, removing the single-brand hard lock.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 06:50:21 +08:00
zlwu and Cursor
6dcc279cc9
test(pl): verify feedback brand qty and refresh graphify
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:40:05 +08:00
zlwu and Cursor
aea4caed5b
feat(web-admin): align archive brand qty entry with chips UI
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:37:00 +08:00
zlwu and Cursor
5c323f32c2
feat(web-admin): show brand qty on transport tab and highlight supplement actions
...
Expose driver per-product feedback on transport read, display site/driver
brand summaries in the transport tab, move supplement buttons to section
headers with primary highlight, and wire brand chips into IO/driver edit.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:35:42 +08:00
zlwu and Cursor
b7236329c2
feat(web-admin): driver feedback dialog brand qty entry
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:31:22 +08:00
zlwu and Cursor
2a215b2e1f
feat(pl): driver public feedback by product and brand qty
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:29:21 +08:00
zlwu and Cursor
0667e8d77b
fix(web-admin): bind branded site actual qty to chip sum on load
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:25:03 +08:00
zlwu and Cursor
6dde2cec07
feat(web-admin): site public page brand qty chips entry
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:23:37 +08:00
zlwu and Cursor
006ed6586c
feat(pl): site io-order feedback accepts and stores brand qtys
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:17:50 +08:00
zlwu and Cursor
b0346e688d
feat(pl): add feedback brand qty persist helpers and tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:14:54 +08:00
zlwu and Cursor
79f87d39a7
feat(pl): add ORM models for feedback brand qty tables
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:11:51 +08:00
zlwu and Cursor
5538fa3152
fix(db): drop unrelated shanxia2.0.sql diffs from brand qty migrate
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:10:07 +08:00
zlwu and Cursor
b658591818
chore(db): add feedback brand qty tables for site and driver
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:07:53 +08:00
zlwu and Cursor
fb76940d15
docs: add implementation plan for feedback brand qty
...
Break down site/driver brand quantity feedback into DDL, APIs,
shared chips UI, view-tab layout, and archive alignment tasks.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:02:46 +08:00
zlwu and Cursor
4e6e06a603
docs: add transport feedback brand qty design and demo
...
Capture the approved design for site/driver brand quantity feedback,
independent storage from archive, and view-tab/button layout changes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-31 05:00:36 +08:00
zlwu and Cursor
dd4aa734ee
chore: sync remaining local plan, form mapping and graphify cache
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 10:05:03 +08:00
zlwu and Cursor
44a57b86ca
chore: update graphify after brand/alias inventory work
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:38:07 +08:00
zlwu and Cursor
dd31fb53b6
chore(db): add optional script to split brand from product names
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:36:32 +08:00
zlwu and Cursor
7aa995a9d6
feat(pl): show archive brand breakdown on inbound/outbound orders
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:36:15 +08:00
zlwu and Cursor
e7d7e731ba
feat(web-admin): show brand on inventory ledger and transactions
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:35:42 +08:00
zlwu and Cursor
38b1613fee
feat(web-admin): enter archive inbound/outbound qty by brand
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:35:05 +08:00
zlwu and Cursor
cc2edfc61f
feat(pl): post brand-level inventory on plan archive
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:34:07 +08:00
zlwu and Cursor
32533948e3
feat(pl): validate and persist archive quantities by brand
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:32:36 +08:00
zlwu and Cursor
c35627d60a
feat(pl): show brand constraint on plan product rows
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:31:51 +08:00
zlwu and Cursor
cd33befa07
feat(web-admin): choose display name and brand constraint on quote/contract lines
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:30:38 +08:00
zlwu and Cursor
ba98108659
feat(crm): snapshot brand mode on quote and contract lines
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:23:50 +08:00
zlwu and Cursor
bcfadd23d9
feat(web-admin): edit product brands and aliases in product form
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:22:29 +08:00
zlwu and Cursor
bfa0d50597
feat(crm): persist product brands and aliases on create/update
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:21:31 +08:00
zlwu and Cursor
ea43150b8a
feat(models): add product brand/alias and plan brand qty models
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:18:32 +08:00
zlwu and Cursor
265a4ff4f7
chore(db): add product brand/alias and brand-level inventory schema
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-28 09:16:52 +08:00
zlwu and Cursor
a79dd9f61d
docs(crm): add product brand and alias implementation plan.
...
Break the approved design into sequenced tasks from DDL through archive inventory posting and UI.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-27 21:47:38 +08:00