 yml2213andClaude Opus 4.8
|
053eea3f8b
|
perf: 新增 .dockerignore 大幅缩减 Docker 构建上下文
backend 与 caddy 构建均缺少 .dockerignore,导致每次构建传输数 GB 无用数据
(backend/tmp 上传文件 980M、frontend/node_modules 520M、.git、backups 等),
卡在 transferring context 阶段。
- backend/.dockerignore:排除 tmp/data/bin/logs/api/.env/docs 等,上下文降到几 MB
- 根 .dockerignore(caddy 构建用,context 为仓库根):排除 backend 运行时产物、
frontend/node_modules、.git、backups 等
附带收益:原 COPY . 会把 .env(含密钥)打进镜像,现已一并排除。
已确认无 //go:embed 依赖被排除目录,不影响编译。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-29 23:22:07 +08:00 |
|
 yml2213andClaude Opus 4.8
|
4f4f71f251
|
feat: 封存解散群聊后用户端隐藏 archived 会话
- 用户会话列表(ListConversations)过滤 status=active,死群不再堆在列表
- 未读统计(CountUnreadMessages)排除 archived 会话,消除消不掉的红点
- 数据完整保留,客服后台与历史记录查看不受影响,保留纠纷证据链
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-29 22:59:40 +08:00 |
|
 yml2213andClaude Opus 4.8
|
be5d322c10
|
feat: 客服封存订单功能(号主失联场景)
新增客服「封存订单」动作,用于号主失联、无法联系的场景:单事务内
完成关闭订单、全量原路退款、永久封存关联商品、解散发布群、双方通知
与审计日志。
- 新增 listing 终态 sealed(封存),区别于可恢复的 offline
- listingLockedForOwnerMutation 锁定 sealed,号主无法再编辑/提审/上架
- 解散群聊按 listing_id 查发布群(listing_group)置 archived,
阻断所有成员发言并留系统消息
- 新增 order.AdminSeal 及 /admin/orders/:id/seal 路由
- 前端:卖家页 PC/移动端 sealed 视为终态禁用操作,客服后台新增
「封存订单」按钮与二次确认
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-29 22:52:20 +08:00 |
|
yml2213
|
05c29c97ea
|
修复发布驳回展示原因
|
2026-06-29 16:47:59 +08:00 |
|
yml2213
|
60e6eb9d18
|
修复驳回退款恢复订单时交接进度被重置的问题
- 取消订单时从待交接状态取消不再覆盖 handoff_status,保留原有交接进度
- 驳回恢复时仅在 cancelled 或 renter_confirm_timeout 时重置为 pending_owner
|
2026-06-29 01:42:00 +08:00 |
|
yml2213
|
3215e1c8c5
|
优化退款审核逻辑:驳回分恢复订单/关闭订单两种,优化状态标签,清理无用脚本
- AdminRejectRefund 新增 action 参数:restore 恢复订单至待交接,close 关闭订单并下架
- 前端驳回改为弹窗双选项:仅驳回恢复订单 / 驳回并关闭
- 清空 frontend placeholder 文件
- handleFileUpload 并发控制优化:清空上传列表时重置计数和 OCR 槽位
- v-for key 改为 _id 避免预览串图
- preview-src-list 改为单图预览
- deploy-prod.sh 新增 docker image/builder prune 自动清理垃圾
- scripts/ 删除无用的压测文件(load_stress.go 等 4 个)
|
2026-06-28 22:09:24 +08:00 |
|
yml2213
|
c92cd03b8c
|
退款审核功能:待交接取消不再自动退款,改为客服审核后原路退回
- 租客在待交接状态取消订单不再自动退款,改为 refund_status=pending_review
- 新增退款审核页面 /admin/orders/refund-review,客服可逐个审核
- 新增 POST /refund/approve 通过退款、POST /refund/reject 驳回退款
- 新增 GET /orders/refund-pending 查询待审核退款订单列表
- 优化状态标签表述:已取消→租客已取消、已关闭→客服已关闭、异常→客服介入
- 新增 refund_status: pending_review 及其前端标签「待客服审核退款」
- AdminOrderDetailView 退款状态改用统一 refundStatusLabel
|
2026-06-28 21:14:55 +08:00 |
|
yml2213
|
b124c74a46
|
修复 ocr 错误
|
2026-06-28 15:00:54 +08:00 |
|
yml2213
|
18eba36ef9
|
后台用户管理新增“人工实名
|
2026-06-28 01:06:35 +08:00 |
|
yml2213
|
21aabd77f1
|
商品已完成优化
|
2026-06-27 23:01:03 +08:00 |
|
yml2213
|
fed7d6af71
|
5 分钟发布一次
|
2026-06-27 22:26:37 +08:00 |
|
yml2213
|
5ac12ae5c3
|
优化站内信图标和哈夫币发布校验
|
2026-06-27 09:38:08 +08:00 |
|
yml2213
|
378b7a0b79
|
增加用户免押额度筛选
|
2026-06-27 09:12:15 +08:00 |
|
yml2213
|
23dbe9af22
|
优化后台列表搜索
|
2026-06-21 13:17:10 +08:00 |
|
yml2213
|
5c67f5c411
|
修复财务仪表盘日明细
|
2026-06-21 09:44:19 +08:00 |
|
yml2213
|
b2e52e1d75
|
修复归还逾期订单重置
|
2026-06-21 09:28:50 +08:00 |
|
yml2213
|
fcf0230e04
|
优化二维码池筛选和日期中文化
|
2026-06-19 19:16:52 +08:00 |
|
yml2213
|
f4343ed8a5
|
新增二维码池独立权限
|
2026-06-19 18:54:13 +08:00 |
|
yml2213
|
72285ed638
|
修复超时订单重置流程
|
2026-06-19 18:36:46 +08:00 |
|
yml2213
|
2df935f74c
|
优化删除
|
2026-06-19 17:26:37 +08:00 |
|
yml2213
|
076ac6098e
|
二维码自动补发
|
2026-06-19 17:08:57 +08:00 |
|
yml2213
|
5ff1ea40b0
|
feat: 增加推送通知配置
|
2026-06-19 16:28:49 +08:00 |
|
yml2213
|
a4cdc3e806
|
增加站内信未读提醒和后台通知中心+txt 校验
|
2026-06-19 15:24:15 +08:00 |
|
yml
|
9b06673efb
|
优化支付日志和配置删除提示
|
2026-06-18 22:16:09 +08:00 |
|
yml
|
fa14e0e36d
|
记录退款失败请求参数
|
2026-06-18 21:53:46 +08:00 |
|
yml
|
6d385478a6
|
接入顺成支付并优化配置列表
|
2026-06-18 21:33:15 +08:00 |
|
yml
|
48af6f39c0
|
优化订单管理
|
2026-06-18 17:09:02 +08:00 |
|
yml
|
b7d5dbd1d3
|
首页增加比例筛选并优化排序
|
2026-06-18 16:18:41 +08:00 |
|
yml
|
275663c4ea
|
限制初始密码强制范围并修复后台图片加载
|
2026-06-18 15:44:41 +08:00 |
|
yml
|
35f2d93fdf
|
完善二维码池 OCR 配置与识别
|
2026-06-18 15:22:46 +08:00 |
|
yml
|
7934141ba2
|
禁止已发放二维码回退待用
|
2026-06-18 09:59:06 +08:00 |
|
yml
|
58e071d157
|
修正订单群聊与发布跳转
|
2026-06-18 09:45:36 +08:00 |
|
yml
|
f4361c9804
|
优化发布群租客清退与历史消息
|
2026-06-18 09:39:23 +08:00 |
|
yml
|
233920025e
|
增加客服分组管理
|
2026-06-18 02:09:02 +08:00 |
|
yml
|
7dc7368367
|
优化客服会话筛选
|
2026-06-18 01:08:54 +08:00 |
|
yml
|
272b2cb71e
|
优化客服群聊订单信息展示
|
2026-06-18 00:44:45 +08:00 |
|
yml
|
0add23dedb
|
修复预计 截止时间
|
2026-06-17 23:10:38 +08:00 |
|
yml
|
bd6e15179e
|
支持后台转移发布所有权
|
2026-06-17 22:31:46 +08:00 |
|
yml
|
342edad78b
|
修复比例默认选择和二维码预警崩溃
|
2026-06-17 21:58:29 +08:00 |
|
yml
|
0a42392d5e
|
优化发布群配置与二维码池界面
|
2026-06-17 20:59:24 +08:00 |
|
yml
|
ac98841992
|
修复二维码库存与过期时间编辑
|
2026-06-17 20:02:41 +08:00 |
|
yml
|
12f589f0df
|
二维码池批量上传与认证图片预览修复
- 后端新增批量创建二维码接口 POST /admin/chats/qrcodes/batch
- 前端二维码管理页支持多图拖拽批量上传
- 注册 qrcode 图片压缩场景(maxSide=2560, quality=0.95)
- 后端 normalizeScene 注册 qrcode scene
- 增强 AuthImage 组件支持 el-image 大图预览(previewSrcList)
- 修复 WithdrawalDetailDialog 提现凭证图片 401 问题
- 删除重复的 components/AuthImage.vue,统一使用共享组件
- 提交3剩余: 会话列表群类型图标、发布成功跳群、管理端路由等
|
2026-06-17 17:57:05 +08:00 |
|
 ymlandClaude Opus 4.8
|
54f550b8be
|
提交3: 体验完善 - 二维码库存预警
- 实现二维码库存预警逻辑: 库存低于阈值时给所有客服发站内信
- 查询 cs 角色客服并批量发送预警通知
- 预警消息包含剩余数量提示
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-17 15:57:10 +08:00 |
|
 ymlandClaude Opus 4.8
|
ad70b24fb6
|
提交2: 发布群核心功能实现
- 实现 EnsureListingConversation: 发布时建发布群,发欢迎语+二维码
- 实现 AddRenterToListingConversation: 付款后拉租客进群
- 实现 RemoveRenterFromListingConversation: 订单终态移出租客
- 实现消息可见性过滤: 租客只能看到 joined_at 之后的消息
- listing 模块注入 ListingChatCreator 接口,发布时建群
- ListingDTO 新增 listing_group_conversation_id 字段
- 付款流程改为拉租客进发布群(替代建订单群)
- 订单完成和取消时自动移出租客
- 创建 chat 适配器实现接口解耦
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-17 15:57:10 +08:00 |
|
 ymlandClaude Opus 4.8
|
423c142967
|
提交1: 数据层改造 - 发布群与企业微信群二维码
- 新增数据库迁移 000008: chat_conversations 增加 listing_id, 新建 chat_qrcode_pool 表
- 更新 GORM 模型: ChatConversation 新增 ListingID 字段, 新增 ChatQrCode 模型
- 实现二维码池管理后端 API: 创建/列表/统计/更新/删除
- 新增管理后台路由: /api/admin/chats/qrcodes
- 新增系统配置: chat.listing_group_welcome, chat.qrcode_low_stock_threshold
- 更新优化方案文档: 废弃双群方案, 采用单群方案
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-17 15:57:10 +08:00 |
|
 yml2213andClaude Opus 4.8
|
4d54f1b03a
|
后台增加撤销用户实名功能
实名姓名与收款账户不一致会导致收款码登记失败,新增后台撤销实名能力:
- 新增 user:revoke_realname 权限,授予超级管理员与运营角色
- 撤销时重置用户实名状态为未认证并删除实名记录,使其可重新认证,写入审计日志
- 用户管理页新增实名状态列与"撤销实名"操作(含原因弹窗)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 07:03:52 +08:00 |
|
 yml2213andClaude Opus 4.8
|
8192344027
|
优化号主交接超时卡死问题
- 号主交接超时(owner_timeout)后允许补提交交接说明,避免临时延误导致订单卡死
- 后台新增"重置交接"动作,可将超时订单恢复为待号主交接并刷新计时
- 交接超时改以进入待交接时刻为基准计算,新增 handoff_started_at 字段
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 04:16:31 +08:00 |
|
 yml2213andClaude Opus 4.8
|
a88008f783
|
用户管理增加查找筛选
后台用户列表此前仅分页,数据量大时无法定位用户。
- 后端:List 新增 ListQuery(关键词 + 状态),抽出 applyUserFilter
对总数与列表查询统一加筛选;关键词为纯数字时同时按用户 ID 精确匹配,
否则按手机号/昵称模糊匹配
- 前端:AdminUsersView 新增筛选栏(关键词:手机号/昵称/用户ID,
状态:正常/已冻结/已禁用),回车/清空/选择即查,查询重置到第 1 页
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-17 00:58:14 +08:00 |
|
 yml2213andClaude Opus 4.8
|
e75a39b03a
|
新增消息已读状态
复用 chat_participants.last_read_at 推导已读,无需新表/迁移。
- 后端:MessageDTO 增加 is_read,toMessageDTOs 按「全部已读」语义计算
(所有其他参与者均已读才算已读,1对1 即对方已读);MarkRead 成功后
推送 conversation_read 事件(含 reader 与 read_at),NotifyConversation
与 NotifyAllAdmins 双通道通知,使发送方/客服实时刷新已读
- 前端:ChatMessage 增加 is_read,ChatView/AdminChatsView/MobileChatView
在自己的消息下渲染「已读/未读」;收到 conversation_read 且本端仍有
未获回执的自己消息时才重载,避免无谓请求
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 22:22:05 +08:00 |
|
 yml2213andClaude Opus 4.8
|
cc1c0d33de
|
修复客服后台聊天无实时刷新
后台 token 仅存 httpOnly cookie,localStorage 无 access token,
useChatSSE 在空 token 时提前 return,导致后台 SSE 从未建立连接,
只有手动刷新才出消息。
- 前端:后台 SSE 不再因空 token 返回,去掉 query token,
改用 withCredentials 依赖 cookie 鉴权
- 后端:新增 Hub.NotifyAllAdmins,新消息与新会话广播给所有在线客服,
使「未分配 / 全部」视图实时刷新(参与者客服重复收到由前端按 id 去重)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-16 19:57:58 +08:00 |
|