Commit Graph

1062 Commits

Author SHA1 Message Date
ee5cc81864 fix(printer): 修改二维码生成路径
- 将视频合成页面路径更改为打印机样本页面路径
- 确保二维码指向正确的页面处理逻辑
2025-11-08 17:07:17 +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
fb75cbf230 feat(printer):优化订单打印纸张尺寸获取逻辑
- 引入Redis缓存存储打印纸张尺寸信息
- 优先从Redis中获取纸张尺寸,减少数据库查询
- 在创建订单时将打印机偏好纸张存入Redis,有效期60秒
- 修复打印机对象作用域问题,避免空指针异常
- 统一打印机状态校验逻辑,提高代码可读性
2025-11-08 11:04:22 +08:00
eda4ed2955 1 2025-11-08 10:35:43 +08:00
c41611e5d0 feat(printer): 实现人脸照片自动添加到优先打印列表功能
- 引入DeviceConfigManager和SourceEntity依赖
- 替换TaskFaceService为FaceService并注入DeviceRepository
- 新增autoAddPhotosToPreferPrint方法实现自动添加逻辑
- 根据景区和设备配置筛选并添加符合条件的照片
- 支持按设备分组处理和优先打印数量控制
- 添加详细的日志记录和异常处理机制
2025-11-08 10:20:37 +08:00
747081901f feat(printer): 实现人脸样本使用功能
- 新增人脸样本使用逻辑,支持查询或创建face记录
- 集成人脸识别相关实体和映射器
- 添加人脸样本URL校验和重复检测机制
- 返回包含人脸URL、ID及景区ID的响应对象
- 引入雪花算法生成唯一face ID
- 记录创建新face或使用已有face的日志信息
2025-11-08 01:17:39 +08:00
616ab217e4 feat(printer): 新增打印机大屏对接接口
- 添加获取景区列表接口
- 实现根据景区ID查询设备列表功能
- 支持生成并返回二维码图片- 集成设备、景区和人脸样本数据查询- 提供微信小程序二维码生成功能
- 实现文件流输出与临时文件清理机制
2025-11-08 00:47:33 +08:00
00db16e7bd feat(watermark): 调整水印默认字体及位置参数
- 更改默认字体文件路径为 "/PingFang_SC_t.ttf"
-修正字体资源加载类为 PrinterDefaultWatermarkOperator
- 调整垂直偏移量 OFFSET_Y 从20 到15
- 微调二维码左边距比例从0.07 到 0.075
- 修改二维码垂直偏移量 QRCODE_OFFSET_Y从 -20 到 -35
- 设置景区名称和时间字体样式为粗体 (BOLD)
2025-11-07 23:01:58 +08:00
1821ba9f58 feat(image): 添加打印机默认水印操作器并优化图片处理逻辑- 新增 PrinterDefaultWatermarkOperator 实现自定义水印处理
- 在 ImageWatermarkOperatorEnum 中添加 PRINTER_DEFAULT 类型
- 更新 ImageWatermarkFactory 以支持新的水印操作器
- 调整日期格式为 yyyy.MM.dd 用于打印场景
-优化 ImageUtils 中的图片旋转逻辑,仅支持270度旋转
- 移除对90度旋转的支持以简化处理流程
2025-11-07 22:38:02 +08:00
ea48f03bbc fix(order):修复订单打印信息获取逻辑
- 当 printTaskResp 为空时,从 printerMapper 获取打印机信息
- 设置商品的打印机名称和纸张类型字段
- 确保即使任务响应为空也能正确显示打印机数据
2025-11-07 22:02:16 +08:00
6b2089a9bc feat(order): 添加商品数量字段并初始化
- 在 OrderItemVO 中新增 count 字段用于记录商品数量- 根据不同商品类型设置默认数量为1
- 针对打印订单类型从照片信息中获取实际数量进行赋值
- 完善订单项数据封装逻辑以支持数量统计需求
2025-11-07 21:58:19 +08:00
25c0e629c6 feat(image): 添加二维码圆形白色背景
- 创建比二维码大10像素的白色圆形背景
- 绘制白色圆形背景以突出显示二维码
- 裁剪二维码为圆形并绘制在白色背景上
2025-11-07 21:47:30 +08:00
48c8518ae6 feat(printer):优化打印任务逻辑并添加水印景区文案
- 根据订单项循环设置用户购买状态
- 添加水印信息中的景区文案配置
- 调整打印任务创建流程顺序
2025-11-07 21:08:33 +08:00
96d001dfc0 feat(printer): 新增样品使用功能并优化打印流程
- 在AppPrinterController中新增/useSample接口用于使用样品- PrinterServiceImpl中实现生成微信小程序二维码逻辑
- 更新setUserIsBuyItem方法签名以支持异常抛出- 添加useSample方法占位实现
- 引入相关依赖类如MpConfigEntity、OrderRepository和WxMpUtil
2025-11-07 20:43:15 +08:00
fb3a08fdcf feat(printer): 实现照片自动裁剪功能
- 添加打印尺寸获取逻辑,优先从打印机配置读取
- 实现默认尺寸 fallback 机制 (1020x1520)
- 集成 smartCropAndFill 图片裁剪算法
- 添加裁剪后图片上传和临时文件清理
- 增加异常处理,裁剪失败时回退到原图
-优化图片 URL 内部访问地址配置
2025-11-06 15:32:11 +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
054958ebf5 fix(printer):修复用户照片列表查询逻辑
- 修正了当faceId为null时的过滤条件判断
- 调整了listRelation方法的过滤逻辑,确保正确返回无faceId关联的数据
-保证了getUserPhotoList接口在不同参数下的正确性
2025-11-05 15:26:09 +08:00
fa0c3a1a43 feat(printer): 支持按数量创建多个打印任务- 根据照片数量生成对应数量的打印任务- 默认至少创建1个打印任务
All checks were successful
ZhenTu-BE/pipeline/head This commit looks good
- 保留原有单任务逻辑并适配多任务场景
- 确保每个任务独立插入数据库
- 维持打印机轮询选择机制
2025-11-05 14:45:55 +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
546ddfbb62 test(facebody): 添加删除人脸库的测试方法
- 新增测试方法 testDeleteDb 验证删除人脸库功能
- 调用 deleteFaceDb 方法测试删除指定人脸库
- 使用固定ID "test" 进行删除测试
2025-11-05 10:00:46 +08:00
58b642f356 feat(device): 更新景区设备查询接口
- 删除冗余的景区IPC设备和激活设备查询接口
- 合并设备查询逻辑到统一接口 /scenic/{scenicId}
- 新增设备名称、类型、编号作为可选查询参数
- 简化控制器代码结构,提升维护性
-保留分页功能支持大规模数据展示
- 统一异常处理流程增强系统健壮性
2025-11-05 10:00:28 +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
6886f87fe9 Merge branch 'face_service_refactor'
# Conflicts:
#	src/main/java/com/ycwl/basic/service/pc/impl/FaceServiceImpl.java
2025-11-02 22:06:57 +08:00
78a2a74fa6 feat(print): 实现照片自动裁剪与优先打印功能
- 人脸上传后自动将关联照片添加到优先打印列表
- 根据景区和设备配置自动处理type=2的照片
- 支持按设备分组处理并限制打印数量
- 实现智能图片裁剪功能,支持自动旋转以减少裁切损失
- 添加图片尺寸配置读取和默认值处理
- 完善异常处理确保不影响主流程执行
-优化打印服务中照片上传和裁剪逻辑
- 增加详细的日志记录便于问题追踪
2025-11-02 09:13:10 +08:00
222f974ad5 feat(face): 添加人脸识别重试功能并优化得分筛选逻辑
- 在FaceSampleController中新增retryFaceRecognition接口用于手动重试失败的人脸识别任务- 集成人脸识别Kafka服务,支持异步处理重试请求- 在FaceServiceImpl中增加从景区配置读取人脸得分阈值的功能
- 根据配置的得分阈值对人脸识别结果进行筛选,过滤低分样本
- 添加详细的日志记录和异常处理机制- 优化线程池使用,确保重试任务能够正确提交和执行
2025-11-01 20:12:25 +08:00
96a4d3ffeb feat(storage): 更新照片存储路径常量
- 将 PHOTO_PATH 常量值从 "source_photo" 更改为 "viid"
- 保持其他存储路径常量不变- 确保与现有存储结构兼容
2025-11-01 19:56:27 +08:00
e99d75ba1b feat(app): 添加场景模式配置字段
- 在AppScenicController中新增scene_mode配置项
- 默认值设置为0
- 支持从scenicConfig获取场景模式配置
2025-11-01 19:55:27 +08:00
c1b9a42c73 3 2025-10-31 21:04:10 +08:00
4c10c1d939 2 2025-10-31 18:44:43 +08:00
3000e18cb7 refactor(face):重构人脸识别服务逻辑
- 将人脸识别补救逻辑提取到FaceRecoveryStrategy类中
- 将源文件关联处理逻辑提取到SourceRelationProcessor类中
- 将购买状态处理逻辑提取到BuyStatusProcessor类中
- 将视频重切处理逻辑提取到VideoRecreationHandler类中
- 在FaceServiceImpl中引入四个新的处理器组件
- 删除原有的冗长方法实现,改为调用对应处理器
- 更新方法调用方式以使用新的处理器实例
- 保留核心业务流程但解耦具体实现细节
2025-10-31 17:31:48 +08:00
bf014db7ff feat(face): 引入人脸识别指标记录与搜索结果合并功能
- 新增 FaceMetricsRecorder 类用于记录人脸识别、自定义匹配及低阈值检测次数
- 新增 SearchResultMerger 类用于合并多个人脸搜索结果,支持并集与交集模式- 在 FaceServiceImpl 中引入 metricsRecorder 和 resultMerger 辅助类
- 替换原有的 Redis 操作代码为 FaceMetricsRecorder 的方法调用- 将搜索结果合并逻辑从 FaceServiceImpl 提取至 SearchResultMerger- 新增策略模式相关类:RematchContext、RematchModeStrategy 接口及四种实现
- 使用策略工厂 Rematch
2025-10-31 17:11:02 +08:00
12cd9bd275 1 2025-10-31 16:41:15 +08:00
7c42c5c462 feat(facebody): 实现人脸识别搜索的重试机制
- 添加可重试和不可重试异常分类
- 集成百度云错误码分类器
- 实现搜索人脸接口的自动重试逻辑
- 支持根据错误码动态调整重试次数和延迟
- 添加详细的异常日志记录
- 保持与原有逻辑一致的空结果返回行为
2025-10-31 15:01:06 +08:00
631d5c175f feat(payment): 支付与退款后清除景区统计缓存
- 在支付成功、取消、退款回调后增加缓存删除逻辑
- 新增 `invalidateStatisticsCache` 方法用于删除 Redis 缓存
- 定时任务中统计景区数据后也调用缓存清除方法
- 调整景区统计任务时间并扩展统计周期为近7天
- 增强定时任务日志记录和异常处理机制
2025-10-31 13:46:17 +08:00
785de52780 feat(scenic): 添加打印相关配置项
- 新增智能抓拍打印开关配置
- 新增打印必须录入人脸开关配置
- 新增手机照片打印开关配置
- 在AppScenicController中设置打印相关配置项
- 在ScenicConfigResp中添加打印配置字段
2025-10-31 13:03:44 +08:00
2ee7e93201 refactor(order):优化订单业务逻辑中的景区信息获取方式
- 移除了对 ScenicEntity 的直接依赖
- 使用 scenicId 替代 scenic 对象以减少数据库查询
- 更新了 VLOG 和普通商品的价格计算逻辑
- 在下载通知任务中使用 ScenicV2DTO 替代 ScenicEntity
- 统一通过 scenicRepository 获取景区基本信息的方法调用
2025-10-31 11:29:48 +08:00
65ae23a956 refactor(scenic): 替换ScenicEntity为ScenicV2DTO以优化数据访问
- 将DeviceStatsServiceImpl中的ScenicEntity替换为ScenicV2DTO
- 将FaceSampleServiceImpl中的ScenicEntity替换为ScenicV2DTO
- 将TaskTaskServiceImpl中的ScenicEntity替换为ScenicV2DTO
- 更新相关方法调用以使用新的DTO结构
- 确保景点名称获取逻辑保持一致
-优化数据访问层以提高性能和可维护性
2025-10-31 11:12:38 +08:00
b9ade63e8e feat(wx): 移除微信消息模板通知控制器
- 删除了 AppWxNotifyController 类及相关接口实现
- 移除了 /api/mobile/wx/notify/v1 路径下的所有端点
- 清理了相关依赖注入和业务逻辑代码
2025-10-31 11:05:01 +08:00
cdeb2e4d5a refactor(statistics): 移除统计记录添加功能
- 删除 AppStatisticsController 中的 addStatistics 接口
- 移除 AppStatisticsServiceImpl 中 addStatistics 方法的实现
- 从 AppStatisticsService 接口中移除 addStatistics 方法声明- 清理 FaceServiceImpl 中调用统计记录添加的代码逻辑
2025-10-31 11:00:38 +08:00
cc38d6e095 feat(printer): 添加打印功能开关检查
- 在新增打印机接口中增加景区打印功能开关检查
- 在更新打印机接口中增加景区打印功能开关检查
- 打印功能未开启时返回失败响应及提示信息
2025-10-31 11:00:06 +08:00
82d86c8c3c fix(face):修复人脸匹配样本ID处理逻辑
- 移除旧数据合并逻辑,直接使用上传的样本ID列表
- 使用stream过滤和去重处理样本ID
- 简化样本列表变更检测逻辑
- 移除不必要的LinkedHashSet转换
- 优化最终样本列表的生成方式
2025-10-30 11:43:02 +08:00
5979b1a275 refactor(face): 调整人脸关系数据删除逻辑
- 将删除人脸旧关系数据的逻辑从匹配前移至保存新关系前- 确保在更新人脸关系时正确清理旧数据- 避免重复删除操作,优化数据处理流程
2025-10-30 10:40:33 +08:00
a7fe0d715d feat(face): 添加人工调整标记更新功能
- 在 FaceMapper 接口中新增 updateManualFlag 方法
- 实现根据 ID 更新 is_manual 字段的 SQL 语句
- 优化 FaceServiceImpl 中设置人工调整标记的逻辑
- 使用专门的更新方法替代原有的通用更新方式
- 清理相关缓存以确保数据一致性
2025-10-30 10:16:24 +08:00
ef8a913636 fix(face):修复人脸样本直接使用模式下搜索结果未设置的问题
- 在模式2下直接使用用户选择的人脸样本时,补充设置搜索结果JSON
- 保证检索结果在所有模式下都能正确返回
- 避免前端因缺少搜索结果数据而出现异常
2025-10-30 09:54:29 +08:00
73791a92d3 feat(face):重新匹配前删除人脸旧关系数据
- 在重新匹配前删除该人脸的旧数据关系
- 清理 member_source 和 member_video 中的关联记录
- 更新缓存清理逻辑以确保数据一致性
- 添加详细的日志记录以便追踪操作过程
2025-10-30 09:47:29 +08:00
f0ad0f58a9 fix(order):修复订单备注更新逻辑
- 移除了订单备注更新时的空字符串检查
- 允许将订单备注更新为空值
-保持了退款原因的非空检查逻辑不变
2025-10-30 09:24:28 +08:00
73825cd1d6 feat(face): 添加人工调整标记字段并优化匹配逻辑
- 在 FaceEntity 中新增 isManual 字段,用于标识是否经过人工调整
- 优化人脸识别匹配流程,若已人工调整则跳过自动匹配
- 更新 FaceMapper.xml,支持 isManual 字段的更新操作
- 在处理自定义人脸匹配时,设置人工调整标记并清除缓存
2025-10-30 00:18:03 +08:00
745943fc23 refactor(face): 移除样本筛选轨迹功能及相关枚举
- 删除 FaceRecognitionFilterReason 枚举类
- 移除 SampleFilterTrace 类及其相关逻辑
- 简化样本筛选方法,去除轨迹记录功能- 更新 FaceServiceImpl 和 TaskFaceServiceImpl 中的调用逻辑
- 移除 SearchFaceRespVo 中的 filterTrace 字段- 清理无用的 import语句和相关代码引用
2025-10-29 19:26:35 +08:00