|
|
|
@ -262,62 +262,58 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public void hltUnionCardPay(Long userCardId, Long orderId) { |
|
|
|
|
try { |
|
|
|
|
HighUserCard userCard = highUserCardService.getDetailById(userCardId); |
|
|
|
|
if(userCard == null) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到用户绑定的卡号信息"); |
|
|
|
|
} |
|
|
|
|
OutRechargeOrder order = findByOrderId(orderId); |
|
|
|
|
if (order == null) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到订单信息"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String goodsDesc = "充值话费"; |
|
|
|
|
String tranDesc = order.getRechargeContent() + "充值" + order.getPayPrice() +"元话费"; |
|
|
|
|
String instCode = "11101290"; |
|
|
|
|
String businessType = "hisen_consume"; |
|
|
|
|
|
|
|
|
|
// 工会卡支付
|
|
|
|
|
JSONObject consumption = HuiLianTongUnionCardConfig.consumption(order.getOrderNo(), userCard.getCardNo(), order.getPayPrice(), businessType, instCode, goodsDesc, tranDesc); |
|
|
|
|
System.out.println("工会卡支付响应参数" + consumption.toJSONString()); |
|
|
|
|
|
|
|
|
|
Map<String,Object> dataMap = new HashMap<>(); |
|
|
|
|
dataMap.put("orderNo", order.getOrderNo()); |
|
|
|
|
dataMap.put("cardType", "ghk"); |
|
|
|
|
dataMap.put("cardNo", userCard.getCardNo()); |
|
|
|
|
dataMap.put("checkPassword", "N"); |
|
|
|
|
dataMap.put("tranAmount", order.getPayPrice()); |
|
|
|
|
dataMap.put("tranChannel", "HiSen"); |
|
|
|
|
dataMap.put("businessType", businessType); |
|
|
|
|
dataMap.put("instCode", instCode); |
|
|
|
|
dataMap.put("goodsDesc", goodsDesc); |
|
|
|
|
dataMap.put("tranDesc", tranDesc); |
|
|
|
|
HighGasOrderPush payPush = new HighGasOrderPush(); |
|
|
|
|
payPush.setType(OrderPushType.type5.getType()); |
|
|
|
|
payPush.setOrderNo(userCard.getCardNo()); |
|
|
|
|
payPush.setCreateTime(new Date()); |
|
|
|
|
payPush.setCode(consumption.getString("respCode")); |
|
|
|
|
payPush.setRequestContent(JSON.toJSONString(dataMap)); |
|
|
|
|
payPush.setReturnContent(consumption.toJSONString()); |
|
|
|
|
highGasOrderPushMapper.insert(payPush); |
|
|
|
|
|
|
|
|
|
if(!consumption.getString("respCode").equals("0000")) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, consumption.getString("respMessage")); |
|
|
|
|
} |
|
|
|
|
JSONObject consumptionResult = HuiLianTongUnionCardConfig.resolveResponse(consumption.getString("data")); |
|
|
|
|
if (consumptionResult.getBoolean("success") != true) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "交易失败!"+consumptionResult.getString("message")); |
|
|
|
|
} |
|
|
|
|
order.setPaySerialNo(consumptionResult.getString("orderId")); // 支付流水号
|
|
|
|
|
order.setPayRealPrice(order.getPayPrice()); // 实付金额
|
|
|
|
|
order.setStatus(2); |
|
|
|
|
order.setPayType(2); |
|
|
|
|
order.setPayTime(new Date()); // 支付时间
|
|
|
|
|
updateOrder(order); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
e.printStackTrace(); |
|
|
|
|
public void hltUnionCardPay(Long userCardId, Long orderId) throws Exception { |
|
|
|
|
HighUserCard userCard = highUserCardService.getDetailById(userCardId); |
|
|
|
|
if(userCard == null) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到用户绑定的卡号信息"); |
|
|
|
|
} |
|
|
|
|
OutRechargeOrder order = findByOrderId(orderId); |
|
|
|
|
if (order == null) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到订单信息"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String goodsDesc = "充值话费"; |
|
|
|
|
String tranDesc = order.getRechargeContent() + "充值" + order.getPayPrice() +"元话费"; |
|
|
|
|
String instCode = "11101290"; |
|
|
|
|
String businessType = "hisen_consume"; |
|
|
|
|
|
|
|
|
|
// 工会卡支付
|
|
|
|
|
JSONObject consumption = HuiLianTongUnionCardConfig.consumption(order.getOrderNo(), userCard.getCardNo(), order.getPayPrice(), businessType, instCode, goodsDesc, tranDesc); |
|
|
|
|
System.out.println("工会卡支付响应参数" + consumption.toJSONString()); |
|
|
|
|
|
|
|
|
|
Map<String,Object> dataMap = new HashMap<>(); |
|
|
|
|
dataMap.put("orderNo", order.getOrderNo()); |
|
|
|
|
dataMap.put("cardType", "ghk"); |
|
|
|
|
dataMap.put("cardNo", userCard.getCardNo()); |
|
|
|
|
dataMap.put("checkPassword", "N"); |
|
|
|
|
dataMap.put("tranAmount", order.getPayPrice()); |
|
|
|
|
dataMap.put("tranChannel", "HiSen"); |
|
|
|
|
dataMap.put("businessType", businessType); |
|
|
|
|
dataMap.put("instCode", instCode); |
|
|
|
|
dataMap.put("goodsDesc", goodsDesc); |
|
|
|
|
dataMap.put("tranDesc", tranDesc); |
|
|
|
|
HighGasOrderPush payPush = new HighGasOrderPush(); |
|
|
|
|
payPush.setType(OrderPushType.type5.getType()); |
|
|
|
|
payPush.setOrderNo(userCard.getCardNo()); |
|
|
|
|
payPush.setCreateTime(new Date()); |
|
|
|
|
payPush.setCode(consumption.getString("respCode")); |
|
|
|
|
payPush.setRequestContent(JSON.toJSONString(dataMap)); |
|
|
|
|
payPush.setReturnContent(consumption.toJSONString()); |
|
|
|
|
highGasOrderPushMapper.insert(payPush); |
|
|
|
|
|
|
|
|
|
if(!consumption.getString("respCode").equals("0000")) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, consumption.getString("respMessage")); |
|
|
|
|
} |
|
|
|
|
JSONObject consumptionResult = HuiLianTongUnionCardConfig.resolveResponse(consumption.getString("data")); |
|
|
|
|
if (consumptionResult.getBoolean("success") != true) { |
|
|
|
|
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, consumptionResult.getString("message")); |
|
|
|
|
} |
|
|
|
|
order.setPaySerialNo(consumptionResult.getString("orderId")); // 支付流水号
|
|
|
|
|
order.setPayRealPrice(order.getPayPrice()); // 实付金额
|
|
|
|
|
order.setStatus(2); |
|
|
|
|
order.setPayType(2); |
|
|
|
|
order.setPayTime(new Date()); // 支付时间
|
|
|
|
|
updateOrder(order); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|