feat: 体现超限,延缓到明日复审打款

This commit is contained in:
张松
2024-12-26 14:41:26 +08:00
parent 05d1b39d4a
commit b4cc37b110
4 changed files with 78 additions and 65 deletions

View File

@@ -34,26 +34,31 @@ public class CashOutTask implements ITask {
logger.info("提现开始");
List<CashOut> cashOuts = cashOutDao.selectYesterday();
for (CashOut cashOut : cashOuts) {
String outOrderNo = AliPayOrderUtil.createOrderId();
cashOut.setOrderNumber(outOrderNo);
BaseResp baseResp = WuyouPay.extractOrder(cashOut.getUserId(), outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) {
cashOut.setState(1);
} else {
cashOut.setState(2);
cashOut.setRefund(StringUtils.isNotBlank(baseResp.getMsg()) ? baseResp.getMsg() : baseResp.getErrorMsg());
if (cashOut.getRefund().contains("收款人账户号出款属性不匹配")||cashOut.getRefund().contains("已驳回")) {
cashOut.setRefund("提现失败,请检查支付宝账号与收款人姓名后,重试。");
}else {
cashOut.setRefund(baseResp.getErrorMsg());
}
UserMoneyDetails userMoneyDetails = new UserMoneyDetails(
cashOut.getUserId(),null,null,"提现失败",4,1,1,
new BigDecimal(cashOut.getMoney()),"提现失败存入余额" + cashOut.getMoney() + "", 1);
if (WuyouPay.checkCanCash(cashOut.getUserId())) {
String outOrderNo = AliPayOrderUtil.createOrderId();
cashOut.setOrderNumber(outOrderNo);
//存入余额 钱
userMoneyService.updateAmount(1, cashOut.getUserId(), Double.parseDouble(cashOut.getMoney()));
userMoneyDetailsService.save(userMoneyDetails);
BaseResp baseResp = WuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) {
cashOut.setState(1);
} else {
cashOut.setState(2);
cashOut.setRefund(StringUtils.isNotBlank(baseResp.getMsg()) ? baseResp.getMsg() : baseResp.getErrorMsg());
if (cashOut.getRefund().contains("收款人账户号出款属性不匹配") || cashOut.getRefund().contains("已驳回")) {
cashOut.setRefund("提现失败,请检查支付宝账号与收款人姓名后,重试。");
} else {
cashOut.setRefund(baseResp.getErrorMsg());
}
UserMoneyDetails userMoneyDetails = new UserMoneyDetails(
cashOut.getUserId(), null, null, "提现失败", 4, 1, 1,
new BigDecimal(cashOut.getMoney()), "提现失败存入余额" + cashOut.getMoney() + "", 1);
//存入余额 钱
userMoneyService.updateAmount(1, cashOut.getUserId(), Double.parseDouble(cashOut.getMoney()));
userMoneyDetailsService.save(userMoneyDetails);
}
}else {
cashOut.setState(3);
}
cashOutDao.updateById(cashOut);
}