提交 f0d212a1 作者: han

金额支付修改

上级 3d8043f3
......@@ -210,7 +210,7 @@ public class FlyerTrainingController extends BaseController {
@ApiOperation(value = "购买课程-使用金额-去支付")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/curriculumPayByMoney")
@PostMapping("/curriculumPayByMoney")
public ResultBody curriculumPayByMoney(HttpServletRequest request,@RequestBody CurriculumPayVO curriculumPayVO) {
return flyerTrainingService.curriculumPayByMoney(request,curriculumPayVO);
}
......
......@@ -61,7 +61,6 @@ import org.springframework.web.client.RestTemplate;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
@AllArgsConstructor
public class FlyerTrainingServiceImpl implements FlyerTrainingService {
@Resource
......@@ -296,7 +295,7 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
tempTotalAmount = curriculumInfoDO.getRequireAmout().subtract(weChatPay);
CurriculumOrderDO curriculumOrderDO = new CurriculumOrderDO();
curriculumOrderDO.setId(curriculumInfoDO.getId());
curriculumOrderDO.setUserAccountId(curriculumInfoDO.getId());
// 生成支付流水号(规则"CO" + 时间戳 + 用户id + 随机数4位)
curriculumOrderDO.setOrderNo("CO" + TDateUtil.getDateStr(new Date(), "yyyyMMddHHmmss") + curriculumInfoDO.getId() + CodeUtil.getRandomNum(4));
......@@ -312,17 +311,22 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
curriculumOrderLogVO.setOrderNo(curriculumOrderDO.getOrderNo());
curriculumOrderLogVO.setUserAccountId(curriculumPayVO.getId());
if(objects.contains("1")){
if(tempTotalAmount.compareTo(userCashAmt) < 0){
if(tempTotalAmount.compareTo(userCashAmt) <= 0){
curriculumOrderLogVO.setCashAmtPaid(tempTotalAmount);
curriculumOrderLogVO.setSalaryAmtPaid(BigDecimal.ZERO);
tempTotalAmount = BigDecimal.ZERO;
userCashAmt = tempTotalAmount;
}else{
curriculumOrderLogVO.setCashAmtPaid(userCashAmt);
curriculumOrderLogVO.setSalaryAmtPaid(tempTotalAmount.subtract(userCashAmt));
tempTotalAmount = tempTotalAmount.subtract(userCashAmt);
}
} else if (objects.contains("2")) {
if(tempTotalAmount.compareTo(userSalaryAmt) < 0){
curriculumOrderLogVO.setCashAmtPaid(BigDecimal.ZERO);
curriculumOrderLogVO.setSalaryAmtPaid(userSalaryAmt.subtract(tempTotalAmount));
}
if(!objects.contains("2")&& tempTotalAmount.compareTo(BigDecimal.ZERO) > 0){
return ResultBody.error("云享金不够支付,支付失败");
}
if(objects.contains("2") && tempTotalAmount.compareTo(BigDecimal.ZERO) >= 0) {
if(tempTotalAmount.compareTo(userSalaryAmt) <= 0){
curriculumOrderLogVO.setSalaryAmtPaid(tempTotalAmount);
userSalaryAmt = tempTotalAmount;
}else{
return ResultBody.error("佣金不够支付,支付失败");
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论