Commit Graph

217 Commits

Author SHA1 Message Date
83e47ed843 refactor(goods): 移除预览功能并优化水印处理逻辑
- 移除了 sourceGoodsListPreview 接口及相关实现
- 新增 WatermarkEdgeService 和 FaceService 依赖注入
- 实现边缘端水印处理支持,包含降级机制
- 优化二维码和头像文件处理流程
- 统一水印处理的异常处理和资源清理逻辑
2026-01-16 17:19:31 +08:00
d15d070cb4 refactor(puzzle): 重构拼图功能实现会员拼图关联管理
- 移除原有的图片裁切功能和userArea字段
- 删除originalImageUrl字段,统一使用resultImageUrl
- 添加MemberPuzzleEntity实体类管理会员拼图关联关系
- 创建MemberPuzzleMapper接口及XML映射文件
- 实现PuzzleRelationProcessor处理器负责关联记录创建
- 在拼图生成完成后自动创建会员拼图关联记录
- 添加景区配置中的免费拼图数量设置
- 实现免费拼图逻辑控制
- 更新拼图模板和生成记录的数据结构
- 修改AppPuzzleController中图片URL的获取方式
- 优化PuzzleEdgeRenderTaskService中的图片处理流程
2026-01-16 11:23:21 +08:00
fb4568721a feat(template): 添加景区模板封面接口的token忽略注解
- 在AppTemplateController中导入IgnoreToken注解
- 为getScenicTemplateCoverUrls方法添加@IgnoreToken注解以允许匿名访问
- 确保景区模板封面获取接口无需身份验证即可访问
2026-01-15 18:25:28 +08:00
63d31d69a9 feat(puzzle): 实现拼图模板缓存功能
- 集成 PuzzleRepository 缓存层替代直接数据库查询
- 在 PriceBiz 中使用缓存查询拼图模板数据
- 在 AppTemplateController 中添加景区模板封面URL批量获取接口
- 在 PuzzleTemplateServiceImpl 中实现模板增改时的缓存清理逻辑
- 在 FaceServiceImpl 中使用缓存查询拼图模板
- 优化模板查询性能并减少数据库压力
2026-01-15 17:01:17 +08:00
fed92c5445 feat(face): 添加人脸绑定功能
- 实现了 faceId 绑定接口
- 集成了人脸识别服务匹配功能
- 添加了绑定状态参数支持
2026-01-14 21:59:56 +08:00
c4b78f1b09 fix(puzzle): 修复拼图记录图片URL获取错误
- 将resultImageUrl替换为originalImageUrl以正确获取原始图片URL
- 修正了拼图记录中图片URL为空时的错误提示逻辑
- 确保拼图功能能够正确处理原始图片URL而非结果图片URL
2026-01-10 20:29:10 +08:00
c9cc90c842 feat(notify): 添加批量查询用户授权余额功能
- 新增批量查询用户授权余额接口 /api/mobile/notify/auth/batch-remaining
- 实现批量检查用户对多个模板的授权记录功能
- 添加景区所有场景及模板列表查询接口并支持缓存
- 优化授权记录查询性能,使用批量查询替代逐个查询
- 新增批量查询请求对象 BatchRemainingCountReq 和响应对象 WechatSubscribeAllScenesResp
- 在数据层添加批量查询用户授权记录的 SQL 映射
- 实现缓存管理机制,支持所有场景模板配置的缓存读写与清理
2026-01-10 17:30:48 +08:00
d02aca9bf1 chore(AppFaceController): 移除人脸绑定功能的实现代码
- 注释掉 JWT 用户信息获取逻辑
- 移除人脸服务绑定调用
- 添加临时占位注释替代原有业务逻辑
2026-01-10 14:47:58 +08:00
e896f58d82 perf(notify): 优化微信订阅消息配置查询性能
- 为微信订阅消息配置接口添加 Redis 缓存支持
- 在 WechatSubscribeNotifyConfigRepository 中实现缓存读写和清除机制
- 修改 Controller 层接口添加 @IgnoreToken 注解支持匿名访问
- 优化查询逻辑,添加 memberId 为空时的提前返回处理
- 在管理服务中添加缓存清除逻辑,确保配置变更时缓存同步更新
- 实现批量缓存清除功能,支持按景区和全局范围清除缓存
2026-01-07 17:40:58 +08:00
54cdee333d feat(puzzle): 添加拼图素材版本缓存优化重复生成
- 新增 puzzleSourceVersionCache 缓存用于记录拼图素材版本
- 实现 isPuzzleSourceChanged 方法判断素材是否变化
- 添加 markPuzzleSourceVersion 方法标记当前素材版本
- 实现 invalidatePuzzleSourceVersion 方法清除指定人脸缓存
- 在人脸关系变更时自动清除相关拼图素材版本缓存
- 重构 AppPuzzleController 使用 PuzzleRepository 替代直接访问 Mapper
- 添加生成记录缓存机制,包括按人脸ID和记录ID的缓存
- 实现素材版本缓存命中时复用历史记录功能
- 优化重复内容检测逻辑,添加缓存标记机制
- 在各种生成流程中添加缓存清除逻辑确保数据一致性
2026-01-07 17:40:58 +08:00
123a081eab refactor(notifications): 重构通知系统使用统一的微信订阅通知触发服务
- 移除 UserNotificationAuthController 中的 getScenicTemplatesWithAuth 方法
- 从 ScenicRepository 中删除微信模板ID相关方法和配置
- 重命名 WechatSubscribeNotifyTriggerService 为 notifyTriggerService
- 更新 TaskTaskServiceImpl 中的视频生成通知逻辑
- 重构 DownloadNotificationTasker 中的通知发送方式
- 统一使用 WechatSubscribeNotifyTriggerRequest 和 WechatSubscribeNotifyTriggerResult
- 移除 ZT 消息服务相关代码
- 简化变量传递和通知模板逻辑
2026-01-06 15:35:09 +08:00
da2286bc80 Merge branch 'notify_v2' 2026-01-06 11:30:52 +08:00
5caf9a0ebf refactor(face): 重构人脸服务接口和实现
- 修改 getById 方法返回类型为 FaceEntity 并直接调用仓库层
- 移除删除人脸时的用户权限检查逻辑
- 删除 contentListUseDefaultFace 方法的实现
- 从服务接口中移除 contentListUseDefaultFace 方法定义
2026-01-01 19:40:45 +08:00
06bc2c2020 refactor(scenic): 移除景区移动端控制器和服务中的分页查询功能
- 删除 AppScenicController 中的 pageQuery 接口方法
- 删除 AppScenicController 中的 deviceCountByScenicId 接口方法
- 删除 AppScenicController 中的 scenicListByLnLa 接口方法
- 从 AppScenicService 接口中移除 pageQuery 方法定义
- 从 AppScenicService 接口中移除 deviceCountByScenicId 方法定义
- 从 AppScenicService 接口中移除 scenicListByLnLa 方法定义
- 完全移除 AppScenicController 类文件
- 简化 AppScenicServiceImpl 中
2026-01-01 19:32:49 +08:00
f1a2958251 feat(notification): 添加微信订阅消息配置管理及幂等授权功能
- 新增微信订阅消息配置管理控制器,支持模板、场景、事件映射配置
- 实现用户通知授权服务的幂等控制,避免前端重试导致授权次数虚增
- 添加微信订阅消息发送日志记录,用于幂等与排障
- 新增视频生成完成时的订阅消息触发功能
- 实现场景模板查询接口,返回用户授权余额信息
- 添加模板V2相关数据表映射器和实体类
- 集成微信订阅消息触发服务到任务完成流程中
2026-01-01 17:53:59 +08:00
1916dd96a2 feat(video): 添加移动端HLS视频流播放列表生成功能
- 实现AppVideoStreamController提供HLS播放列表生成接口
- 添加HlsStreamRequest和HlsStreamResponse数据传输对象
- 实现HlsStreamService服务类处理视频流逻辑
- 支持生成JSON格式和m3u8文件格式的播放列表
- 提供视频片段查询和设备视频HLS播放列表生成功能
- 支持EVENT和VOD两种播放列表类型
- 集成设备存储操作器获取视频文件列表
- 实现播放列表内容构建和视频片段时长计算功能
2025-12-26 15:37:22 +08:00
c583d4b007 feat(video): 添加通过faceId查询最新视频记录功能
- 在AppVideoController中新增getLatestByFaceId接口
- 添加VideoRespVO响应对象导入
- 实现通过faceId和可选templateId查询最新视频记录的功能
- 在VideoMapper中定义queryLatestByFaceIdAndTemplateId方法
- 在VideoRepository中实现查询逻辑
- 在VideoMapper.xml中添加对应的SQL查询语句
- 支持根据faceId和templateId条件查询最新视频记录
- 添加相应的日志记录和异常处理机制
2025-12-26 15:35:27 +08:00
50ee14cf8f feat(mobile): 添加移动端模板接口
- 实现了 AppTemplateController 控制器
- 添加了根据模板ID获取封面URL的接口
- 集成了 TemplateRepository 数据访问层
- 实现了模板ID参数校验逻辑
- 添加了模板不存在的错误处理
- 实现了封面URL为空的验证机制
2025-12-24 10:31:13 +08:00
c8560e3aca fix(video): 修复任务状态查询逻辑并优化Redis过期策略
- 修改人脸模板渲染状态存储逻辑,增加默认过期时间
- 移除AppTaskController中冗余的JwtInfo获取代码
- 优化GoodsServiceImpl中任务状态判断逻辑,增强空值检查
- 修复视频任务状态返回不准确的问题,完善边界条件处理
2025-12-17 16:42:09 +08:00
00890c764e feat(basic): 添加模板片段更新状态缓存支持
- 在FaceStatusManager中新增按模板ID区分的人脸片段更新状态缓存键
- 更新TaskTaskServiceImpl以设置模板渲染状态
- 在任务回调逻辑中增加对模板渲染状态的更新操作
- 修改任务删除逻辑为更新状态加10的临时解决方案
- 移除旧有的切割任务状态更新逻辑,统一使用模板渲染状态管理
2025-12-17 15:49:24 +08:00
832f6a2339 refactor(order): 简化faceId获取逻辑
- 移除通过task获取faceId的中间步骤
- 直接从video实体获取faceId
- 更新相关服务和控制器中的调用逻辑
- 优化日志记录中的faceId来源
- 提高代码可读性和执行效率
2025-12-15 17:29:53 +08:00
07987835ec fix(face): 修复人脸购买逻辑判断问题
- 修改AppPuzzleController中的人脸购买判断逻辑
- 增加对景区是否购买的前置判断
- 优化FaceServiceImpl中的人脸购买状态设置逻辑
- 确保模板购买状态的准确判断
- 避免重复查询价格计算服务
2025-12-13 23:47:29 +08:00
af131131ed fix(task): 修改任务创建接口中的自动标志参数类型
- 将 createTaskByFaceIdAndTemplateId 方法的 automatic 参数从 int 改为 boolean
- 更新方法实现以适配新的布尔值参数
- 移除无用的导入类和未使用的代码
- 调整任务实体中 automatic 字段的赋值逻辑以匹配新类型
- 删除已弃用的旧版重载方法
- 确保所有调用点传递正确的布尔值而非整数
- 优化代码结构并提高可读性
2025-12-13 19:19:21 +08:00
3b11ddef6a feat(chat): 实现人脸智能聊天核心功能
All checks were successful
ZhenTu-BE/pipeline/head This commit looks good
- 新增小程序人脸聊天控制器 AppChatController,支持会话创建、消息收发、历史查询及会话关闭
- 集成智谱 GLM 模型客户端 GlmClient,支持流式文本生成与回调
- 新增聊天会话与消息实体类及 MyBatis 映射,实现数据持久化
- 提供 FaceChatService 接口及实现,封装聊天业务逻辑包括同步/流式消息发送
- 引入 zai-sdk 依赖以支持调用智谱 AI 大模型能力
- 支持基于人脸 ID 的唯一会话管理与用户权限校验
- 消息记录包含角色、内容、追踪 ID 及延迟信息,便于调试与分析
2025-12-11 17:45:49 +08:00
6e7b4729a8 feat(ai-cam): 新增使用人脸样本创建或获取Face记录功能
- 在AppAiCamController中新增/useSample/{faceSampleId}接口
- 实现通过人脸样本ID查找或创建Face记录的业务逻辑
- 自动关联AI相机照片到用户人脸记录
- 支持AI_CAM设备类型的二维码路径配置
- 完善人脸匹配及日志记录功能
- 添加相关实体类和工具类导入依赖
2025-12-09 16:20:50 +08:00
1834fe3ddd feat(order): 添加订单可下载状态查询接口
- 在AppOrderV2Controller中引入RedisTemplate依赖
- 新增/downloadable/{orderId} GET接口
- 通过检查Redis键值判断订单是否可下载
- 返回ApiResponse包装的布尔值表示下载状态
2025-12-06 21:23:58 +08:00
fe3bda28b4 feat(ai-cam): 增强AI摄像头人脸检测逻辑
All checks were successful
ZhenTu-BE/pipeline/head This commit looks good
- 引入时间范围限制配置,支持按分钟设置检测窗口
- 创建DetectResult内部类,记录人脸检测的分数和时间信息
- 优化照片筛选逻辑,先按分数排序再应用时间范围过滤
- 更新设备类型名称,将"微单"改为"AI微单"
- 增强日志记录,提供更详细的调试信息
2025-12-05 21:41:30 +08:00
1f4a16f0e6 feat(ai-cam): 实现AI相机商品识别与会员关联功能
- 新增AppAiCamController控制器,提供获取AI相机识别商品和添加会员素材关联接口
- 实现AppAiCamService服务,完成从人脸识别日志到商品详情的转换逻辑
- 扩展FaceDetectLogAiCamMapper,支持根据faceId查询识别记录
- 扩展SourceMapper,新增根据faceSampleIds和type查询source列表的方法
- 添加设备配置管理,支持按设备设置识别分数阈值和照片数量限制
- 实现人脸识别结果解析,提取匹配度高的faceSampleId并去重处理
- 完成商品详情VO转换,包含素材URL、视频URL及购买状态等信息
- 支持批量添加会员与素材的关联关系,确保数据一致性校验
2025-12-05 17:52:46 +08:00
06c0ade9b4 feat(scenic): 添加我的页面订单显示配置项
- 在AppScenicController中新增showMyPagePaid和showMyPageUnpaid配置返回
- 在ScenicConfigResp中添加对应的布尔类型字段定义
- 支持控制我的页面是否展示已付款和未付款订单的开关功能
2025-12-03 15:20:40 +08:00
18bf51487d feat(printer): 优化拼图打印逻辑并调整日期格式
- 调整AppPuzzleController中recordId参数为固定值0L
- 修改FaceMatchingOrchestrator中的日期格式为"yyyy.MM.dd"
- 完善PrinterServiceImpl水印处理条件判断
- 新增针对sourceId为0时的拼图照片偏移处理逻辑
- 修复重复打印检查逻辑,使用resultImageUrl代替puzzleRecordId比较
- 增强异常处理和日志记录,提升系统稳定性
2025-11-21 23:25:34 +08:00
97e3ab19a0 refactor(order): 重构订单购买逻辑并优化接口参数
- 调整 isBuy 方法参数顺序,增加 faceId 参数支持
- 删除冗余的购买检查方法和旧版 isBuy 重载方法
- 简化购买状态判断逻辑,移除重复代码
- 更新视频查看权限服务中的购买检查调用
- 修改人脸服务中景区 ID 类型为 Long
- 调整打印机服务中人脸查询方法参数类型
- 统一订单业务类中方法签名和调用方式
- 移除订单请求模型中无用字段注释
- 增加人脸 ID 列表字段支持批量查询
- 优化任务服务中购买状态检查逻辑
2025-11-21 21:45:26 +08:00
cd8ae491e2 feat(mobile): 实现基于人脸ID的商品列表查询功能
- 修改AppFaceController中list方法,将scenicId转换为Long类型传递
- 在AppGoodsController中注入FaceService,并在goodsList接口中调用faceService获取人脸列表
- 更新FaceMapper中的listByScenicAndUserId方法签名,统一scenicId参数类型为Long
- GoodsServiceImpl中新增listGoodsByFaceIdList方法,实现根据人脸ID列表查询相关商品逻辑
- 商品查询支持按成片vlog和源素材分类展示,并去重处理
- 优化GoodsService接口,增加listGoodsByFaceIdList方法定义
- OrderMapper.xml
2025-11-21 20:49:05 +08:00
2be30c6eb4 refactor(price): 重构价格购买方法命名以明确用途
- 将 isBuy 方法重命名为 isOnePriceBuy 以准确反映其功能
- 更新所有调用点以使用新的方法名
- 清理未使用的导入包和变量声明
- 移除与一口价购买无关的冗余代码引用
2025-11-21 19:48:54 +08:00
4f0d6dc44f feat(order): 新增根据人脸ID查询购买记录功能
- 在OrderBiz中增加isBuy方法重载,支持通过人脸ID查询购买记录
- 修改AppPuzzleController中调用参数顺序,适配新方法签名
- 在OrderMapper接口中新增getUserBuyFaceItem方法定义
- 在OrderMapper.xml中实现getUserBuyFaceItem的SQL查询逻辑
- 调整FaceServiceImpl中相关调用逻辑,移除冗余配置获取代码
2025-11-21 19:27:53 +08:00
d5fc5c2565 feat(scenic): 添加新的景区ID到白名单
- 在白名单中新增景区ID: 4049850382325780480
- 完善景区列表分页查询功能的ID过滤逻辑
2025-11-21 11:02:56 +08:00
6ef710201c fix(order): 修正订单商品名称逻辑并更新购买检查参数
- 修改AppPuzzleController中isBuy方法的参数传递逻辑
- 在OrderServiceImpl中为未知类型添加默认商品名称
- 统一景区相关商品的命名规则
2025-11-21 10:03:10 +08:00
9123a1f6db feat(puzzle): 新增拼图功能模块
- 新增AppPuzzleController控制器,提供拼图相关接口
- 实现根据faceId查询拼图数量和记录列表功能
- 实现根据recordId查询拼图详情和下载拼图资源功能
- 实现拼图价格计算和导入打印列表功能
- 在FaceServiceImpl中集成拼图记录展示逻辑
- 在OrderServiceImpl中新增PHOTO_LOG产品类型处理
- 在PrinterService中实现从拼图添加到打印列表的功能
- 完善拼图记录转换为内容页面VO的逻辑处理
2025-11-20 23:11:04 +08:00
d408c47963 feat(mobile): 增强人脸数据访问控制并优化订单查询逻辑
- 在删除人脸数据前增加用户权限校验,确保操作安全
- 移除订单详情接口中的用户身份强制绑定,简化查询流程
- 更新视频与图片资源查询方法,去除冗余的用户ID参数
- 调整Mapper层SQL语句,解耦人脸关联数据对用户的依赖
- 优化服务层代码结构,提升数据获取效率与一致性
2025-11-17 10:06:32 +08:00
9d708ae20c fix(voucher): 移除人脸验证中的用户ID检查
- 删除了人脸验证中不必要的用户ID匹配检查
- 简化了自动领取凭证的逻辑流程
- 保留了景区ID的设置以确保业务连续性
2025-11-17 01:02:31 +08:00
ec34437e9d feat(scenic): 添加打印功能开关配置
- 在AppScenicController中新增printEnable字段返回
- 在ScenicConfigResp中添加printEnable属性
- 默认关闭打印功能,可通过配置开启
2025-11-11 17:02:14 +08:00
9df30a84e0 1 2025-11-08 18:01:52 +08:00
1bbfe8d092 feat(printer): 添加照片来源ID字段并更新相关逻辑
- 在MemberPrintEntity中新增sourceId字段用于记录照片来源
- 更新addUserPhoto方法签名,增加sourceId参数
- 修改照片上传接口,支持传递sourceId参数
- 完善自动添加照片到打印列表的逻辑,关联sourceId
- 更新数据库映射文件,添加source_id字段的读写配置- 优化重复照片检测逻辑,确保数据一致性
2025-11-08 15:12:15 +08:00
88c31d4fdc feat(printer):优化人脸样本使用逻辑并增强景区列表查询
- 修改 useSample 接口返回类型为 FaceRecognizeResp
- 增加根据样本ID和类型查询来源实体的逻辑
- 在景区列表查询中添加参数校验和异常处理
- 完善景区信息处理流程,增加设备数量统计
-优化景区距离计算与筛选逻辑
- 增加人脸匹配后自动添加照片到用户相册的功能
- 添加 XML 映射文件中新的查询语句实现
2025-11-08 15:04:50 +08:00
96d001dfc0 feat(printer): 新增样品使用功能并优化打印流程
- 在AppPrinterController中新增/useSample接口用于使用样品- PrinterServiceImpl中实现生成微信小程序二维码逻辑
- 更新setUserIsBuyItem方法签名以支持异常抛出- 添加useSample方法占位实现
- 引入相关依赖类如MpConfigEntity、OrderRepository和WxMpUtil
2025-11-07 20:43:15 +08:00
dcc8cdeb6a fix(printer): 修改 faceId 参数类型为字符串并增加解析逻辑
- 将 getListFor、upload、uploadFromSource、queryPrice、createOrder 等接口中的 faceId 参数类型从 Long 改为 String
- 新增 parseFaceId 方法用于将字符串类型的 faceId 安全转换为 Long 类型
- 在所有涉及 faceId 的业务方法调用处使用 parseFaceId 进行参数传递
- 增加对无效 faceId 字符串的处理,避免 NumberFormatException 异常
- 保持原有功能不变,提升接口健壮性和兼容性
2025-11-05 17:00:26 +08:00
779334a09e 1 2025-11-05 13:05:43 +08:00
3a3bdee296 feat(printer): 添加 faceId 参数支持照片打印功能
- 在多个接口中新增 faceId 请求参数,用于关联人脸识别信息
- 修改 getUserPhotoList 方法支持按 faceId 过滤照片列表
- 更新 addUserPhoto 和 addUserPhotoFromSource 方法保存 faceId信息
- 调整 queryPrice 和 createOrder 方法支持 faceId 查询条件- 新增 listRelationByFaceId Mapper 方法实现按 faceId 查询照片
- 在 MemberPrintEntity 和 MemberPrintResp 中添加 faceId 字段- 更新数据库插入语句,添加 face_id 字段写入支持
2025-11-05 11:38:04 +08:00
fa8a8ed711 feat(face):人脸上传接口增加scene参数
- 在AioDeviceController中调用faceUpload时添加空字符串scene参数
- 在LyCompatibleController中调用faceUpload时添加空字符串scene参数- 在AppFaceController中增加scene请求参数并传递给faceService
- 修改FaceService接口和实现类faceUpload方法签名,添加scene参数- 移除多个控制器和服务中未使用的导入依赖
- 调整代码格式以符合规范
2025-11-04 14:26:00 +08:00
e99d75ba1b feat(app): 添加场景模式配置字段
- 在AppScenicController中新增scene_mode配置项
- 默认值设置为0
- 支持从scenicConfig获取场景模式配置
2025-11-01 19:55:27 +08:00
785de52780 feat(scenic): 添加打印相关配置项
- 新增智能抓拍打印开关配置
- 新增打印必须录入人脸开关配置
- 新增手机照片打印开关配置
- 在AppScenicController中设置打印相关配置项
- 在ScenicConfigResp中添加打印配置字段
2025-10-31 13:03:44 +08:00