admin
|
c627fc9112
|
1
|
2026-08-17 13:46:35 +08:00 |
|
admin
|
7c9699b425
|
1
|
2026-08-17 13:38:41 +08:00 |
|
admin
|
ebf744a70e
|
1
|
2026-08-17 13:19:54 +08:00 |
|
admin
|
0e93c4f0a9
|
1
|
2026-08-17 13:19:15 +08:00 |
|
admin
|
2b7c1c790b
|
1
|
2026-08-04 17:28:40 +08:00 |
|
admin
|
09640304c6
|
1
|
2026-08-04 17:25:28 +08:00 |
|
admin
|
8cce5949be
|
1
|
2026-08-04 17:24:54 +08:00 |
|
admin
|
fc56b47406
|
server: web 静态托管完善 + 联调脚本 + 清理过期工具
- main.go/auth_middleware: web 静态目录托管与 history 回退、Chrome DevTools 探测处理
- 新增 scripts/build_web.sh(缓存判断构建 web)与 scripts/dev.sh(一键构建+启动)
- 删除已过时的 routes.sh(goframe 自动生成 api.json)与 split_db(数据库已拆分完毕)
- docs: 补充联调与测试规范(测试必须用真实用户数据 wenwu901/123456)
|
2026-08-04 17:15:37 +08:00 |
|
admin
|
5746d773de
|
1
|
2026-08-04 17:04:18 +08:00 |
|
admin
|
c7ebb5a205
|
1
|
2026-08-04 16:24:30 +08:00 |
|
admin
|
a6de9ebd12
|
Add 'server/' from commit 'e64421295fff83acbb6d6ab3d3b27f3ef8368f00'
git-subtree-dir: server
git-subtree-mainline: c4e617ada7
git-subtree-split: e64421295f
|
2026-08-04 15:02:35 +08:00 |
|
admin
|
c4e617ada7
|
加入 Gitea workflow(构建上下文指向 server/)并移除 server 内嵌仓库指针
|
2026-08-04 15:02:35 +08:00 |
|
admin
|
0678e50c6d
|
add Go 后端(server/)与 k8s 部署(deploy/)
|
2026-08-04 15:00:38 +08:00 |
|
admin
|
b53c57e02d
|
Add 'app/' from commit 'a11a66886941bba128d89c1124115e1b1c87a128'
git-subtree-dir: app
git-subtree-mainline: 6ebd902c6b
git-subtree-split: a11a668869
|
2026-08-04 14:59:55 +08:00 |
|
admin
|
6ebd902c6b
|
init unified repo
|
2026-08-04 14:59:54 +08:00 |
|
admin
|
e64421295f
|
1
|
2026-08-04 14:45:17 +08:00 |
|
admin
|
a11a668869
|
1
|
2026-08-03 12:14:50 +08:00 |
|
admin
|
4e556ea78a
|
1
|
2026-08-03 12:14:50 +08:00 |
|
admin
|
55aa30214c
|
1
|
2026-08-03 10:29:31 +08:00 |
|
admin
|
a338865025
|
1
|
2026-08-03 10:29:31 +08:00 |
|
admin
|
2535d8b9be
|
style: 生成按钮全宽加大,与表单控件对齐
|
2026-07-31 17:15:26 +08:00 |
|
admin
|
24559417ad
|
refactor: 穿搭页删标题、日期改为同排两个日期框
|
2026-07-31 17:13:49 +08:00 |
|
admin
|
2a07f7d052
|
feat: 穿搭页增加场景选择(通勤/约会/聚会/运动),生成时作为依据传参
|
2026-07-31 17:10:38 +08:00 |
|
admin
|
878468cd6d
|
feat: 生成接口支持场景(occasion,默认通勤,评分/LLM 依据)
|
2026-07-31 17:08:40 +08:00 |
|
admin
|
240f5d1114
|
refactor: 免费获取权益卡片移到入口列表与退出登录之间
|
2026-07-31 16:48:18 +08:00 |
|
 adminandClaude Opus 4.7
|
a4670de8ed
|
fix: 增加路由守卫(token 失效自动回登录页)
401 登出后当前页面不跳转,导致主框架停留在异常状态
(如会员状态一直加载);守卫在认证态变化时导航到 /login 或 /home
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:45:28 +08:00 |
|
 adminandClaude Opus 4.7
|
4828072299
|
refactor: 我的页删除用户卡片,会员卡直接置顶展示
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:40:08 +08:00 |
|
 adminandClaude Opus 4.7
|
8e38370b78
|
refactor: 会员中心并入我的 tab,删除独立会员中心页
- 我的 tab 直接展示:用户卡片 + 会员卡(开通/会员码/权益)+ 免费获取
权益(广告激励)+ 最近优惠 + 形象/衣橱入口 + 退出登录
- 删除 member_center_page.dart 与 /commercial 路由(内容全部迁移)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:38:17 +08:00 |
|
 adminandClaude Opus 4.7
|
01d8c72366
|
refactor: 我的页去除重复的会员中心入口 + 会员中心删除合作门店
- 我的页用户卡片已跳转会员中心,删除列表中的重复入口
- 会员中心页移除合作门店(门店筛选/列表/请求),保留会员卡/最近优惠/广告激励
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:34:34 +08:00 |
|
 adminandClaude Opus 4.7
|
cdfd8cff59
|
refactor: 穿搭页移除个人信息检查卡,职责收敛为任务参数
个人信息(照片/身形)归「我的形象」管理,穿搭页只保留
日期范围/地点/生成 + 已有方案列表
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:31:30 +08:00 |
|
 adminandClaude Opus 4.7
|
3e457b700a
|
refactor: 前端改 2 Tab(穿搭向导 + 我的入口)
- 主框架收敛为「穿搭」「我的」两个 tab:
- 穿搭 = 造型方案制作向导:个人信息完整性检查(4 类照片 +
身形参数,缺失引导去完善)+ 任务参数(日期范围/地点)+ 已有方案
- 我的 = 个人信息管理入口:用户卡片(昵称/会员状态)+ 我的形象 /
我的衣橱 / 会员中心入口 + 退出登录
- profile_page 移除退出登录(归「我的」页)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:25:36 +08:00 |
|
 adminandClaude Opus 4.7
|
30de9a71ce
|
fix: web 端会员页崩溃(dart:io 不可用)+ 嵌套 AppBar 标题重复
- member_center_page 改用 kIsWeb + defaultTargetPlatform 判断 iOS,
删 dart:io 依赖(web 访问 Platform 抛异常导致页面灰屏)
- HomePage 移除外层 AppBar,4 个 tab 页各自持有单一标题栏
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 16:11:08 +08:00 |
|
 adminandClaude Opus 4.7
|
5dda43a530
|
feat: 商业化 P1+P2 客户端(CPS 入口 + 方案驱动推荐 + 广告位 + 降级)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 15:59:21 +08:00 |
|
 adminandClaude Opus 4.7
|
f43f402381
|
feat: 3D 化身帧轮播客户端(frames_url 轮播 + 空值降级静态图)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 15:59:18 +08:00 |
|
 adminandClaude Opus 4.7
|
76100a7131
|
feat: CPS 引擎(三联盟适配器 + 方案驱动推荐 + 6 接口 + 降级)
美团/京东/淘宝联盟适配器(选品/搜索/转链,未配置 key 优雅降级),
CPS 四表五层骨架,方案驱动推荐零新增 LLM(发型/买同款/到店试穿/场合),
定时同步 + 点击日志 + 最近优惠;outfit_plan 容错迁移 occasion 列;
Dockerfile 补 mesa/nodejs 运行时。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 15:48:30 +08:00 |
|
admin
|
fd13efb9c0
|
feat: 3D 化身服务端预渲染(Node 渲染器 + 帧轮播 + 降级)
- Node 渲染器(three r162 + headless-gl + pngjs):gen-templates 程序化生成简化人体 GLB(6 脸 × 6 体 × 5 肤色),render.js 绕 Y 轴 36 帧 256x512 白底渲染
- agent/render.go:RenderAvatarFrames 帧目录缓存复用 + GLB 缺失自动生成 + 15 分钟超时;render.enabled/node_bin 配置,node_bin 路径缺失回退 PATH
- Build 异步化:写库 processing → goroutine 渲染 → done+frames_url / failed+error(客户端降级静态占位);修 BodyMeasurement 无记录时 Build 报错
- avatar_model 容错 ALTER 加 frames_url 列;AvatarGetRes 透传 frames_url
- TDD:renderJob 状态机测试(成功 done / 失败 failed 降级)
- 客户端 avatar_viewer 帧轮播(120ms × 36 帧,errorBuilder 降级占位),avatar_provider 解析 frames_url
- Dockerfile 双阶段:node:20-alpine 编译 gl 原生模块 + 运行时带 nodejs/libglvnd
|
2026-07-31 15:37:02 +08:00 |
|
admin
|
775995f3e8
|
refactor: 五层对齐 22 表 + 工具并入 agent/ + 支付适配器内联(路由零变更)
- service/dto/controller 各拆 18 文件,一表一文件;跨表编排留在 outfit_generation_task_service
- controller 共享 struct(outfit/member)保 /outfit/*、/member/* 前缀,路由零漂移(28 路径 diff 为空)
- 修复 4 个缺失 g.Meta handler:/user/profile、/avatar/get、/body-measurement/get、/hairstyle/list 从 ALL 收敛为 GET
- 工具包并入 agent/ 单包(weather/imagegen/avatar/scoring),NewCache 泛化 NewTTLCache
- 虎皮椒支付适配器内联 service/payment_order_service.go,member 服务拆 4 表文件
- 冒烟 21 路径全绿 + 客户端 dart analyze 零 error
|
2026-07-31 15:15:04 +08:00 |
|
admin
|
527f2e0d18
|
refactor: 虎皮棋适配器内联 payment_order_service + member 服务拆 4 表文件 + file_storage 移入 common
|
2026-07-31 15:08:36 +08:00 |
|
admin
|
033860d571
|
refactor: 工具包并入 agent/(weather/imagegen/avatar/scoring,NewCache 泛化为 NewTTLCache)
|
2026-07-31 15:05:35 +08:00 |
|
admin
|
06c0e8ba31
|
feat: 支付页(系统浏览器收银台 + 2s 轮询确认)
|
2026-07-31 13:55:59 +08:00 |
|
admin
|
f3d91cd548
|
feat: 会员中心页(会员卡/套餐弹层/广告激励/合作门店)
|
2026-07-31 13:55:00 +08:00 |
|
admin
|
38cf41d44d
|
feat: 会员 provider(状态/套餐/下单/轮询/领奖)
|
2026-07-31 13:50:02 +08:00 |
|
admin
|
e20839b695
|
chore: 更新平台插件注册(url_launcher)
|
2026-07-31 13:47:24 +08:00 |
|
admin
|
ef42602c7c
|
feat: 广告服务抽象(Mock 激励视频)+ url_launcher 依赖
|
2026-07-31 13:47:11 +08:00 |
|
admin
|
11459f7342
|
fix: 冒烟修复(支付响应解析/会员空指针/幂等回调返回 success)
|
2026-07-31 13:45:57 +08:00 |
|
admin
|
85be565adb
|
feat: 效果图限额支持 VIP 不限与广告加次
|
2026-07-31 13:38:52 +08:00 |
|
 adminandClaude Opus 4.7
|
b35e1f4787
|
fix: 会员状态/订单支付时间显示(gtime.Format 需用 Y-m-d H:i:s 令牌,原输出字面量)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 13:37:59 +08:00 |
|
 adminandClaude Opus 4.7
|
8a47609159
|
feat: 广告激励(效果图加次/体验会员,服务端限频防刷)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 13:37:57 +08:00 |
|
admin
|
de9b4b7a01
|
feat: 会员接口(套餐/状态/下单/回调)+ 支付配置
|
2026-07-31 13:28:59 +08:00 |
|
admin
|
a57ab907fa
|
feat: 会员服务(套餐/状态/下单/回调幂等续期)
|
2026-07-31 13:25:43 +08:00 |
|
admin
|
34652019bb
|
feat: 虎皮棋支付适配器(签名/下单/验签,未配置降级)
|
2026-07-31 13:24:08 +08:00 |
|
admin
|
ff8047c8b3
|
feat: 支付订单/会员/回调日志 DAO
|
2026-07-31 13:23:17 +08:00 |
|
admin
|
985abaf91b
|
feat: 会员套餐 DAO(建表 + 月卡/年卡 seed)
|
2026-07-31 13:22:09 +08:00 |
|
admin
|
64470d88c3
|
feat: 商业化 P0 表名/状态常量与实体定义
|
2026-07-31 13:21:37 +08:00 |
|
admin
|
13c7a73230
|
docs: 商业化 P0 实现计划(会员中心+广告激励,客户端)
|
2026-07-31 13:19:45 +08:00 |
|
admin
|
0a7cd5b968
|
docs: 商业化 P0 实现计划(会员支付+广告激励,后端)
|
2026-07-31 13:19:44 +08:00 |
|
admin
|
854df55167
|
docs: 商业化四支柱客户端设计(会员中心/CPS 入口/广告激励)
|
2026-07-31 13:11:53 +08:00 |
|
admin
|
2574dee457
|
docs: 商业化四支柱设计(会员支付/广告激励/CPS 引擎)
|
2026-07-31 13:11:51 +08:00 |
|
admin
|
71193e710d
|
chore: 同步移除 flutter_gl 后的平台插件注册表
|
2026-07-31 12:56:48 +08:00 |
|
admin
|
139f9970c6
|
feat(app): 商业化门店页 + 收尾联调
- commercial_page:形象会员订阅占位 + 合作门店列表(造型/服装筛选,佣金政策展示)
- avatar_viewer 精简为 MVP 占位实现(移除 three_dart/flutter_gl 依赖:flutter_gl 0.0.21 在 Flutter 3.44 下无法编译,v2 接入 GLB 时引入,接入方式注释保留)
- 全链路冒烟验证通过:注册→照片→衣橱→身形→化身(172cm→体型模板4)→生成(LLM 预筛→全低分触发兜底→3 套方案)→选定主方案→3 视角效果图→收藏→门店列表
|
2026-07-31 12:56:41 +08:00 |
|
admin
|
c4fd49bd7e
|
feat(app): 穿搭生成 + 方案流 + 效果图 + 3D 化身查看
- outfit_provider:方案列表/生成任务轮询(pending→planning→scoring→rendering→done)/详情/选定主方案/收藏
- outfit_page:日期范围 + 地点生成表单,生成中显示任务进度,方案列表卡片
- plan_viewer_page:PageView 手指滑动切换方案,穿衣清单(衣橱/新品标记)、发型发色、设为主方案/收藏
- plan_effect_page:效果图 3 视角(正面/侧面/背面)查看
- avatar_viewer:three_dart + flutter_gl 3D 渲染实现(自动旋转),GLB 资产未接入时占位展示,kEnable3D 开关
- avatar_viewer_page:化身查看页 + 重新构建
- 新增 /plan-viewer /plan-effect /avatar-viewer 路由
|
2026-07-31 12:50:02 +08:00 |
|
admin
|
ceef7bc64e
|
feat(app): 形象照片上传 + 身形设置 + 化身构建 + 衣橱管理
- photo_upload_provider/photo_guide_page:4 类照片(大头照/正面/侧面/背面)拍照或相册上传
- body_provider/body_tune_page:身高 145-200cm / 体重 / 肤色 1-5 滑杆设置
- avatar_provider:化身构建(同步 + 异步轮询兜底)
- profile_page:形象主页聚合化身/照片/身形状态 + 登出
- wardrobe_provider/wardrobe_page/wardrobe_upload_page:网格展示 + 分类筛选 + 长按删除 + 表单上传
- AppConfig.resolveUrl 相对路径拼接;新增 /photo-guide /body-tune /wardrobe-upload 路由
|
2026-07-31 12:44:10 +08:00 |
|
 adminandClaude Opus 4.7
|
acbe60c13c
|
feat: app 骨架 + 网络层 + 认证(登录/注册)
- flutter create 初始化 + 依赖(riverpod 3/dio/go_router/three_dart 0.0.16)
- ApiClient:JWT 拦截器 + 统一响应解包 + 401 登出回调 + multipart 上传
- TokenStorage(shared_preferences)+ AuthNotifier 登录/登出
- 登录页(含注册对话框)+ 4 Tab 主框架
- 6 个单元测试通过(网络层 4 + 认证 2)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 12:39:01 +08:00 |
|
 adminandClaude Opus 4.7
|
ef22f7672a
|
feat: slogan-agent MVP 服务端完整实现
- 用户域:注册/登录(JWT)/修改密码/个人资料
- 照片/衣橱/身形/化身:上传存储 + 3D 化身模板匹配
- 穿搭生成:天气(高德+和风+缓存) → 规则预筛 → LLM 规划(1次调用)
→ 规则评分(5维100分制) → 全低分触发 LLM 兜底创作 → 异步任务状态机
- 效果图:选主方案后异步生成 3 视角(mock/wanx 供应商 + 内容 hash 缓存 + 每日限额)
- 商业化:合作门店列表(seed 4 家)
- 冒烟:全链路端到端验证通过(mock LLM/天气),23 个 API 端点
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-07-31 12:15:11 +08:00 |
|