admin
2021-06-30 a3304721c2e45e0f2ebd3139fdd623353f2ac72a
service-lijin/src/main/java/com/ks/lijin/service/remote/LijinCreateServiceImpl.java
@@ -22,8 +22,11 @@
import com.ks.lijin.util.Constant;
import com.ks.lijin.utils.taobao.TaoBaoUtil;
import com.ks.lijin.utils.taobao.TaoKeApiUtil;
import com.ks.vip.exception.LijinBalanceException;
import com.ks.vip.pojo.DO.UserLijinRecord;
import com.ks.vip.pojo.DO.VipGradePotence;
import com.ks.vip.pojo.Enums.VIPEnum;
import com.ks.vip.service.LijinBalanceService;
import com.ks.vip.service.VipCenterService;
import com.ks.vip.service.VipGradePotenceService;
import com.ks.vip.service.VipGradeService;
@@ -69,6 +72,9 @@
    @Reference(version = "1.0", check = false)
    private VipGradeService vipGradeService;
    @Reference(version = "1.0", check = false)
    private LijinBalanceService lijinBalanceService;
    @Resource
    private LiJinExpendRecordService liJinExpendRecordService;
@@ -197,6 +203,7 @@
            return false;
        }
        // 每日最大次数判断
        Integer numMax = potence.getTaolijinMaxNumber();
        if (numMax == null || numMax.intValue() <= 0) {
@@ -246,6 +253,14 @@
        if (potence == null) {
            return false;
        }
        //查询礼金余额
        BigDecimal balance = lijinBalanceService.getBalance(uid);
        if (balance != null) {
            if (money.compareTo(balance) > 0) {
                throw new LiJinUserException(LiJinUserException.CODE_USER_BALANCE_NOT_ENOUGH, "礼金余额不足");
            }
        }
        // 每日最大次数判断
        Integer numMax = potence.getTaolijinMaxNumber();
@@ -323,6 +338,14 @@
        // 创建的淘礼金-金额
        BigDecimal lijinAmount = getTBLijinAmount(goods, vipRank);
        //查询礼金余额
        BigDecimal balance = lijinBalanceService.getBalance(uid);
        if (balance != null && lijinAmount != null) {
            if (lijinAmount.compareTo(balance) > 0) {
                throw new LiJinUserException(LiJinUserException.CODE_USER_BALANCE_NOT_ENOUGH, "礼金余额不足");
            }
        }
        // 执行创建淘礼金
        LiJinCreateParam params = getLiJinCreateBaseParam();
@@ -377,6 +400,13 @@
        liJinExpendRecordMapper.insertSelective(record);
        //添加
        liJinProviderTaoKeAccountManager.createLijinSuccess(taoLiJinDTO.getAccount().getId(), goodsId, lijinAmount.multiply(new BigDecimal(num)), now);
        //礼金余额扣除
        try {
            lijinBalanceService.consumeLijin(uid, lijinAmount, "购物抵现", UserLijinRecord.Category.createGoodsLijin.name(), record.getId()+"");
        } catch (LijinBalanceException e) {
            e.printStackTrace();
        }
        return record;
    }