| | |
| | | if (!"SUCCESS".equals(shareRecord.getOnlineShareStatus())) { |
| | | throw new IllegalArgumentException("仅支持已成功的工行分账记录退款"); |
| | | } |
| | | if (isBlank(shareRecord.getSeqNo()) || isBlank(shareRecord.getBusiType()) |
| | | || isBlank(shareRecord.getOriMerId()) || shareRecord.getOriTrxDate() == null |
| | | if (shareRecord.getOriTrxDate() == null |
| | | || isBlank(shareRecord.getSubMerId()) || isBlank(shareRecord.getSubMerPrtclNo())) { |
| | | throw new IllegalArgumentException("分账记录缺少工行退款参数"); |
| | | } |
| | | IcbcSubOrderRefundReq request = new IcbcSubOrderRefundReq(); |
| | | request.setChargingOrderCode(order.getCode()); |
| | | request.setSeqNo(shareRecord.getSeqNo()); |
| | | request.setBusiType(shareRecord.getBusiType()); |
| | | request.setSeqNo(firstNotBlank(shareRecord.getSeqNo(), order.getCode())); |
| | | request.setBusiType(firstNotBlank(shareRecord.getBusiType(), "1")); |
| | | request.setOriMerId(shareRecord.getOriMerId()); |
| | | request.setOriTrxDate(shareRecord.getOriTrxDate() == null ? null : shareRecord.getOriTrxDate().toString()); |
| | | request.setSubOrderId(shareRecord.getSubOrderId()); |
| | |
| | | private static boolean isBlank(String value) { |
| | | return value == null || value.trim().isEmpty(); |
| | | } |
| | | |
| | | private static String firstNotBlank(String... values) { |
| | | for (String value : values) { |
| | | if (!isBlank(value)) { |
| | | return value; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | } |