Commit Graph

11 Commits

Author SHA1 Message Date
Pine 22674fbc63 市场目录支持 region 过滤(tags_json LIKE,如 yunnan-opc 专区标记) 2026-09-05 10:50:18 +08:00
Pine c12380cf8c 任务系统 v2/v3:状态机统一、v2 发布字段、接单/交付/验收/返工/结算/发票全链路 2026-09-05 03:40:58 +08:00
Pine a3cf1e0cd7 feat(market): 商品封面图 cover_url + 图标/封面上传接口
- MarketItem 新增 cover_url 字段(0051 迁移,已应用)
- service.create_item / _row 支持 cover_url
- ItemCreate/UpdateRequest 增加 cover_url;create/update 持久化
- 新增 POST /market/admin/items/upload-image(kind=icon|cover,
  OSS market/images/,5MB 限制,返回稳定相对路径)
- 数据库连接切换到新主机 47.108.226.213(.env 已更新)
2026-09-03 21:37:19 +08:00
Pine fef55e0fbb feat(market): 市场分类字典 + 商品标识 slug 规范化
市场分类字典(admin 端弹窗维护,已运行生效):
- 新增 MarketCategory 模型 + 0050 迁移 + seed
- categories.py 重构为数据库驱动(list/valid/CRUD)
- admin 分类管理端点:增删改/排序/启停;商品列表支持分类筛选

商品标识 slug 规范化(修复云超服市场安装下载链路):
- 新增 _normalize_slug:标识不含 '/' 自动补 pineagents/ 前缀,
  避免单段 slug 在 owner/name 拆分时产生 undefined
- admin_create_item:创建时 slug 规范化
- admin_update_item:修复标识首次提交后再次编辑无效
  (此前 handler 未把 slug 传给 update_item)

配套:存量单段 slug 数据已批量规范化为 pineagents/<slug>
2026-09-03 20:28:44 +08:00
Pine 153b61bec6 fix(market): skill bundle 注入商品中文 display_name;_parse_skill_bundle 优先从 frontmatter 取 name 2026-09-02 15:06:31 +08:00
Pine 1a8cd4a3ee fix(market): 技能包名称解析——优先从 SKILL.md frontmatter 取 name,修复根目录 zip 名称变成 SKILL.md 的 bug 2026-09-02 14:50:19 +08:00
Pine a689fbdf7f fix(market): 详情接口浏览量+1,下载接口下载量+1(bump_stats 此前定义未调用) 2026-09-02 14:41:33 +08:00
Pine 5db03936f9 feat(pay): 支付支持代付——任意登录用户均可为订单支付,余额到账订单创建者
移除所有支付相关接口的订单归属校验和 opc_member 角色限制:

【算力充值 pay/service.py + pay/routers.py】
- build_pay_params: 移除 order.user_id != user.id 归属校验
- recharge_pay_params: require_roles(opc_member) → get_current_user(任意登录用户)
- recharge_status: 移除归属校验,角色放宽为任意登录用户

【市场购买 market/service.py + market/routers.py】
- build_pay_params: 移除归属校验
- query_status: 移除归属校验
- market_pay_params / market_order_status: 角色放宽为任意登录用户

【到账逻辑不变】
- process_paid_order 按订单 engine_user_id(订单创建者)加款
- 支付者 B 的 openid 仅用于 JSAPI 下单,不影响到账目标
- 审计日志 user_id 记录订单创建者

场景:A 用户 web 端创建充值订单 → B 用户小程序扫码 → B 登录并支付 → 余额到账 A 用户
2026-09-02 12:13:21 +08:00
Pine 86c6d24b17 fix(pay): 所有支付小程序码 page 路径修正为 pages-extra 子包路径
统一修正3处支付相关小程序码的 page 参数(之前误写为主包 pages/ 路径,
扫码后微信找不到页面→白屏):

- app/pay/service.py: 算力充值支付 → pages-extra/pay/index
- app/market/service.py: 市场购买支付 → pages-extra/pay/index
- app/training/main.py: 活动报名支付 → pages-extra/pay-qr/index

加上之前修复的 scan-login(auth.py + wechat.py 默认参数),
后端所有 get_wxacode 调用的 page 路径现已全部正确。
2026-09-02 11:47:34 +08:00
Pine 92d0c43419 fix(market): 修复安装包下载 500 并新增示例包上架 CLI
- service._row 补充 bundle_json/bundle_url 字段,修复 /market/items/{id}/bundle
  因 KeyError 返回 500(skill 内嵌 bundle / plugin-app OSS 直链均受影响)
- bundle_payload 适配已解析的 bundle_json dict
- 新增 scripts/dev/publish_market_examples.py:issue-token / publish / verify 三子命令,
  支持一键上架技能/插件/应用示例包(创建→上传→提交→审核→上架→精选)
2026-09-01 00:12:15 +08:00
Pine 04808aaf76 feat(market): 技能/插件/应用统一市场子应用(目录/管理/定价/购买/支付分发)+ 0037 迁移与权限种子 2026-08-31 23:41:59 +08:00