luodangjia
2024-08-24 25c2e11cf8045a2a59bc5c661a7d96e5b372b318
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
@@ -1,7 +1,10 @@
package com.ruoyi.order.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.dto.GrantCouponDto;
import com.ruoyi.account.api.feignClient.AppCouponClient;
import com.ruoyi.account.api.feignClient.AppUserAddressClient;
import com.ruoyi.account.api.model.TAppUserAddress;
import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -24,6 +27,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
@@ -50,6 +54,8 @@
    
    @Resource
    private AppUserAddressClient appUserAddressClient;
    @Resource
    private AppCouponClient appCouponClient;
    
    
    
@@ -309,4 +315,23 @@
        }
        return pageList;
    }
    @Override
    public void callBack(String code,String outTradeNo) {
        //改变订单状态
        TShoppingOrder shoppingOrder = this.baseMapper.selectOne(Wrappers.lambdaQuery(TShoppingOrder.class).eq(TShoppingOrder::getCode, code));
        shoppingOrder.setPaymentStatus(2);
        shoppingOrder.setSerialNumber(outTradeNo);
        this.updateById(shoppingOrder);
        //如果是优惠券,赠送优惠券
        if (shoppingOrder.getOrderType()==2){
            GrantCouponDto grantCouponDto = new GrantCouponDto();
            grantCouponDto.setType(3);
            grantCouponDto.setUserIds(String.valueOf(shoppingOrder.getAppUserId()));
            grantCouponDto.setCouponId(shoppingOrder.getCouponId());
            grantCouponDto.setWaysToObtain(2);
            grantCouponDto.setEndTime(LocalDateTime.now());
            appCouponClient.grantCoupon(grantCouponDto);
        }
    }
}