From f14875e679502e5bf06aae24af93a340ca59e9cf Mon Sep 17 00:00:00 2001 From: Chopper711 Date: Fri, 9 Jun 2023 15:27:56 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix:=E5=9C=A8redis=E9=9B=86=E7=BE=A4?= =?UTF-8?q?=E4=B8=AD=EF=BC=8C=E4=BF=83=E9=94=80=E5=BA=93=E5=AD=98=E4=B8=8E?= =?UTF-8?q?=E5=95=86=E5=93=81=E5=BA=93=E5=AD=98=E4=B8=8D=E5=9C=A8=E5=90=8C?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E6=A7=BD=E5=86=85=E4=BC=9A=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../promotion/service/PromotionGoodsService.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/promotion/service/PromotionGoodsService.java b/framework/src/main/java/cn/lili/modules/promotion/service/PromotionGoodsService.java index a53d9d7e..33f6d57c 100644 --- a/framework/src/main/java/cn/lili/modules/promotion/service/PromotionGoodsService.java +++ b/framework/src/main/java/cn/lili/modules/promotion/service/PromotionGoodsService.java @@ -32,7 +32,8 @@ public interface PromotionGoodsService extends IService { * @return 缓存商品库存key */ static String getPromotionGoodsStockCacheKey(PromotionTypeEnum typeEnum, String promotionId, String skuId) { - return "{" + CachePrefix.PROMOTION_GOODS_STOCK.name() + "_" + typeEnum.name() + "}_" + promotionId + "_" + skuId; + //ps: 2023-06-09 促销商品库存与普通商品库存不在同一槽内,会导致库存扣减lua脚本无法执行 + return CachePrefix.SKU_STOCK.getPrefix() + "_" + typeEnum.name() + "_" + promotionId + "_" + skuId; } /** @@ -48,7 +49,7 @@ public interface PromotionGoodsService extends IService { /** * 获取sku所有有效活动 * - * @param skus 商品skuId + * @param skus 商品skuId * @return 促销商品集合 */ List findSkuValidPromotions(List skus); @@ -140,8 +141,8 @@ public interface PromotionGoodsService extends IService { /** * 更新促销活动商品库存 * - * @param skuId 商品skuId - * @param quantity 库存 + * @param skuId 商品skuId + * @param quantity 库存 */ void updatePromotionGoodsStock(String skuId, Integer quantity); @@ -184,7 +185,7 @@ public interface PromotionGoodsService extends IService { /** * 获取当前商品促销信息 * - * @param dataSku 商品sku信息 + * @param dataSku 商品sku信息 * @param cartType 购物车类型 * @return 当前商品促销信息 */ From 71061ad861ac381074be34bd631d32875bd683fd Mon Sep 17 00:00:00 2001 From: Chopper711 Date: Fri, 9 Jun 2023 15:42:50 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix:=E7=94=A8=E6=88=B7=E8=B6=B3=E8=BF=B9?= =?UTF-8?q?=E7=9A=84=E5=A4=84=E7=90=86sql=E5=B7=B2=E7=BB=8F=E5=9C=A8?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=B8=AD=E5=A4=84=E7=90=86=E5=A5=BD=E4=BA=86?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98=EF=BC=8C=E8=BF=99=E8=BF=99?= =?UTF-8?q?=E9=87=8C=E7=9A=84=E4=BA=8B=E5=8A=A1=E5=9C=A8=E7=89=B9=E6=AE=8A?= =?UTF-8?q?=E6=83=85=E5=86=B5=E4=B8=8B=E4=BC=9A=E5=AF=BC=E8=87=B4sql?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=EF=BC=8C=E5=B0=86=E9=9D=9E=E5=BF=85=E8=A6=81?= =?UTF-8?q?=E7=9A=84=E4=BA=8B=E5=8A=A1=E6=B3=A8=E8=A7=A3=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E5=8D=B3=E5=8F=AF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/lili/modules/member/mapper/FootprintMapper.java | 2 -- .../lili/modules/member/serviceimpl/FootprintServiceImpl.java | 2 -- 2 files changed, 4 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/member/mapper/FootprintMapper.java b/framework/src/main/java/cn/lili/modules/member/mapper/FootprintMapper.java index 3933ebb6..f1897f4b 100644 --- a/framework/src/main/java/cn/lili/modules/member/mapper/FootprintMapper.java +++ b/framework/src/main/java/cn/lili/modules/member/mapper/FootprintMapper.java @@ -3,7 +3,6 @@ package cn.lili.modules.member.mapper; import cn.lili.modules.member.entity.dos.FootPrint; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Delete; -import org.springframework.transaction.annotation.Transactional; /** * 浏览历史数据处理层 @@ -17,7 +16,6 @@ public interface FootprintMapper extends BaseMapper { * * @param memberId 会员ID */ - @Transactional(rollbackFor = Exception.class) @Delete("DELETE li_foot_print " + "FROM li_foot_print " + "LEFT JOIN ( " + diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/FootprintServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/FootprintServiceImpl.java index b8110c7c..a0eb0bde 100644 --- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/FootprintServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/FootprintServiceImpl.java @@ -16,7 +16,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; @@ -39,7 +38,6 @@ public class FootprintServiceImpl extends ServiceImpl queryWrapper = Wrappers.lambdaQuery(); queryWrapper.eq(FootPrint::getMemberId, footPrint.getMemberId()); From 0bdb39797d9670c6112fb588e532016c142f51cd Mon Sep 17 00:00:00 2001 From: misworga831 Date: Tue, 13 Jun 2023 10:48:03 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=A7=BB=E9=99=A4?= =?UTF-8?q?@Resource=E5=90=8E=E7=9A=84=E8=AE=A2=E5=8D=95=E6=AF=8F=E6=97=A5?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=EF=BC=8C=E6=89=A7=E8=A1=8Csql=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/order/OrderEveryDayTaskExecute.java | 10 ++++-- .../entity/dto/OrderItemOperationDTO.java | 31 +++++++++++++++++++ .../order/order/service/OrderItemService.java | 4 +-- .../serviceimpl/OrderItemServiceImpl.java | 11 ++++--- 4 files changed, 47 insertions(+), 9 deletions(-) create mode 100644 framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderItemOperationDTO.java diff --git a/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java b/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java index 12bc0491..5e7b481b 100644 --- a/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java +++ b/consumer/src/main/java/cn/lili/timetask/handler/impl/order/OrderEveryDayTaskExecute.java @@ -11,6 +11,7 @@ import cn.lili.modules.member.entity.enums.EvaluationGradeEnum; import cn.lili.modules.member.service.MemberEvaluationService; import cn.lili.modules.order.order.entity.dos.Order; import cn.lili.modules.order.order.entity.dos.OrderItem; +import cn.lili.modules.order.order.entity.dto.OrderItemOperationDTO; import cn.lili.modules.order.order.entity.enums.CommentStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderComplaintStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderItemAfterSaleStatusEnum; @@ -143,7 +144,8 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute { DateTime receiveTime = DateUtil.offsetDay(DateUtil.date(), -orderSetting.getAutoEvaluation()); //订单完成时间 <= 订单自动好评时间 - List orderItems = orderItemService.waitOperationOrderItem(receiveTime, CommentStatusEnum.UNFINISHED.name()); + OrderItemOperationDTO orderItemOperationDTO = OrderItemOperationDTO.builder().receiveTime(receiveTime).commentStatus(CommentStatusEnum.UNFINISHED.name()).build(); + List orderItems = orderItemService.waitOperationOrderItem(orderItemOperationDTO); //判断是否有符合条件的订单,进行自动评价处理 if (!orderItems.isEmpty()) { @@ -183,7 +185,8 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute { DateTime receiveTime = DateUtil.offsetDay(DateUtil.date(), -orderSetting.getCloseAfterSale()); //关闭售后订单=未售后订单+小于订单关闭售后申请时间 - List orderItems = orderItemService.waitOperationOrderItem(receiveTime, OrderItemAfterSaleStatusEnum.NOT_APPLIED.name()); + OrderItemOperationDTO build = OrderItemOperationDTO.builder().receiveTime(receiveTime).afterSaleStatus(OrderItemAfterSaleStatusEnum.NOT_APPLIED.name()).build(); + List orderItems = orderItemService.waitOperationOrderItem(build); //判断是否有符合条件的订单,关闭允许售后申请处理 if (!orderItems.isEmpty()) { @@ -224,7 +227,8 @@ public class OrderEveryDayTaskExecute implements EveryDayExecute { DateTime receiveTime = DateUtil.offsetDay(DateUtil.date(), -orderSetting.getCloseComplaint()); //关闭售后订单=未售后订单+小于订单关闭售后申请时间 - List orderItems = orderItemService.waitOperationOrderItem(receiveTime, OrderComplaintStatusEnum.NO_APPLY.name()); + OrderItemOperationDTO build = OrderItemOperationDTO.builder().receiveTime(receiveTime).complainStatus(OrderComplaintStatusEnum.NO_APPLY.name()).build(); + List orderItems = orderItemService.waitOperationOrderItem(build); //判断是否有符合条件的订单,关闭允许售后申请处理 if (!orderItems.isEmpty()) { diff --git a/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderItemOperationDTO.java b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderItemOperationDTO.java new file mode 100644 index 00000000..80d5ffc7 --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/OrderItemOperationDTO.java @@ -0,0 +1,31 @@ +package cn.lili.modules.order.order.entity.dto; + +import cn.hutool.core.date.DateTime; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 订单Item操作DTO + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class OrderItemOperationDTO { + + @ApiModelProperty(value = "订单完成时间") + DateTime receiveTime; + + @ApiModelProperty(value = "订单售后状态") + String afterSaleStatus; + + @ApiModelProperty(value = "订单评价状态") + String commentStatus; + + @ApiModelProperty(value = "订单投诉状态") + String complainStatus; + +} diff --git a/framework/src/main/java/cn/lili/modules/order/order/service/OrderItemService.java b/framework/src/main/java/cn/lili/modules/order/order/service/OrderItemService.java index 7b08ca50..c40a2d84 100644 --- a/framework/src/main/java/cn/lili/modules/order/order/service/OrderItemService.java +++ b/framework/src/main/java/cn/lili/modules/order/order/service/OrderItemService.java @@ -1,7 +1,7 @@ package cn.lili.modules.order.order.service; -import cn.hutool.core.date.DateTime; import cn.lili.modules.order.order.entity.dos.OrderItem; +import cn.lili.modules.order.order.entity.dto.OrderItemOperationDTO; import cn.lili.modules.order.order.entity.enums.CommentStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderComplaintStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderItemAfterSaleStatusEnum; @@ -68,5 +68,5 @@ public interface OrderItemService extends IService { */ OrderItem getByOrderSnAndSkuId(String orderSn, String skuId); - List waitOperationOrderItem(DateTime receiveTime, String commentStatus); + List waitOperationOrderItem(OrderItemOperationDTO orderItemOperationDTO); } \ No newline at end of file diff --git a/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderItemServiceImpl.java b/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderItemServiceImpl.java index b90a55fc..bc03843b 100644 --- a/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderItemServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderItemServiceImpl.java @@ -1,9 +1,10 @@ package cn.lili.modules.order.order.serviceimpl; -import cn.hutool.core.date.DateTime; +import cn.hutool.core.text.CharSequenceUtil; import cn.lili.common.enums.ResultCode; import cn.lili.common.exception.ServiceException; import cn.lili.modules.order.order.entity.dos.OrderItem; +import cn.lili.modules.order.order.entity.dto.OrderItemOperationDTO; import cn.lili.modules.order.order.entity.enums.CommentStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderComplaintStatusEnum; import cn.lili.modules.order.order.entity.enums.OrderItemAfterSaleStatusEnum; @@ -86,10 +87,12 @@ public class OrderItemServiceImpl extends ServiceImpl waitOperationOrderItem(DateTime receiveTime, String commentStatus) { + public List waitOperationOrderItem(OrderItemOperationDTO dto) { QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.le("o.complete_time", receiveTime); - queryWrapper.eq("oi.comment_status", CommentStatusEnum.UNFINISHED.name()); + queryWrapper.le("o.complete_time", dto.getReceiveTime()); + queryWrapper.eq(CharSequenceUtil.isNotEmpty(dto.getCommentStatus()), "oi.comment_status", dto.getCommentStatus()); + queryWrapper.eq(CharSequenceUtil.isNotEmpty(dto.getAfterSaleStatus()), "oi.after_sale_status", dto.getAfterSaleStatus()); + queryWrapper.eq(CharSequenceUtil.isNotEmpty(dto.getComplainStatus()), "oi.complain_status", dto.getComplainStatus()); return this.baseMapper.waitOperationOrderItem(queryWrapper); } } \ No newline at end of file