Просмотр исходного кода

[支付状态整理][支付]:支付状态整理

release_toaliyun_real
Stormeye Wu 7 лет назад
Родитель
Сommit
84ef38cf73
2 измененных файлов: 17 добавлений и 17 удалений
  1. +2
    -2
      mallinkBApi/src/main/java/com/iformall/controller/WxPayBillController.java
  2. +15
    -15
      mallinkService/src/main/java/com/iformall/service/impl/WxPayBillServiceImpl.java

+ 2
- 2
mallinkBApi/src/main/java/com/iformall/controller/WxPayBillController.java Просмотреть файл

@@ -126,10 +126,10 @@ public class WxPayBillController extends BaseController {
payBill.setPayBillStatus(status); payBill.setPayBillStatus(status);
payBill.setFailReason(reasonStr); payBill.setFailReason(reasonStr);
try { try {
if(status.equals(EnumPayStatus.PAY_WAY_SUCCESS.getCode()) && !payBillIdStr.equals(EnumPayStatus.PAY_WAY_WAIT.getCode())) {
if(status.equals(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()) && !payBillIdStr.equals(EnumPayStatus.PAY_STATUS_WAIT.getCode())) {
// 有价券不走update, callback更新 // 有价券不走update, callback更新
payBill = wxPayBillService.getById(payBillId); payBill = wxPayBillService.getById(payBillId);
if(payBill.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_SUCCESS.getCode())) {
if(payBill.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_SUCCESS.getCode())) {
return new ResultData(Result.SUCCESS, "支付状态更新成功"); return new ResultData(Result.SUCCESS, "支付状态更新成功");
} else { } else {
return new ResultData(ErrorCode.PAY_ORDER_ERROR, "支付未状态,请等待!!"); return new ResultData(ErrorCode.PAY_ORDER_ERROR, "支付未状态,请等待!!");


+ 15
- 15
mallinkService/src/main/java/com/iformall/service/impl/WxPayBillServiceImpl.java Просмотреть файл

@@ -111,7 +111,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {


// 2. check 是否有支付订单 // 2. check 是否有支付订单
Date currentDate = new Date(); Date currentDate = new Date();
record.setPayBillStatus(EnumPayStatus.PAY_WAY_WAIT.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
List<WxPayBill> list = wxPayBillMapper.findList(record); List<WxPayBill> list = wxPayBillMapper.findList(record);
String payBillNo; String payBillNo;
if (list.size() <= 0) { if (list.size() <= 0) {
@@ -129,7 +129,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
record.setPayBillNo(payBillNo); record.setPayBillNo(payBillNo);
record.setPayAmount((Integer) bill.get("owe")); record.setPayAmount((Integer) bill.get("owe"));
record.setPayVendor(EnumPayWay.PAY_WAY_WEAPP.getCode()); record.setPayVendor(EnumPayWay.PAY_WAY_WEAPP.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_WAY_WAIT.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
record.setShare(isShare.getCode()); record.setShare(isShare.getCode());


int sqlRow = wxPayBillMapper.insertSelective(record); int sqlRow = wxPayBillMapper.insertSelective(record);
@@ -398,13 +398,13 @@ public class WxPayBillServiceImpl implements WxPayBillService {
//USERPAYING--用户支付中 //USERPAYING--用户支付中
//PAYERROR--支付失败(其他原因,如银行返回失败) //PAYERROR--支付失败(其他原因,如银行返回失败)
if ("SUCCESS".equals(trade_state)) { if ("SUCCESS".equals(trade_state)) {
record.setPayBillStatus(EnumPayStatus.PAY_WAY_SUCCESS.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
handlePayBillStatusUpdate(record); handlePayBillStatusUpdate(record);
} else if ("USERPAYING".equals(trade_state)) { } else if ("USERPAYING".equals(trade_state)) {
record.setPayBillStatus(EnumPayStatus.PAY_WAY_WAIT.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
handlePayBillStatusUpdate(record); handlePayBillStatusUpdate(record);
} else { } else {
record.setPayBillStatus(EnumPayStatus.PAY_WAY_FAIL.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_FAIL.getCode());
handlePayBillStatusUpdate(record); handlePayBillStatusUpdate(record);
} }
return new ResultData(Result.SUCCESS, "订单查询成功", returnMap); return new ResultData(Result.SUCCESS, "订单查询成功", returnMap);
@@ -488,7 +488,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
Map<String, String> returnMap = WxPayment.xmlToMap(response); Map<String, String> returnMap = WxPayment.xmlToMap(response);
String result_code = returnMap.get("result_code"); String result_code = returnMap.get("result_code");
if ("SUCCESS".equals(result_code)) { if ("SUCCESS".equals(result_code)) {
record.setPayBillStatus(EnumPayStatus.PAY_WAY_CANCEL.getCode());
record.setPayBillStatus(EnumPayStatus.PAY_STATUS_CANCEL.getCode());
handlePayBillStatusUpdate(record); handlePayBillStatusUpdate(record);
return new ResultData(Result.SUCCESS, "订单关闭成功", returnMap); return new ResultData(Result.SUCCESS, "订单关闭成功", returnMap);
} else { } else {
@@ -646,7 +646,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
Date currentDate = new Date(); Date currentDate = new Date();
EnumPayStatus payStatus = EnumPayStatus.getEnum(record.getPayBillStatus()); EnumPayStatus payStatus = EnumPayStatus.getEnum(record.getPayBillStatus());
// 判断支付状态 // 判断支付状态
if (payStatus == EnumPayStatus.PAY_WAY_SUCCESS) {
if (payStatus == EnumPayStatus.PAY_STATUS_SUCCESS) {
// 已经是成功状态,只更新transactionId // 已经是成功状态,只更新transactionId
try { try {
record.setUpdateTime(currentDate); record.setUpdateTime(currentDate);
@@ -658,7 +658,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
} }
return; return;
} }
if (payStatus != EnumPayStatus.PAY_WAY_WAIT) {
if (payStatus != EnumPayStatus.PAY_STATUS_WAIT) {
logger.error("pay success handle, payBill " + record.getPayBillNo() + logger.error("pay success handle, payBill " + record.getPayBillNo() +
"is paid success , billId : " + record.getBillId()); "is paid success , billId : " + record.getBillId());
return; return;
@@ -683,7 +683,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
updateBill.setId(record.getId()); updateBill.setId(record.getId());
updateBill.setBillId(record.getBillId()); updateBill.setBillId(record.getBillId());
updateBill.setUpdateTime(currentDate); updateBill.setUpdateTime(currentDate);
updateBill.setPayBillStatus(EnumPayStatus.PAY_WAY_SUCCESS.getCode());
updateBill.setPayBillStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
updateBill.setTransactionId(transactionId); updateBill.setTransactionId(transactionId);
try { try {
wxPayBillMapper.updateByPrimaryKeySelective(updateBill); wxPayBillMapper.updateByPrimaryKeySelective(updateBill);
@@ -709,7 +709,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public void handlePayBillStatusUpdate(WxPayBill record) { public void handlePayBillStatusUpdate(WxPayBill record) {
// 判断支付状态 // 判断支付状态
if (record.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_WAIT.getCode())) {
if (record.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_WAIT.getCode())) {
logger.error("pay handle, payBill " + record.getPayBillNo() + logger.error("pay handle, payBill " + record.getPayBillNo() +
"is complete, billId : " + record.getBillId()); "is complete, billId : " + record.getBillId());
return; return;
@@ -761,13 +761,13 @@ public class WxPayBillServiceImpl implements WxPayBillService {
throw new MallinkException(ErrorCode.PAY_ORDER_NOT_FOUND); throw new MallinkException(ErrorCode.PAY_ORDER_NOT_FOUND);
} }


if (record.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_CANCEL.getCode())) {
if (record.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_CANCEL.getCode())) {
// 支付订单取消 // 支付订单取消
if (record.getPayAmount() > 0) { if (record.getPayAmount() > 0) {
payBillQ = new WxPayBill(); payBillQ = new WxPayBill();
payBillQ.setTenantId(bill.get("tenantId").toString()); payBillQ.setTenantId(bill.get("tenantId").toString());
payBillQ.setBillId(record.getBillId()); payBillQ.setBillId(record.getBillId());
payBillQ.setPayBillStatus(EnumPayStatus.PAY_WAY_WAIT.getCode());
payBillQ.setPayBillStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
List<WxPayBill> payBills = wxPayBillMapper.select(payBillQ); List<WxPayBill> payBills = wxPayBillMapper.select(payBillQ);
for (WxPayBill payBill : payBills) { for (WxPayBill payBill : payBills) {
payBillClose(appInfo, payBill); payBillClose(appInfo, payBill);
@@ -775,7 +775,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
} }
} else { } else {
// 支付订单成功? // 支付订单成功?
if (updateBill.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_SUCCESS.getCode())) {
if (updateBill.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_SUCCESS.getCode())) {
if (StringUtils.isBlank(updateBill.getTransactionId())) { if (StringUtils.isBlank(updateBill.getTransactionId())) {
// 回调已设置成功 // 回调已设置成功
// 继续修改订单状态 // 继续修改订单状态
@@ -783,7 +783,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
// 回调异常 // 回调异常
throw new MallinkException(ErrorCode.PAY_ORDER_ERROR.getCode(), "transactionId未获取"); throw new MallinkException(ErrorCode.PAY_ORDER_ERROR.getCode(), "transactionId未获取");
} }
} else if (updateBill.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_WAIT.getCode())) {
} else if (updateBill.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_WAIT.getCode())) {
// 回调未返回,主动检查支付订单状态 // 回调未返回,主动检查支付订单状态
try { try {
record.setPayBillNo(String.valueOf(record.getId())); record.setPayBillNo(String.valueOf(record.getId()));
@@ -821,7 +821,7 @@ public class WxPayBillServiceImpl implements WxPayBillService {
} }


// 修改账单状态 // 修改账单状态
if (record.getPayBillStatus().equals(EnumPayStatus.PAY_WAY_SUCCESS.getCode())) {
if (record.getPayBillStatus().equals(EnumPayStatus.PAY_STATUS_SUCCESS.getCode())) {
try { try {
int _count = wxBillAllService.updateBill(bill); int _count = wxBillAllService.updateBill(bill);
if (_count > 1) { if (_count > 1) {


Загрузка…
Отмена
Сохранить