jacy
491f03e825
merge(dev_jacy): 用户权益列 + 门店合同多图上传(需求1/2/3)
2026-08-12 22:50:33 +08:00
jacy
88053353ab
feat(ops,store,partner): 用户权益列 + 门店合同多图上传
...
- admin 用户列表新增剩余/已用/累计好客权益金额三列(benefitCoupon groupBy 聚合,排除 VOID)
- admin/partner 门店入驻合同支持多张照片与 PDF(CommonResource 多记录,复用 ENV 多图逻辑)
- 新增 contract-urls.util 归一化工具,向后兼容旧 contractUrl 字段并标记 deprecated
需求1/2/3
2026-08-12 22:48:02 +08:00
jacy
ceacce9ed5
merge(dev): admin contract/package/winery fixes
CI / verify (push) Has been cancelled
2026-08-10 20:31:09 +08:00
jacy
3913bf3bf3
merge(dev_jacy): admin contract/package/winery fixes
2026-08-10 20:31:05 +08:00
jacy
478291e2b3
fix(admin): contract preview, package audit detail, empty packages, winery status
...
Allow HQ to save stores with zero packages, preview contract images/PDFs, inspect package audit images/content, and show gray 无需打款 when winery payable is 0.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-10 20:30:55 +08:00
jacy
6754caf076
merge(dev): v3.4.16 partner UX and CS gate
CI / verify (push) Has been cancelled
2026-08-09 16:01:04 +08:00
jacy
92c3175acf
merge(dev_jacy): v3.4.16 partner UX and CS gate
2026-08-09 16:00:57 +08:00
jacy
46361ec713
feat(v3.4.16): partner UX, package pricing, CS gate, HQ list polish
...
Stop auto ST from validation_error; show package prices with right-aligned layout; partner store list status/filter and onboard CS QR gate; HQ store table truncation/fixed actions; expose CS config in wechat_mini settings; bind local servers for LAN.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 16:00:45 +08:00
jacy
5586ed90cd
merge(dev): store contactPhone separate from login
CI / verify (push) Has been cancelled
2026-08-09 07:50:53 +08:00
jacy
4cec5b1fe5
merge(dev_jacy): store contactPhone separate from login
2026-08-09 07:50:50 +08:00
jacy
07630c9046
feat(store): separate login phone from public contactPhone
...
Store.phone stays login/boss; contactPhone is C-end dial. Public store APIs keep phone compat via publicDial mapping.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-09 07:50:40 +08:00
jacy
4488b0c006
merge(dev): save packages with store 保存修改
CI / verify (push) Has been cancelled
2026-08-07 21:36:40 +08:00
jacy
99c74f20d2
merge(dev_jacy): save packages with store 保存修改
2026-08-07 21:36:38 +08:00
jacy
a598d1cd30
fix(admin): save packages when clicking store 保存修改
...
HQ users were uploading package images then clicking drawer 保存修改, which only persisted store media and never PUT packages.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 21:36:28 +08:00
jacy
da6a38daa4
merge(dev): fix batch image upload persistence
CI / verify (push) Has been cancelled
2026-08-07 21:13:45 +08:00
jacy
c5926bd593
merge(dev_jacy): fix batch image upload persistence
2026-08-07 21:13:42 +08:00
jacy
df546ff39f
fix(admin): keep all batch-uploaded images when saving packages
...
Serialize multi-file uploads and reload package list after save so imageUrls persist.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 21:13:31 +08:00
jacy
d6d4a77473
merge(dev): local API port 3010
CI / verify (push) Has been cancelled
2026-08-07 21:04:06 +08:00
jacy
0518976953
merge(dev_jacy): local API port 3010
2026-08-07 21:03:59 +08:00
jacy
8f83624ffe
chore(dev): move local API default port to 3010
...
Avoid conflict with another local service on 3000; align Vite proxies and docs.
2026-08-07 21:03:23 +08:00
jacy
7c6dae472c
merge(dev): persist package imageUrls on approve
CI / verify (push) Has been cancelled
2026-08-07 20:46:39 +08:00
jacy
209db59422
merge(dev_jacy): persist package imageUrls on approve
2026-08-07 20:46:36 +08:00
jacy
21d44026d9
fix(store): persist package imageUrls on audit approve
...
Ensure multi-image packages are written on approval and always returned as arrays from store detail.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 20:46:26 +08:00
jacy
3b192b0b88
merge(dev): store sortOrder and package gallery swipe
CI / verify (push) Has been cancelled
2026-08-07 19:58:53 +08:00
jacy
1b3a7f3a36
merge(dev_jacy): store sortOrder and package gallery swipe
2026-08-07 19:58:50 +08:00
jacy
34a1897c09
feat(store): add store sortOrder and swipeable package gallery
...
Enable HQ-controlled store list ordering and horizontal multi-image browsing on package detail.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 19:58:38 +08:00
jacy
36017a19b1
merge(dev): batch image upload for package/env/product
CI / verify (push) Has been cancelled
2026-08-07 19:41:12 +08:00
jacy
9c7550a1c4
merge(dev_jacy): batch image upload for package/env/product
2026-08-07 19:41:10 +08:00
jacy
fe1c6c8158
feat(admin): batch upload for package, store env, and product images
...
Allow multi-select uploads in HQ, partner, and shop for the three image galleries.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 19:40:59 +08:00
jacy
acc841bb21
merge(dev): v3.4.15 store media edit and package multi-image
CI / verify (push) Has been cancelled
2026-08-07 19:24:20 +08:00
jacy
61a99aeea9
merge(dev_jacy): v3.4.15 store media edit and package multi-image
2026-08-07 19:24:17 +08:00
jacy
76375eff83
feat(v3.4.15): HQ store media edit and package images up to 20
...
Allow HQ to replace/delete store photos; support multi-image packages with a 20-image cap.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 19:24:07 +08:00
jacy
713dce52b4
merge(dev): parse XFX multipart track callbacks
CI / verify (push) Has been cancelled
2026-08-07 19:08:15 +08:00
jacy
e41bf838d4
merge(dev_jacy): parse XFX multipart track callbacks
2026-08-07 19:08:12 +08:00
jacy
0692bebf07
fix(courier): parse XFX multipart/form-data track callbacks
...
Xiaofeixia posts multipart form fields; previously mis-read as urlencoded empty payload. Parse multipart text parts and map into order status transitions.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 19:08:03 +08:00
jacy
b19f875e7b
merge(dev): fix XFX callback build types
CI / verify (push) Has been cancelled
2026-08-07 18:58:56 +08:00
jacy
090002b6c0
merge(dev_jacy): fix XFX callback build types
2026-08-07 18:58:54 +08:00
jacy
8726cf14e3
fix(courier): cast IncomingMessage when skipping XFX body parsers
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 18:58:45 +08:00
jacy
7298b1a5d5
merge(dev): log XFX callback rawBody to third-party logs
CI / verify (push) Has been cancelled
2026-08-07 18:57:43 +08:00
jacy
1401f1dcd2
merge(dev_jacy): log XFX callback rawBody to third-party logs
2026-08-07 18:57:41 +08:00
jacy
155426b669
fix(courier): log XFX track callback rawBody and Content-Type
...
Capture raw request for courier track callbacks regardless of Content-Type and persist contentType/rawBody/query into log_third_party for empty-body diagnosis.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 18:57:31 +08:00
jacy
b4d6f2bd91
merge(dev): v3.4.14 test whitelist and SUPER_ADMIN fix
CI / verify (push) Has been cancelled
2026-08-07 15:46:47 +08:00
jacy
029c17347e
merge(dev_jacy): v3.4.14 test whitelist and SUPER_ADMIN fix
2026-08-07 15:46:40 +08:00
jacy
b626db5d84
feat(ops): add global test whitelist and exclude test accounts from settlement
...
Unify product/store visibility on HQ whitelist, mark isTest snapshots, and fix SUPER_ADMIN access for the new module.
2026-08-07 15:46:23 +08:00
jacy
d98ef6b808
merge(dev): v3.4.15 admin track and store list
CI / verify (push) Has been cancelled
2026-08-07 13:26:05 +08:00
jacy
d13a6ee3cd
merge(dev_jacy): v3.4.15 admin track and store list
2026-08-07 13:26:03 +08:00
jacy
10fa361983
feat(v3.4.15): admin delivery track drawer and mini-user store list polish
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 13:25:55 +08:00
jacy
1a615ffe93
merge(dev): harden iOS WeChat shop scan
CI / verify (push) Has been cancelled
2026-08-07 13:08:22 +08:00
jacy
0269802e59
merge(dev_jacy): harden iOS WeChat shop scan
2026-08-07 13:08:20 +08:00
jacy
e4e9eb2169
fix(h5-shop): harden iOS WeChat scan after login with hard nav and recover UI
...
Root cause is JSSDK entry-URL mismatch after SPA post-OAuth, not camera permission. Hard-navigate on iOS, keep OAuth query in sign URL, skip redundant bind OAuth, and prompt refresh/re-auth on failure.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-08-07 13:08:13 +08:00