|
|
e9916d6aca
|
fix(service): 修复ZTSourceDataService中照片类型设置逻辑
- 将硬编码的照片类型值替换为从消息对象获取的动态类型值
- 确保entity.setType()方法正确反映实际的消息来源类型
- 维持原有缩略图URL和设备ID等其他属性的设置逻辑不变
|
2025-12-05 17:35:18 +08:00 |
|
|
|
b71452b3ed
|
refactor(face): 替换Strings工具类引用以优化代码
- 将org.apache.logging.log4j.util.Strings替换为org.apache.commons.lang3.StringUtils
- 统一使用StringUtils处理字符串判空逻辑
- 优化线程join条件判断中的字符串比较方式
- 更新所有相关字符串工具方法调用以保持一致性
|
2025-12-05 17:08:16 +08:00 |
|
|
|
4a82ee6c4d
|
feat(ai): 实现AI相机人脸识别日志记录功能
- 引入DeviceRepository以获取景区内所有AI相机设备
- 修改searchAndLog方法逻辑,遍历所有AI相机设备进行人脸搜索
- 新增searchDeviceAndLog私有方法处理单个设备的人脸识别与日志记录
- 更新FaceDetectLogAiCamService接口定义,移除deviceId参数
- 在FaceServiceImpl中调用新的日志记录服务
- 删除不再使用的DeviceConfigManager和FaceRecoveryStrategy依赖
- 调整日志记录中的字段名称及异常处理逻辑
|
2025-12-05 16:54:47 +08:00 |
|
|
|
33c3a194ca
|
refactor(kafka): 修改人脸库分组命名规则
- 将人脸库分组名称从 "ai-cam-{deviceId}" 更改为 "AiCam{deviceId}"
- 更新 FaceProcessingKafkaService 中的数据库名称生成逻辑
- 同步修改 FaceDetectLogAiCamServiceImpl 中的数据库名称使用方式
|
2025-12-05 16:01:46 +08:00 |
|
|
|
71a8d3b539
|
refactor(core): 添加 Lazy 注解解决循环依赖问题
- 在多个 Service 类中为注入的依赖添加 @Lazy 注解
- 修改了微信支付服务实现类中的依赖注入方式
- 更新了打印机服务实现类中的依赖注入配置
- 调整了统计拦截器和服务类中的依赖注入策略
- 优化了 FaceService 和相关 Repository 的注入方式
- 防止应用启动时因循环依赖导致的初始化失败
|
2025-12-05 15:22:19 +08:00 |
|
|
|
fd143830d3
|
refactor(entity): 修改人脸检测日志实体字段名称
- 将 faceSampleId 字段重命名为 faceId
- 更新相关服务实现类中的字段赋值逻辑
- 保持数据库字段映射一致性
|
2025-12-05 13:39:01 +08:00 |
|
|
|
68916f3f53
|
feat(ai-cam): 新增AI相机人脸识别日志功能
- 创建人脸检测日志实体类FaceDetectLogAiCamEntity
- 实现对应的MyBatis Mapper接口FaceDetectLogAiCamMapper
- 添加服务接口及实现类FaceDetectLogAiCamService
- 支持调用适配器进行人脸搜索并记录日志
- 记录搜索结果、匹配分数及原始响应数据
- 处理异常情况并记录错误信息到日志表中
|
2025-12-05 12:35:21 +08:00 |
|
|
|
eade5f8092
|
feat(printer): 优化自动添加照片到打印列表逻辑
- 修改autoAddPhotosToPreferPrint方法返回值为List<SourceEntity>
- 当自动添加成功时直接返回添加的照片列表
- 添加失败或无照片时返回空列表而非数量
- 控制器根据返回结果判断是否生成二维码URL
- 提升代码可读性和维护性
|
2025-12-04 21:23:23 +08:00 |
|
|
|
42540e2dc4
|
feat(printer): 新增人脸绑定二维码生成功能
- 添加获取人脸绑定二维码接口,支持生成小程序二维码
- 实现二维码文件流输出及临时文件清理
- 修改人脸识别流程,保存人脸数据并返回faceId
- 调整自动添加照片到打印列表逻辑,返回添加数量
- 更新响应模型,增加二维码URL字段
- 优化人脸匹配逻辑,使用memberRelationRepository查询关联照片
- 修复BCE适配器图片下载地址问题,去除内网地址替换逻辑
|
2025-12-04 18:21:18 +08:00 |
|
|
|
60b4473279
|
refactor(pipeline): 重构人脸匹配管线为核心管线模块
- 移除专用人脸匹配管线实现,统一使用通用管线模块
- 更新所有Stage类继承自通用管线Stage基类
- 调整包路径引用从face.pipeline到pipeline.core
- 修改上下文类实现通用管线上下文接口
- 删除冗余的人脸匹配专用注解和枚举类
- 更新工厂类引用至新的通用管线构建器
- 保持Stage功能逻辑不变仅调整继承结构
|
2025-12-03 21:47:43 +08:00 |
|
|
|
36f85dbb63
|
feat(device): 支持按多个景区ID查询设备列表
- 在 DeviceV2Client 中新增 scenicIds 查询参数
- 修改 DeviceIntegrationService.listDevices 方法以支持 scenicIds 参数
- 优化参数优先级逻辑:scenicId 优先于 scenicIds
- 更新所有调用点以传递新的 scenicIds 参数
- 保持向后兼容性,确保原有接口行为不变
- 增加日志记录以便调试和监控参数使用情况
|
2025-12-02 09:39:04 +08:00 |
|
|
|
9becd6bfa7
|
fix(order): 修复商品视频URL设置错误并增加pLog类型处理
- 修复商品视频URL字段赋值错误,使用setVideoUrl替代setUrl
- 增加对商品类型为5(pLog)的特殊处理逻辑
- 设置pLog类型商品的默认名称和封面URL
- 确保pLog类型商品信息完整性和一致性
|
2025-12-01 15:24:04 +08:00 |
|
|
|
590a7c6191
|
feat(printer): 打印任务更新后推送至打印机
- 在任务更新后调用推送服务将任务发送至指定打印机
- 记录任务更新完成的日志信息
|
2025-12-01 10:09:11 +08:00 |
|
|
|
d590286b13
|
feat(printer): 实现打印机任务WebSocket实时推送功能
- 新增PrinterTaskPushService接口及实现,负责任务推送逻辑
- 在PrinterServiceImpl中集成WebSocket推送,在任务创建和审核通过时主动推送
- 新增WebSocket配置类和处理器,支持打印机通过WebSocket连接接收任务
- 实现连接管理器,维护打印机在线状态并支持心跳保活
- 添加相关模型类如WsMessage、WsMessageType等,规范通信协议
- 在PrinterMapper中增加查询待处理任务列表的方法
- 完善异常处理和日志记录,确保推送可靠性
|
2025-12-01 09:59:27 +08:00 |
|
|
|
d60d7d9ad8
|
feat(image): 增强图片处理流程并优化水印逻辑
- 在PhotoProcessContext中新增Stage管理相关方法,支持启用、禁用及批量设置Stage状态
- 新增ImageEnhanceStage并整合到图片处理流水线中
- 重构重打印流程,复用普通照片处理流水线
- 生成订单二维码并用于水印配置
- 移除冗余的水印配置和增强配置代码
- 优化Stage控制逻辑,支持动态启用或禁用特定处理阶段
|
2025-11-27 18:17:19 +08:00 |
|
|
|
d483c222d0
|
fix(face): 调整任务状态为正在生成时的锁定类型值
- 将任务状态为正在生成时的lockType从0修改为-9
- 确保正在生成状态能被正确识别和处理
|
2025-11-27 17:14:50 +08:00 |
|
|
|
a7ef2cb35a
|
feat(printer): 实现带图像增强选项的重新打印功能
- 在 ReprintRequest 中新增 needEnhance 字段以支持图像增强
- 将 reprint 接口的实现从 controller 下移到 printerService
- 实现 handleReprint 方法,支持根据 needEnhance 条件性添加图像增强阶段
- 重构 reprint 流程,引入 Pipeline 处理图像下载、旋转、增强、水印等步骤
- 增强 reprint 异常处理,失败时回退到原始裁剪图
- 移除 ImageEnhanceStage 中对 TODO 占位符的判断逻辑
- 提供 updateTaskStatusAndPrinter 兜底方法用于无 MemberPrint 场景
|
2025-11-27 16:04:55 +08:00 |
|
|
|
cbc0584706
|
feat(face): 添加人脸识别防重复调用机制
- 引入 FaceMatchDedupService 用于防止短时间内重复调用
- 在匹配前检查是否应跳过本次调用
- 匹配完成后标记已处理,避免重复执行
- 增强系统稳定性与性能,减少无效计算
|
2025-11-27 16:04:23 +08:00 |
|
|
|
333c4d3ca7
|
refactor(image): 重构水印处理逻辑以提高可维护性
- 移除 PhotoProcessContext 中的水印相关字段
- 新增 WatermarkConfig 类封装水印配置
- 修改 WatermarkStage 通过构造函数注入配置
- 调整 PrinterServiceImpl 中水印配置的传递方式
- 更新单元测试以适应新的配置注入方式
- 统一从配置对象读取水印参数而非上下文
- 优化日志记录与偏移量计算逻辑
|
2025-11-26 14:56:37 +08:00 |
|
|
|
7b18d7c2af
|
feat(image): 实现源图片超分辨率增强流水线
- 引入Pipeline模式重构图片处理流程
- 新增SourcePhotoUpdateStage用于上传并更新源图片URL
- 扩展PhotoProcessContext支持超分场景配置
- 增加SOURCE_PHOTO_SUPER_RESOLUTION枚举值
- 修改各Stage判断逻辑适配新的图片类型系统
- 调整SourceService接口支持File类型参数
- 优化超分处理日志记录和异常处理机制
|
2025-11-25 19:17:55 +08:00 |
|
|
|
4a86849372
|
feat(image): 引入图片来源和处理场景枚举支持
- 新增 ImageSource 枚举定义图片来源类型(IPC、相机、手机等)
- 新增 PipelineScene 枚举定义管线处理场景(打印、增强等)
- 在 PhotoProcessContext 中添加 scenicConfigManager、scene 和 source 字段
- 在 PrinterServiceImpl 中根据 sourceId 判断并设置图片来源
- 在 PrinterServiceImpl 中设置默认管线场景为图片打印
- 修改 prepareNormalPhotoContext 和 prepareStorageAdapter 方法签名
- 优化配置获取逻辑,统一从 context 中获取 scenicConfigManager
|
2025-11-24 23:54:22 +08:00 |
|
|
|
e418a5ccdb
|
feat(printer): 引入照片处理管线机制
- 新增Crop和PrinterOrderItem模型用于封装裁剪信息和打印订单项
- 实现基于Pipeline模式的照片处理流程,支持普通照片和拼图处理
- 添加多个处理阶段:下载、方向检测、条件旋转、水印、恢复方向、上传和清理
- 创建PipelineBuilder用于动态构建处理管线
- 实现抽象Stage基类和具体Stage实现类
- 添加Stage执行结果管理和异常处理机制
- 优化照片处理逻辑,使用管线替代原有复杂的嵌套处理代码
- 支持通过景区配置管理水印类型、存储适配器等参数
- 提供临时文件管理工具确保处理过程中文件及时清理
- 增强日志记录和错误处理能力,提升系统可维护性
|
2025-11-24 21:18:35 +08:00 |
|
|
|
9278d4479f
|
feat(printer): 优化拼图打印偏移处理逻辑
- 添加白边框并向上偏移内容以避免打印机偏移
- 替换原有的单纯向上偏移方法
- 弃用 shiftImageUp 方法,新增 addBorderAndShiftUp 方法
- 更新临时文件命名及清理逻辑
- 修改日志记录内容以反映新的处理方式
|
2025-11-22 00:07:18 +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 |
|
|
|
c47c24a39a
|
refactor(goods): 移除商品列表查询接口及关联逻辑
- 删除 GoodsService 中的 goodsList 接口定义
- 移除 GoodsServiceImpl 中 goodsList 方法的实现
- 清理相关导入语句和无用代码引用
- 简化商品服务模块,聚焦于源素材商品列表功能
|
2025-11-21 21:52:14 +08:00 |
|
|
|
97e3ab19a0
|
refactor(order): 重构订单购买逻辑并优化接口参数
- 调整 isBuy 方法参数顺序,增加 faceId 参数支持
- 删除冗余的购买检查方法和旧版 isBuy 重载方法
- 简化购买状态判断逻辑,移除重复代码
- 更新视频查看权限服务中的购买检查调用
- 修改人脸服务中景区 ID 类型为 Long
- 调整打印机服务中人脸查询方法参数类型
- 统一订单业务类中方法签名和调用方式
- 移除订单请求模型中无用字段注释
- 增加人脸 ID 列表字段支持批量查询
- 优化任务服务中购买状态检查逻辑
|
2025-11-21 21:45:26 +08:00 |
|
|
|
5b27cac6b0
|
feat(service): 优化商品查询逻辑并新增分组查询接口
- 在 SourceMapper 中新增 queryGroupedByFaceAndType 方法,支持按 faceId 和 type 分组查询
- 调整 orderBiz.isBuy 方法的参数顺序,统一调用格式
- 修改 GoodsServiceImpl 中源素材查询逻辑,使用新分组方法减少循环嵌套
- 简化源素材去重及过滤禁用类型的处理流程
- 提前获取景区配置信息,避免重复查询
- 优化代码结构,提升可读性和维护性
|
2025-11-21 21:43:37 +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 |
|
|
|
fb82329a88
|
fix(order): 修复订单购买状态判断逻辑
- 调整isBuy方法参数顺序,确保 memberId 和 scenicId 正确传递
- 在OrderBiz中设置默认buy状态为false,避免空指针异常
- 修改OrderMapper查询条件,增加refund_status=0过滤已退款订单
- 优化face服务中调用isBuy方法时的参数传递逻辑
|
2025-11-21 19:45:21 +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 |
|
|
|
c0daa4d3b2
|
refactor(face): 优化拼图模板内容生成逻辑
- 修改拼图模板内容生成方式,支持多个模板内容生成
- 使用forEach循环处理每个模板,确保内容正确插入
- 保留原有价格计算和购买状态判断逻辑
- 确保contentId在记录存在时正确设置
- 维持原有的商品类型、分组和排序设置
|
2025-11-21 17:46:28 +08:00 |
|
|
|
8f918570d9
|
feat(puzzle): 动态设置拼图名称
- 注入PuzzleTemplateMapper依赖
- 根据模板ID获取拼图模板名称
- 使用模板名称替换硬编码的"三拼图"名称
|
2025-11-21 17:07:24 +08:00 |
|
|
|
cd5ba23d59
|
feat(puzzle): 添加模板封面图片字段并更新相关逻辑
- 在PuzzleTemplateDTO和TemplateCreateRequest中新增coverImage字段
- 在PuzzleTemplateEntity中新增coverImage字段并映射到数据库
- 更新FaceServiceImpl以支持获取模板封面图片URL
- 修改Mapper XML文件以支持coverImage字段的读写操作
- 调整SQL查询和插入语句以包含新的coverImage字段
- 更新三拼图内容页面逻辑以使用模板封面图片URL
|
2025-11-21 16:04:59 +08:00 |
|
|
|
caad0c2cf0
|
feat(order): 添加plog图商品类型支持
- 在OrderServiceImpl中增加对商品类型5的处理逻辑
- 设置商品名称和订单类型为"plog图"
- 在OrderMapper.xml中新增member_plog_data查询块
- 添加对goods_type为5时coverUrl和imgUrl的映射
- 增加对goods_type为5时商品名称的显示处理
- 新增member_plog_data表的左连接查询条件
|
2025-11-21 14:40:08 +08:00 |
|
|
|
259d99bde7
|
feat(face): 添加购买状态判断逻辑
- 在生成内容时增加对用户是否已购买的判断
- 根据购买状态设置内容的 isBuy 字段
- 调用 orderBiz.isBuy 方法检查购买状态
- 使用 scenicId 和 templateId 作为购买查询条件
|
2025-11-21 14:03:54 +08:00 |
|
|
|
0e2122910f
|
feat(face): 新增人脸匹配编排流程中的任务状态管理
- 引入 TaskStatusBiz
|
2025-11-21 13:56:20 +08:00 |
|
|
|
e1a77a1614
|
feat(printer): 移除拼图照片自动裁剪功能
- 删除了从打印机配置获取打印尺寸的逻辑
- 移除了调用ImageUtils.smartCropAndFill进行图片裁剪的代码
- 去掉了裁剪后图片上传和临时文件清理的相关实现
- 简化了打印服务流程,直接使用原始图片URL
- 保留了cropUrl字段但不再进行实际裁剪操作
|
2025-11-21 11:47:52 +08:00 |
|
|
|
8791cf5910
|
fix(printer): 修复上传裁剪图片时的文件扩展名获取逻辑
- 将文件扩展名从resultImageUrl改为croppedFile.getName()中获取
- 确保上传裁剪后图片时能正确识别文件类型
- 避免因URL解析错误导致的文件扩展名丢失问题
|
2025-11-21 11:47:05 +08:00 |
|
|
|
a860319ea1
|
refactor(puzzle): 移除拼图生成记录中的复用逻辑
- 删除 PuzzleGenerationRecordEntity 中的 isDuplicate 和 originalRecordId 字段
- 移除插入记录时设置 isDuplicate 的逻辑
- 删除 FaceMatchingOrchestrator 中查询历史记录的逻辑
- 更新 Mapper XML 文件,移除相关字段和条件判断
- 简化生成流程,不再检查模板是否已生成
|
2025-11-21 11:41:11 +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 |
|
|
|
8c76c85ae2
|
feat(puzzle): 添加拼图生成记录检查逻辑
- 引入 PuzzleGenerationRecordEntity 和 PuzzleGenerationRecordMapper
- 在人脸匹配编排流程中查询已有拼图生成记录
- 增加模板重复生成判断逻辑,避免重复处理
- 跳过已生成模板并记录日志提示
|
2025-11-20 17:33:51 +08:00 |
|
|
|
c8054c60ab
|
feat(puzzle): 启用规则匹配以增强拼图生成
- 在拼图生成请求中添加规则匹配选项
- 设置 requireRuleMatch 参数为 true 以启用高级验证
- 确保动态数据映射保持不变
- 保留现有质量与格式设置配置
|
2025-11-20 15:20:36 +08:00 |
|
|
|
8d2d0901fd
|
feat(face): 添加景区名称和日期到动态数据
- 引入日期工具类以支持日期格式化
- 在基础动态数据中增加景区名称字段
- 添加当前日期字符串到基础动态数据
- 为后续模板生成提供更丰富的上下文信息
|
2025-11-20 13:51:04 +08:00 |
|
|
|
90cf0d44c9
|
feat(video-review): 优化视频评价导出功能,支持机位名称动态表头
- 引入DeviceRepository用于批量查询机位名称
- 在导出逻辑中收集并排序机位ID,确保表头顺序一致
- 动态生成Excel表头,使用实际机位名称替代原始JSON字段
- 调整单元格样式以支持自动换行,提升可读性
- 更新mapper配置,关联template表获取模板名称
- 优化列宽自适应逻辑,为机位列设置最小宽度保障显示效果
- 日志记录中增加导出机位数量统计信息
|
2025-11-20 11:00:29 +08:00 |
|
|
|
6d18a770b8
|
feat(puzzle): 实现人脸匹配后异步生成拼图模板功能
- 移除查询规则时的景区ID参数,简化规则加载逻辑
- 为人脸匹配编排器添加拼图模板服务依赖
- 新增异步生成拼图模板方法,在人脸识别成功后触发
- 优化Mapper接口,添加@Mapper注解并移除冗余查询方法
- 更新文档说明,同步修改规则查询方式描述
- 清理SourceMapper中重复的deleted条件过滤逻辑
|
2025-11-19 22:48:01 +08:00 |
|
|
|
625ad910c9
|
feat(printer): 添加素材打印状态查询功能
- 在PrinterMapper中新增countFacePhoto方法用于统计用户打印素材数量
- 创建GoodsDetailPrintSceneVO类继承GoodsDetailVO并添加inList字段
- 修改GoodsReqQuery类添加scene字段用于标识打印场景
- 在GoodsServiceImpl中注入PrinterMapper并实现打印状态判断逻辑
- 在PrinterMapper.xml中添加对应的SQL查询语句
- 移除BaseContextHandler引入,优化代码依赖关系
|
2025-11-19 15:08:39 +08:00 |
|
|
|
208202ba41
|
feat(image): 添加水印四边偏移支持
- 在 WatermarkInfo 中新增 offsetTop、offsetBottom、offsetLeft 和 offsetRight 字段
- 在 PrinterDefaultWatermarkOperator 中实现四边偏移逻辑,默认值为 0
- 根据图片方向设置不同的偏移值,横图左偏移 40 像素,竖图下偏移 30 像素
- 调整二维码和文字位置计算方式以应用偏移量
- 优化水印处理流程,确保偏移参数正确传递和使用
|
2025-11-18 16:27:19 +08:00 |
|
|
|
6e84a5fd43
|
fix(printer): 调整二维码边距和图片旋转逻辑
- 修改二维码距离左边缘的图片宽度比例从 0.075 为 0.05
- 修正图片旋转角度判断逻辑,确保横向处理正确
- 移除下载 URL 中的域名替换操作,使用原始地址直接下载
|
2025-11-18 16:06:19 +08:00 |
|
|
|
a49e581915
|
fix(printer): 修复打印照片方向检测逻辑
- 修改图片方向判断方式,从文件检测改为读取crop配置中的rotation值
- 添加异常处理机制,确保旋转角度解析失败时能正确抛出异常
- 保持竖图自动旋转为横图的处理逻辑不变
|
2025-11-18 12:27:18 +08:00 |
|