Pu Zhibing
昨天 b0fbbbb3967ca64173cb89fa88c0e86b9d4c5069
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -81,6 +81,7 @@
import com.ruoyi.system.api.model.QwH5LoginVo;
import com.ruoyi.system.api.model.QwUserDetailDto;
import com.ruoyi.system.api.service.*;
import io.seata.spring.annotation.GlobalTransactional;
import lombok.extern.log4j.Log4j2;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
@@ -550,8 +551,8 @@
     * @return
     */
    @Override
    @Transactional   // todo  放开分布式事务注解
//    @GlobalTransactional(rollbackFor = Exception.class)
    @Transactional
    @GlobalTransactional(rollbackFor = Exception.class)
    public AppPlaceOrderVo placeOrder(AppPlaceOrderDto appPlaceOrderDto) {
        // 获取用户ID
        Long userId = appPlaceOrderDto.getUserId();
@@ -1094,7 +1095,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public AppPlaceOrderVo placeActivityOrder(AppPlaceActivityDto appPlaceActivityDto) {
        Long userId = appPlaceActivityDto.getUserId();
        Member member = remoteMemberService.getMember(userId).getData();
@@ -2015,7 +2016,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public MerVerifyOrderVo sureVerifyOrder(MerVerifyOrderDto merVerifyOrderDto) {
        String orderId = merVerifyOrderDto.getOrderId();
        BigDecimal relReceiveMoney = merVerifyOrderDto.getRelReceiveMoney();
@@ -2261,7 +2262,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public MerVerifyOrderVo sureVerifyOrderDouYin(MerVerifyOrderDto merVerifyOrderDto) {
        String phone = merVerifyOrderDto.getPhone();
        String name = merVerifyOrderDto.getName();
@@ -2283,7 +2284,7 @@
        if (null == itemList && itemList.isEmpty()) {
            throw new ServiceException("查询券信息失败");
        }
        List<CertificatePrepareResponseDataCertificatesItem> collect = itemList.stream().filter(s -> s.getStatus().intValue() == 1).collect(Collectors.toList());
        List<CertificatePrepareResponseDataCertificatesItem> collect = itemList.stream().filter(s -> null == s.getStatus() || s.getStatus().intValue() == 1).collect(Collectors.toList());
        if(collect.size() < merVerifyOrderDto.getNumber()){
            throw new ServiceException("验券数量超过可使用数量");
        }
@@ -2579,7 +2580,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public MerVerifyOrderVo sureVerifyOrderKuaiShou(MerVerifyOrderDto merVerifyOrderDto) {
        String phone = merVerifyOrderDto.getPhone();
        String name = merVerifyOrderDto.getName();
@@ -2663,15 +2664,15 @@
            order.setOrderFrom(7);
            order.setShopId(shopId);
            order.setUserId(member.getUserId());
            order.setOrderMoney(originAmount);
            order.setDiscountMoney(payDiscountAmount);
            order.setReceivableMoney(payAmount);
            order.setOrderMoney(originAmount.divide(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_EVEN));
            order.setDiscountMoney(payDiscountAmount.divide(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_EVEN));
            order.setReceivableMoney(payAmount.divide(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_EVEN));
            order.setPayType(1);
            order.setPayMoney(payAmount);
            order.setOnlinePayMoney(payAmount);
            order.setPayMoney(payAmount.divide(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_EVEN));
            order.setOnlinePayMoney(payAmount.divide(BigDecimal.valueOf(100)).setScale(2, RoundingMode.HALF_EVEN));
            order.setOrderRemark("快手订单");
            order.setCreateTime(new Date(create_order_time * 1000));
            order.setPayTime(new Date(pay_time * 1000));
            order.setCreateTime(new Date(create_order_time));
            order.setPayTime(new Date(pay_time));
            order.setTripartiteOrderId(data.getOrder_id());
            order.setUseTime(nowTime);
            order.setUseUserId(merVerifyOrderDto.getUserId());
@@ -3079,7 +3080,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public MerVerifyCouponVo sureVerifyCoupon(MerVerifyCouponDto merVerifyCouponDto) {
        R<MerVerifyCouponGetVo> verifyCoupon = remoteCouponService.getVerifyCoupon(merVerifyCouponDto.getMemberCouponId());
        if(verifyCoupon.getCode() != 200){
@@ -3219,7 +3220,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public MerVerifyAwardVo sureVerifyPrize(MerVerifyPrizeDto merVerifyPrizeDto) {
        MerVerifyAwardVo merVerifyAwardVo = new MerVerifyAwardVo();
        MemberGiftRecord memberGiftRecord = remoteMemberService.getVerifyPrize(merVerifyPrizeDto.getPrizeId()).getData();
@@ -3483,7 +3484,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public void createNewOrder(MerNewOrderDto merNewOrderDto) {
        Long userId = merNewOrderDto.getBuyUserId();
        Date nowTime = new Date();
@@ -6175,7 +6176,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public void autoCancelOrder(String orderId, Integer cancelType) {
        //更新订单信息
        Order order = this.getById(orderId);
@@ -6246,7 +6247,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public void payBack(PartnerTransactionsResult transaction, BigDecimal feeAmount) {
        log.info("订单支付回调---"+transaction.toString());
        // 更新订单状态 outTradeNo
@@ -6392,7 +6393,7 @@
     */
    @Override
    @Transactional
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    public void refundOrder(String orderId, Integer cancelType) {
        // 更新订单信息
        Order order = this.getById(orderId);
@@ -7335,7 +7336,7 @@
    }
//    @GlobalTransactional(rollbackFor = Exception.class) todo 放开分布式事务注解
    @GlobalTransactional(rollbackFor = Exception.class)
    private void autoTimeCancelOrder(Order order) {
        String orderId = order.getOrderId();
        order.setOrderStatus(0);