diff --git a/mallinkService/src/main/java/com/simple/common/ErrorCode.java b/mallinkService/src/main/java/com/simple/common/ErrorCode.java index cd1319a75..ee67b0594 100644 --- a/mallinkService/src/main/java/com/simple/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/simple/common/ErrorCode.java @@ -137,6 +137,7 @@ public enum ErrorCode{ PAY_ORDER_NOTIFY_CHECK_SIGN_ERROR(12003 , "支付验签失败"), PAY_ORDER_IS_ZERO(12004, "支付订单金额为0"), PAY_ORDER_IS_NOT_PAYMENT(12005, "不是支付订单"), + PREPAY_ID_IS_EMPTY(12006, "prepay_id是空值"), REFUND_ORDER_EXIST(12010, "退款订单已存在"), REFUND_PAY_ORDER_IS_NOT_EXIST(12011, "退款支付订单不存在"), diff --git a/mallinkService/src/main/java/com/simple/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/simple/service/impl/WxPayOrderServiceImpl.java index 753c3ba7e..e3a8fffdb 100644 --- a/mallinkService/src/main/java/com/simple/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/simple/service/impl/WxPayOrderServiceImpl.java @@ -229,6 +229,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "创建支付订单成功", returnMap); } else { JSONObject errObj = errorMap.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } else { @@ -293,6 +301,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "创建支付订单成功", returnMap); } else { JSONObject errObj = errorMap.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } @@ -373,6 +389,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "订单查询成功", returnMap); } else { JSONObject errObj = errorMap.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } catch (RuntimeException e) { @@ -424,6 +448,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "订单查询成功", returnMap); } else { JSONObject errObj = errorMap.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } catch (RuntimeException e) { @@ -464,6 +496,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "订单关闭成功", returnMap); } else { JSONObject errObj = errorMapClose.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } catch (RuntimeException e) { @@ -498,6 +538,14 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { return new ResultData(Result.SUCCESS, "订单关闭成功", returnMap); } else { JSONObject errObj = errorMapClose.getJSONObject(result_code); + record.setFailReason(errObj.toJSONString()); + record.setUpdateTime(new Date()); + try { + wxPayOrderMapper.updateByPrimaryKeySelective(record); + } catch (Exception e) { + logger.error("pay order update error: " + record.toString()); + throw new MallinkException(ErrorCode.DB_FAIL); + } return new ResultData(ErrorCode.PAY_ORDER_ERROR.getCode(), errObj.toJSONString(), returnMap); } } catch (RuntimeException e) { @@ -887,7 +935,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { if (StringUtils.isBlank(updateOrder.getPrepayId())) { logger.error("prepayId为空"); - throw new MallinkException(ErrorCode.USER_IS_EMPTY); + throw new MallinkException(ErrorCode.PREPAY_ID_IS_EMPTY); } WxMaService wxMaService = MaUtil.getWeappService(appInfo);