mitao
2024-06-20 cd55aff7eea06f77a8f712cef1ad2744c44d0f8a
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/MemberInvoiceServiceImpl.java
@@ -25,6 +25,8 @@
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
import com.ruoyi.system.api.feignClient.MemberClient;
import io.seata.common.util.StringUtils;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -77,8 +79,9 @@
        memberInvoice.setCorporationPhone(memberInvoiceDTO.getCorporationPhone());
        memberInvoice.setCorporationOpen(memberInvoiceDTO.getCorporationOpen());
        memberInvoice.setRiseType(memberInvoiceDTO.getRiseType());
        this.save(memberInvoice);
        BigDecimal pice=new BigDecimal(0.0);
        this.save(memberInvoice);
       List<Long> memberInvoiceOrderList=memberInvoiceDTO.getOrderId();
       for (Long memberInvoiceOrder:memberInvoiceOrderList){
           MemberInvoiceOrder memberInvoiceOrder1=new MemberInvoiceOrder();
@@ -92,7 +95,10 @@
           OrderName=order.getSkuName();
           memberInvoiceOrder1.setOrderName(OrderName);
           iMemberInvoiceOrderService.save(memberInvoiceOrder1);
           pice.add(order.getTotalAmount());
       }
        memberInvoice.setInvoiceMoney(pice);
        this.updateById(memberInvoice);
    }
    @Override
@@ -208,5 +214,18 @@
            memberInvoice.setRemark(dto.getRemark());
        }
        this.updateById(memberInvoice);
        // 更新关联订单状态
        List<MemberInvoiceOrder> memberInvoiceOrderList = iMemberInvoiceOrderService.lambdaQuery()
                .eq(MemberInvoiceOrder::getInvoiceId, memberInvoice)
                .list();
        Set<Long> orderIdSet = memberInvoiceOrderList.stream()
                .map(MemberInvoiceOrder::getOrderId)
                .collect(Collectors.toSet());
        if (!orderIdSet.isEmpty()) {
            iOrderService.lambdaUpdate()
                    .set(Order::getInvoiceStatus, dto.getInvoiceStatus() == 2 ? 3 : 4)
                    .in(Order::getId, orderIdSet).update();
        }
    }
}