Commit Graph

397 Commits

Author SHA1 Message Date
XingQue
6ac32674a5 fix: 证书扫描含pub_key.pem;诊断明确缺少apiclient_cert.pem
服务器仅有私钥无商户证书时V3签名必失败,诊断输出操作指引。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:33:24 +08:00
XingQue
b5021ee07d fix: V3签名从私钥配对证书自动取序列号,xq忽略club错误私钥路径
SIGN_ERROR根因是私钥与序列号不是同一套证书;扫描匹配 apiclient_cert.pem。
新增 manage.py wx_v3_pay_diag 探针验签。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:31:14 +08:00
XingQue
2e419b5b6e fix: 星阙提现改用club库商户号1747846572,禁止回落旧1746545364
优先读 club 表;为空时用正确 mch/api_v3_key;并从 apiclient_cert.pem 自动读序列号。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:29:20 +08:00
XingQue
a28dafa6b7 fix: 补回 seed_club_xq 缺失的 CLUB_ID_DEFAULT 导入
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:23:57 +08:00
XingQue
ca67dfa863 fix: 星阙V3提现强制用全局证书配置,修复序列号与私钥不匹配
club表私钥路径/序列号错填会导致微信报证书序列号错误。
xq 提现改读 settings+写死序列号;build_authorization 双重兜底。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:23:31 +08:00
XingQue
65a40b5f09 fix: 临时写死微信V3商户证书序列号
覆盖 club 表与 settings 中的 cert_serial_no,统一使用 apiclient_key 对应序列号。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:17:47 +08:00
XingQue
d6237ccc7b fix: 收款不再预查微信,恢复早期「有package就调起」逻辑
接入多俱乐部后每次收款先查微信,V3查单失败会永久返回code12。
改为仅读本地:有package直接确认,无package立刻作废重试;转账失败返回明确错误。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 22:07:09 +08:00
XingQue
8bc0afb7f4 fix: 简化提现收款对账,避免永远卡在收款处理中
- 同一审核单只保留最新一条进行中打款,多次点击不再堆叠阻塞
- 有 package 时查单失败也直接调起微信确认
- 无 package 超过20秒即作废允许重试;转账/网络失败返回明确错误而非 code12

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 21:59:28 +08:00
XingQue
921941a36d fix: 无 package 的打款单不再长时间提示收款处理中
微信查单 not_found/失败且本地无 package 时立即允许重新发起收款。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 21:53:59 +08:00
XingQue
e1a3c07cef fix: 自动提现收款不再因查单失败卡死,失败可重试且防双笔
- 查单失败时优先用本地 package 直接调起微信确认收款
- 单次打款失败不关审核单(保持待收款6),允许同一审核单再次收款
- 跳过已失败打款记录;缩短 grace 至 2 分钟;去掉「核对状态」类死锁提示

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 21:48:00 +08:00
XingQue
49ad57bbb2 feat: club 表独立 mch_key 字段,后台明确区分 APIv2 收款与 APIv3 提现
- 新增 club.mch_key 列并迁移 config_json 历史数据,api_v3_key 保持独立
- club-manage 读写 mch_key;支付读 club.mch_key 优先,兼容 config_json 回落
- 提现查单返回商户号改读俱乐部 V3 配置;不影响其他业务逻辑

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 21:34:32 +08:00
XingQue
017d176790 fix: 星之界/星阙支付按俱乐部分别取 openid 与 AppID,启动静默刷新绑定
- resolve_club_payment_openid: xzj 回落 UserName 并 lazy 写绑定;xq 回落 OpenID;禁止跨俱乐部混用
- 统一 get_club_miniapp_appid;非 xq 禁止回落全局 AppID
- 新增 /jituan/auth/refresh-wx-bind;小程序有 token 时静默刷新 openid

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 20:57:30 +08:00
XingQue
5d3e4e32a2 fix: 小程序支付 AppID 与登录一致,登录覆盖过期 openid 绑定
- JSAPI 支付优先 club.wx_appid(与 jscode2session 一致,不再优先 pay_app_id)
- 登录时同一用户+俱乐部只保留最新 openid,清除旧绑定
- 支付仅读 user_wx_openid,彻底禁用 legacy OpenID/UserName 回落

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 20:52:56 +08:00
XingQue
f601541eb0 fix: 支付 openid 按俱乐部隔离,禁止跨小程序回落 legacy 字段
appid 已正确读 club 表,但 openid 在无 xq 绑定时会错误回落 UserName/OpenID(可能是星之界 openid),导致 appid 与 openid 不匹配。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 20:47:35 +08:00
XingQue
df416b8284 fix: 俱乐部配置接口区分 V2 小程序密钥与 APIv3 密钥
返回 pay_config 说明实际支付生效字段,避免后台仅展示 api_v3_key 造成误导。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 20:17:51 +08:00
XingQue
3660fa4cc7 fix: 会员支付打印微信完整错误并支持配置 V2 商户密钥
- 统一下单 XML 安全解析,日志输出 raw_response 与 err_code_des
- 下单前打印 club/appid/mch_id/key_source 诊断
- 后台 club-manage 可保存 config_json.mch_key(V2 MD5 密钥,非 api_v3_key)
- 未配 mch_key 时告警:回落全局密钥易导致签名错误

回退: git reset --hard backup-before-wx-v2-diag-20260710

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 20:05:00 +08:00
XingQue
e0fa112da6 Merge branch 'main' of https://git.gvsds.com/XingQue/Django
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	orders/views/payment.py
2026-07-10 19:40:07 +08:00
XingQue
42963a9ace fix: 星阙(xq)微信支付改读后台 club 表配置
移除 xq 强制回落 app_secrets 的逻辑,与星之界一致优先读 club 表;
字段为空时仍按项回落 settings,避免未配置时中断现网。
订单 fucha 查单同步使用 club 对应商户号。

回退: git reset --hard backup-before-xq-club-pay-20260710

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 19:39:15 +08:00
182f18da91 修复了主动点单能力 2026-07-10 15:50:43 +08:00
XingQue
4bda89d7c3 Merge branch 'main' of https://git.gvsds.com/XingQue/Django 2026-07-10 15:42:00 +08:00
XingQue
5e758a8a46 Merge branch 'main' of https://git.gvsds.com/XingQue/Django
Co-authored-by: Cursor <cursoragent@cursor.com>
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2026-07-10 15:39:37 +08:00
dcdcb7559e 修复了履约查单问题 2026-07-10 15:37:49 +08:00
5eebbfbff1 修复了罚单履约与回退机制 2026-07-10 15:18:45 +08:00
XingQue
4d1677a660 Merge branch 'main' of https://git.gvsds.com/XingQue/Django 2026-07-10 15:11:55 +08:00
XingQue
a3cf7803d8 chore: 拉取远程前保留本地改动
含 kefu_base 修改及 club_payment_channel 相关文件。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 15:11:53 +08:00
e123510185 Merge branch 'main' of https://git.gvsds.com/XingQue/Django 2026-07-10 14:04:32 +08:00
4652f3394a 修复了订单状态(所有支付接口)更新的问题 2026-07-10 14:03:42 +08:00
XingQue
2a99e2ea10 fix: 会员首次充值积分加满10分,后续充值不再加分
体验会员原仅加5分且正式会员会重复加分;改为首次充值会员(任意类型)补满至10分,此后任意会员充值不再增加积分。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 01:45:50 +08:00
XingQue
390202b9e4 fix: 资料页仅改头像不再误判为手机号认证
手机号认证流需同时带头像与 shoujihao_code 且无昵称;普通编辑只上传头像可正常保存。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 00:12:34 +08:00
XingQue
65dae4f3ab fix: 店铺二维码下载拒绝异常大文件
超过2MB的OSS对象视为路径错误,提示重新生成而非原样返回。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-10 00:04:21 +08:00
XingQue
df49631401 fix: 店铺二维码生成与下载接口
使用 stable access_token 并重试;规范化 OSS Key;下载接口返回 JSON 错误便于前端识别。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 23:51:00 +08:00
XingQue
90e187b65c chore: 补齐店铺管理权限码种子与SQL脚本
新增999a~999e与1199ab~1199abe权限定义,并提供可重复执行的查询/插入SQL。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 23:09:37 +08:00
XingQue
a92352f2b0 fix: 店铺管理接口超级管理员权限校验失效
改用 has_perm_code 替代 set(permissions) 交集判断,避免 _AllPermissions 被转成 set 后丢失超管放行能力。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 23:06:34 +08:00
XingQue
214b52badd feat: 新增后台复制店铺商品目录接口
支持按用户ID复制商品类型、专区与商品,OSS图片独立拷贝,并提供覆盖/补充两种模式。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 22:58:56 +08:00
581295443a 给所有支付接口加上了支付宝 2026-07-09 22:06:46 +08:00
XingQue
914e8c70f2 修复手机号认证完成后仍反复弹窗的问题
认证提交接口在仅上传头像时错误返回成功,检查接口也未兼容已有手机号的老数据。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 21:57:23 +08:00
7443fef6de 修复了认证上传失效问题 2026-07-09 21:09:39 +08:00
d734ce1dcc 测试 2026-07-09 21:05:09 +08:00
6c0a461a2b 修复了订单状态的验签问题 2026-07-09 20:49:26 +08:00
XingQue
f2295717ee Merge branch 'main' of https://git.gvsds.com/XingQue/Django 2026-07-09 20:42:11 +08:00
XingQue
fd7bcde9d9 fix: 店铺订单接口 PlatformOrderExt 查询字段修正
将 dianpu_id 改为模型字段 ShopID,修复 ddltj/ddlbhq 的 FieldError;统计聚合改用 id__in 匹配 Order 主键。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 20:39:05 +08:00
fb8d905fb0 修复了订单状态更新 BUG 2026-07-09 20:32:40 +08:00
f702c13422 修复了支付宝 fucha 逻辑 2026-07-09 20:28:12 +08:00
bf1088d0c5 修复二维码当面付问题 2026-07-09 20:06:01 +08:00
51edcf9fce 使用二维码进行支付宝交易 2026-07-09 19:50:40 +08:00
0826b0749d 修复了验签机制 2026-07-09 19:22:48 +08:00
aa3aa932fe 修复签名生成机制 2026-07-09 19:14:57 +08:00
5755730093 使用生产模式密钥 2026-07-09 18:06:24 +08:00
de3ff211a6 fixed: fucha接口硬编码了微信查询 2026-07-09 03:08:14 +08:00
e2b95edeb8 修复 URL 过长的问题 2026-07-09 02:53:52 +08:00