peng
2025-10-11 8fd3db7778b3991810d33ac4dffd2f9031b106fc
framework/src/main/java/cn/lili/modules/order/order/serviceimpl/OrderItemServiceImpl.java
@@ -2,24 +2,31 @@
import cn.hutool.core.date.DateTime;
import cn.hutool.core.text.CharSequenceUtil;
import cn.lili.base.Result;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.utils.StringUtils;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.goods.service.GoodsSkuService;
import cn.lili.modules.lmk.domain.vo.GoodsCustomizeTemplateVO;
import cn.lili.modules.lmk.service.GoodsCustomizeTemplateService;
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;
import cn.lili.modules.order.order.entity.enums.RefundStatusEnum;
import cn.lili.modules.order.order.entity.enums.*;
import cn.lili.modules.order.order.mapper.OrderItemMapper;
import cn.lili.modules.order.order.service.OrderItemService;
import cn.lili.utils.COSUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
 * 子订单业务层实现
@@ -28,7 +35,11 @@
 * @since 2020/11/17 7:38 下午
 */
@Service
@RequiredArgsConstructor
public class OrderItemServiceImpl extends ServiceImpl<OrderItemMapper, OrderItem> implements OrderItemService {
    private final GoodsCustomizeTemplateService goodsCustomizeTemplateService;
    private final GoodsSkuService skuService;
    private final COSUtil cosUtil;
    @Override
    public void updateCommentStatus(String orderItemSn, CommentStatusEnum commentStatusEnum) {
@@ -87,7 +98,30 @@
    public List<OrderItem> getByOrderSn(String orderSn) {
        LambdaQueryWrapper<OrderItem> lambdaQueryWrapper = Wrappers.lambdaQuery();
        lambdaQueryWrapper.eq(OrderItem::getOrderSn, orderSn);
        return this.list(lambdaQueryWrapper);
        //查询每个 skuId对应的商品 是否是定制商品 ,是则查询出模板信息
        List<OrderItem> list = this.list(lambdaQueryWrapper);
        for (OrderItem orderItem : list) {
            GoodsSku goodsSku = new LambdaQueryChainWrapper<>(skuService.getBaseMapper())
                    .eq(GoodsSku::getId, orderItem.getSkuId())
                    .eq(GoodsSku::getDeleteFlag, Boolean.FALSE)
                    .one();
            if (goodsSku != null && CustomizeFlagEnum.CUSTOMIZE.name().equals(goodsSku.getCustomizeFlag())) {
                if (goodsSku.getCustomizeTemplateId() != null){
                    GoodsCustomizeTemplateVO goodsCustomizeTemplateVO = goodsCustomizeTemplateService.detailById(goodsSku.getCustomizeTemplateId());
                    goodsCustomizeTemplateVO.getListImages().forEach(item ->{
                        if (StringUtils.isNotBlank(item.getImgUrl()) && !item.getImgUrl().contains("http")){
                            item.setImgUrl(cosUtil.getPreviewUrl(item.getImgUrl()));
                        }
                    });
                    orderItem.setGoodsCustomizeTemplateVO(goodsCustomizeTemplateVO);
                }
            }
        }
        return list;
    }
    @Override