|
@@ -4,10 +4,8 @@ import cn.hutool.core.util.IdUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
-import com.baomidou.mybatisplus.core.toolkit.Assert;
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.yeepay.yop.sdk.service.common.response.YopResponse;
|
|
import com.yeepay.yop.sdk.service.common.response.YopResponse;
|
|
|
-import jodd.util.StringUtil;
|
|
|
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.AllArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
@@ -19,10 +17,8 @@ import org.springblade.core.tenant.annotation.TenantIgnore;
|
|
|
import org.springblade.gateway.common_gateway.entity.vo.BillSuccessEvent;
|
|
import org.springblade.gateway.common_gateway.entity.vo.BillSuccessEvent;
|
|
|
import org.springblade.ldt.bills.entity.BalanceBills;
|
|
import org.springblade.ldt.bills.entity.BalanceBills;
|
|
|
import org.springblade.ldt.bills.entity.Bills;
|
|
import org.springblade.ldt.bills.entity.Bills;
|
|
|
-import org.springblade.ldt.bills.entity.PointBills;
|
|
|
|
|
import org.springblade.ldt.bills.service.IBalanceBillsService;
|
|
import org.springblade.ldt.bills.service.IBalanceBillsService;
|
|
|
import org.springblade.ldt.bills.service.IBillsService;
|
|
import org.springblade.ldt.bills.service.IBillsService;
|
|
|
-import org.springblade.ldt.bills.service.IPointBillsService;
|
|
|
|
|
import org.springblade.ldt.shop.entity.Shop;
|
|
import org.springblade.ldt.shop.entity.Shop;
|
|
|
import org.springblade.ldt.shop.service.IShopService;
|
|
import org.springblade.ldt.shop.service.IShopService;
|
|
|
import org.springblade.ldt.user.entity.LoginUser;
|
|
import org.springblade.ldt.user.entity.LoginUser;
|
|
@@ -31,7 +27,6 @@ import org.springblade.ldt.user.service.ILoginUserService;
|
|
|
import org.springblade.ldt.user.service.IMemberService;
|
|
import org.springblade.ldt.user.service.IMemberService;
|
|
|
import org.springblade.payment.entity.SuccessParams;
|
|
import org.springblade.payment.entity.SuccessParams;
|
|
|
import org.springblade.payment.handle.entity.HandleDivideData;
|
|
import org.springblade.payment.handle.entity.HandleDivideData;
|
|
|
-import org.springblade.payment.plugin.Payment;
|
|
|
|
|
import org.springblade.yeePay.common.YeePayConst;
|
|
import org.springblade.yeePay.common.YeePayConst;
|
|
|
import org.springblade.yeePay.entity.saas.trade.DivideApplyDto;
|
|
import org.springblade.yeePay.entity.saas.trade.DivideApplyDto;
|
|
|
import org.springblade.yeePay.entity.saas.trade.DivideCompleteDto;
|
|
import org.springblade.yeePay.entity.saas.trade.DivideCompleteDto;
|
|
@@ -42,17 +37,13 @@ import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.transaction.PlatformTransactionManager;
|
|
import org.springframework.transaction.PlatformTransactionManager;
|
|
|
-import org.springframework.transaction.TransactionManager;
|
|
|
|
|
import org.springframework.transaction.TransactionStatus;
|
|
import org.springframework.transaction.TransactionStatus;
|
|
|
-import org.springframework.transaction.annotation.Propagation;
|
|
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
import org.springframework.transaction.support.DefaultTransactionDefinition;
|
|
import org.springframework.transaction.support.DefaultTransactionDefinition;
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.util.Collections;
|
|
import java.util.Collections;
|
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
|
-import java.util.concurrent.LinkedBlockingQueue;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @author: lianghanqiang
|
|
* @author: lianghanqiang
|
|
@@ -95,14 +86,16 @@ public class SubAccountHandle {
|
|
|
Thread.sleep(5000);
|
|
Thread.sleep(5000);
|
|
|
|
|
|
|
|
//计算分账金额
|
|
//计算分账金额
|
|
|
- BigDecimal amount = bills.getFee();
|
|
|
|
|
|
|
+// BigDecimal amount = bills.getFee();
|
|
|
|
|
+ BigDecimal amount = BigDecimal.ZERO;
|
|
|
|
|
|
|
|
BalanceBills balanceBill = balanceBillsService.getOne(Wrappers.<BalanceBills>lambdaQuery().eq(BalanceBills::getTradeNo, bills.getId())
|
|
BalanceBills balanceBill = balanceBillsService.getOne(Wrappers.<BalanceBills>lambdaQuery().eq(BalanceBills::getTradeNo, bills.getId())
|
|
|
.eq(BalanceBills::getType, OrderType.SHOP_SEND.name()));
|
|
.eq(BalanceBills::getType, OrderType.SHOP_SEND.name()));
|
|
|
|
|
|
|
|
//计算赠送积分账单金额
|
|
//计算赠送积分账单金额
|
|
|
if (ObjectUtils.isNotEmpty(balanceBill)) {
|
|
if (ObjectUtils.isNotEmpty(balanceBill)) {
|
|
|
- amount = amount.add(balanceBill.getTotalPrice());
|
|
|
|
|
|
|
+// amount = amount.add(balanceBill.getTotalPrice());
|
|
|
|
|
+ amount = amount.add(balanceBill.getPrice().add(balanceBill.getFee()));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//分账
|
|
//分账
|
|
@@ -212,6 +205,9 @@ public class SubAccountHandle {
|
|
|
|
|
|
|
|
//赠送积分账单状态更新
|
|
//赠送积分账单状态更新
|
|
|
if(!Objects.isNull(balanceBills)&&balanceBills.getPrice().compareTo(BigDecimal.valueOf(0.01))>=0){
|
|
if(!Objects.isNull(balanceBills)&&balanceBills.getPrice().compareTo(BigDecimal.valueOf(0.01))>=0){
|
|
|
|
|
+ if(ObjectUtils.isNotEmpty(bills.getActualIncome())){
|
|
|
|
|
+ bills.setActualIncome(bills.getActualIncome().subtract(balanceBills.getPrice()));
|
|
|
|
|
+ }
|
|
|
shop.setBalance(shop.getBalance().subtract(balanceBills.getPrice()));
|
|
shop.setBalance(shop.getBalance().subtract(balanceBills.getPrice()));
|
|
|
balanceBills.setPayStatus(AppConstant.BillPayStatus.付款成功.name());
|
|
balanceBills.setPayStatus(AppConstant.BillPayStatus.付款成功.name());
|
|
|
user.setBalance(user.getBalance().add(balanceBills.getPrice()));
|
|
user.setBalance(user.getBalance().add(balanceBills.getPrice()));
|
|
@@ -234,6 +230,7 @@ public class SubAccountHandle {
|
|
|
userService.saveOrUpdate(user);
|
|
userService.saveOrUpdate(user);
|
|
|
balanceBillsService.saveOrUpdate(balanceBills);
|
|
balanceBillsService.saveOrUpdate(balanceBills);
|
|
|
transactionManager.commit(transaction);
|
|
transactionManager.commit(transaction);
|
|
|
|
|
+ billsService.updateById(bills);
|
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
|
transactionManager.rollback(transaction);
|
|
transactionManager.rollback(transaction);
|
|
|
if(!Objects.isNull(balanceBills)){
|
|
if(!Objects.isNull(balanceBills)){
|