Преглед изворни кода

//tt coupon order

release_toaliyun_real
xhxu пре 3 година
родитељ
комит
e181a85423
1 измењених фајлова са 66 додато и 64 уклоњено
  1. +66
    -64
      mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java

+ 66
- 64
mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java Прегледај датотеку

@@ -294,70 +294,72 @@ public class WxOrderController extends BaseController {
} }
} }


// @ApiOperation(value = "更新订单状态", notes = "{\"payOrderId\":\"string\",\"composeOrderId\":\"string\",\"status\":integer,\"reason\":\"string\"}")
// @PostMapping("/updatePayOrder")
// public ResultData updatePayOrder(@RequestBody Map<String, Object> paramMap) {
// logger.info("/api/pay/updatePayOrder" + paramMap.toString());
// String orderIdStr = (String) paramMap.get("composeOrderId");
// if (StringUtils.isBlank(orderIdStr)) {
// logger.info("orderId不能为空: " + paramMap.toString());
// return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId不能为空");
// }
// Long orderId = 0L;
// try {
// orderId = Long.valueOf(orderIdStr);
// } catch (NumberFormatException e) {
// logger.error("orderId参数不正确: " + paramMap.toString() + ", e:" + e.getMessage());
// return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId参数不正确");
// }
//
// WxBatchOrder batchOrder = wxOrderService.getWxBatchOrder(getTenantInfo(),orderId);
// if(batchOrder == null){
// return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "未找到订单");
// }
//
// WxPayOrder payOrder = new WxPayOrder();
// payOrder.setOrderId(orderId);
// payOrder.updateTenantInfo(getTenantInfo());
// payOrder.setPayVendor(getPayWay().getCode());
// payOrder.setComposeOrder(batchOrder.getOrderType());
//
// try {
// WxPayOrder byObj = wxPayOrderService.getByObj(payOrder);
// if(byObj != null){
// return new ResultData(Result.SUCCESS, "支付状态更新成功");
// }else{
//
//
// WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(payOrder.getComposeOrder()).getComposeOrder(payOrder.getOrderId(), payOrder.getTenantId());
//
// WxAppinfo appInfo = wxAppinfoService.getCAppInfo(payOrder, EnumPayWay.getEnum(payOrder.getPayVendor()).getPlat());
// //WxCUser user = getUser();
// //WxAppinfo appInfo = getAppInfo(user.getAppId());
// if (null == appInfo) {
// return new ResultData(ErrorCode.PAY_ORDER_ERROR, "当前支付类型["+payOrder.getPayVendor()+"]找不到C端appInfo");
// }
// WxPayAccount payAccount = wxPayAccountService.getById(appInfo.getPayId());
// try {
// WxPayOrder wo = wxPayOrderService.handleWxOrderQuery(payOrder, composeOrder,appInfo, payAccount, IdWorker.get(),false);
// if (null != wo) {
// return new ResultData(Result.SUCCESS, "支付状态更新成功", composeOrder);
// }
// }catch(MallinkException e) {
// //已经同步了微信的支付状态,表示已经更新
// return new ResultData(Result.SUCCESS, "支付状态更新成功", composeOrder);
// }
//
// return new ResultData(ErrorCode.PAY_ORDER_ERROR, "查询微信订单支付状态失败,请稍后!");
// }
// } catch (MallinkException e) {
// logger.error("支付状态更新失败2: " + payOrder.toString() + ", e:" + e.getMessage(),e);
// return new ResultData(e.getErrorCode(), e.getMessage());
// } catch (Exception e) {
// logger.error("支付状态更新失败3: " + payOrder.toString() + ", e:" + e.getMessage(),e);
// return new ResultData(ErrorCode.PAY_ORDER_ERROR, "支付状态更新失败3: " + payOrder.toString() + ", e:" + e.getMessage());
// }
// }
@ApiOperation(value = "继续支付", notes = "{\"composeOrderId\":\"string\"}")
@PostMapping("/continueToPay")
public ResultData continueToPay(@RequestBody Map<String, Object> paramMap) {
logger.info("/api/order/continueToPay" + paramMap.toString());
String orderIdStr = (String) paramMap.get("composeOrderId");
if (StringUtils.isBlank(orderIdStr)) {
logger.info("orderId不能为空: " + paramMap.toString());
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId不能为空");
}
Long orderId = 0L;
try {
orderId = Long.valueOf(orderIdStr);
} catch (NumberFormatException e) {
logger.error("orderId参数不正确: " + paramMap.toString() + ", e:" + e.getMessage());
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "orderId参数不正确");
}

WxBatchOrder batchOrder = wxOrderService.getWxBatchOrder(getTenantInfo(),orderId);
if(batchOrder == null){
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "未找到订单");
}

WxPayOrder payOrder = new WxPayOrder();
payOrder.setOrderId(orderId);
payOrder.updateTenantInfo(getTenantInfo());
payOrder.setPayVendor(batchOrder.getPayVendor());
payOrder.setComposeOrder(batchOrder.getOrderType());

try {
WxPayOrder byObj = wxPayOrderService.getByObj(payOrder);
if(byObj == null){
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(), "未找到支付订单");
}
if(EnumPayStatus.PAY_STATUS_WAIT.getCode().equals(byObj.getPayOrderStatus())){
WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(payOrder.getComposeOrder()).getComposeOrder(payOrder.getOrderId(), payOrder.getTenantId());

WxAppinfo appInfo = wxAppinfoService.getCAppInfo(payOrder, EnumPayWay.getEnum(payOrder.getPayVendor()).getPlat());
//WxCUser user = getUser();
//WxAppinfo appInfo = getAppInfo(user.getAppId());
if (null == appInfo) {
return new ResultData(ErrorCode.PAY_ORDER_ERROR, "当前支付类型["+payOrder.getPayVendor()+"]找不到C端appInfo");
}
WxPayAccount payAccount = wxPayAccountService.getById(appInfo.getPayId());
try {
WxPayOrder wo = wxPayOrderService.handleWxOrderQuery(payOrder, composeOrder,appInfo, payAccount, IdWorker.get(),false);
if (null != wo) {
Map<String,Object> map = new HashMap<>();
map.put("outOrderNo",orderId);
return new ResultData(map);
}
}catch(MallinkException e) {
//已经同步了微信的支付状态,表示已经更新
return new ResultData(e.getErrorCode(),e.getMessage());
}
return new ResultData(ErrorCode.PAY_ORDER_QUERY_ERROR.getCode(), "查询微信订单支付状态失败,请稍后!");
}else{
return new ResultData(ErrorCode.PAY_ORDER_QUERY_ERROR.getCode(), "订单"+EnumPayStatus.getEnum(payOrder.getPayOrderStatus()).getMessage());
}
} catch (MallinkException e) {
logger.error("支付状态更新失败2: " + payOrder.toString() + ", e:" + e.getMessage(),e);
return new ResultData(e.getErrorCode(), e.getMessage());
} catch (Exception e) {
logger.error("支付状态更新失败3: " + payOrder.toString() + ", e:" + e.getMessage(),e);
return new ResultData(ErrorCode.PAY_ORDER_ERROR, "支付状态更新失败3: " + payOrder.toString() + ", e:" + e.getMessage());
}
}


Loading…
Откажи
Сачувај