From fa8f92d38bc94a8ec683e0086fea0695f3ca22f5 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Sat, 6 Dec 2025 21:21:52 +0800 Subject: [PATCH] =?UTF-8?q?refactor(order):=20=E8=B0=83=E6=95=B4=E5=9B=BE?= =?UTF-8?q?=E5=83=8F=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91=E4=B8=8E=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=85=BC=E5=AE=B9=E6=80=A7=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将图像处理逻辑移至事务提交后执行 - 添加订单内容不可下载标识兼容旧逻辑 - 移除冗余的券服务注入依赖 - 清理订单相关缓存以确保数据一致性 --- .../ycwl/basic/repository/SourceRepository.java | 14 +++++++------- .../basic/service/pc/impl/OrderServiceImpl.java | 4 ++++ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/ycwl/basic/repository/SourceRepository.java b/src/main/java/com/ycwl/basic/repository/SourceRepository.java index bd0b4016..54e45874 100644 --- a/src/main/java/com/ycwl/basic/repository/SourceRepository.java +++ b/src/main/java/com/ycwl/basic/repository/SourceRepository.java @@ -51,8 +51,6 @@ public class SourceRepository { @Autowired private RedisTemplate redisTemplate; @Autowired - private IVoucherService iVoucherService; - @Autowired private FaceRepository faceRepository; @Autowired private TemplateRepository templateRepository; @@ -75,11 +73,6 @@ public class SourceRepository { type = 3; // compact } - // 如果需要图像处理,对该faceId下的所有type=3的照片进行处理 - if (needsImageProcessing) { - processAiCamImages(faceId); - } - MemberSourceEntity memberSource = new MemberSourceEntity(); memberSource.setMemberId(memberId); memberSource.setFaceId(faceId); @@ -88,6 +81,13 @@ public class SourceRepository { memberSource.setIsBuy(1); sourceMapper.updateRelation(memberSource); memberRelationRepository.clearSCacheByFace(faceId); + + // 如果需要图像处理,对该faceId下的所有type=3的照片进行处理 + if (needsImageProcessing) { + processAiCamImages(faceId); + } + + redisTemplate.delete("order_content_not_downloadable_" + orderId); } /** diff --git a/src/main/java/com/ycwl/basic/service/pc/impl/OrderServiceImpl.java b/src/main/java/com/ycwl/basic/service/pc/impl/OrderServiceImpl.java index f33e51ce..c70302e5 100644 --- a/src/main/java/com/ycwl/basic/service/pc/impl/OrderServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/pc/impl/OrderServiceImpl.java @@ -1055,6 +1055,10 @@ public class OrderServiceImpl implements OrderService { orderItem.setGoodsType(type); orderItem.setOrderId(order.getId()); orderItems.add(orderItem); + // ======== 兼容旧逻辑 ========== + if (type == 13) { + redisTemplate.opsForValue().set("order_content_not_downloadable_" + order.getId(), "1"); + } // 在事务中保存订单数据 try { self.saveOrderInTransaction(order, orderItems, haveOldOrder);