优化重构部分支付相关代码

This commit is contained in:
Binary Wang 2017-01-05 12:29:26 +08:00
parent cbf78114f7
commit 55d66ac7c9
4 changed files with 14 additions and 12 deletions

View File

@ -83,7 +83,7 @@ public class WxMpPayServiceImpl implements WxMpPayService {
String url = PAY_BASE_URL + "/pay/refundquery"; String url = PAY_BASE_URL + "/pay/refundquery";
String responseContent = this.executeRequest(url, request.toXML()); String responseContent = this.executeRequest(url, request.toXML());
WxPayRefundQueryResult result = WxPayRefundQueryResult.fromXML(responseContent, WxPayRefundQueryResult.class); WxPayRefundQueryResult result = WxPayRefundQueryResult.fromXML(responseContent, WxPayRefundQueryResult.class);
result.composeRefundRecords(responseContent); result.composeRefundRecords();
this.checkResult(result); this.checkResult(result);
return result; return result;
} }
@ -189,7 +189,7 @@ public class WxMpPayServiceImpl implements WxMpPayService {
String url = PAY_BASE_URL + "/pay/orderquery"; String url = PAY_BASE_URL + "/pay/orderquery";
String responseContent = this.executeRequest(url, request.toXML()); String responseContent = this.executeRequest(url, request.toXML());
WxPayOrderQueryResult result = WxPayOrderQueryResult.fromXML(responseContent, WxPayOrderQueryResult.class); WxPayOrderQueryResult result = WxPayOrderQueryResult.fromXML(responseContent, WxPayOrderQueryResult.class);
result.composeCoupons(responseContent); result.composeCoupons();
this.checkResult(result); this.checkResult(result);
return result; return result;
} }

View File

@ -184,10 +184,13 @@ public class WxPayRefundQueryResult extends WxPayBaseResult {
this.refundRecords = refundRecords; this.refundRecords = refundRecords;
} }
public void composeRefundRecords(String xmlString) { /**
* 组装生成退款记录属性的内容
*/
public void composeRefundRecords() {
if (this.refundCount != null && this.refundCount > 0) { if (this.refundCount != null && this.refundCount > 0) {
this.refundRecords = Lists.newArrayList(); this.refundRecords = Lists.newArrayList();
XmlPath xmlPath = new XmlPath(xmlString); XmlPath xmlPath = new XmlPath(this.getXmlString());
for (int i = 0; i < this.refundCount; i++) { for (int i = 0; i < this.refundCount; i++) {
RefundRecord refundRecord = new RefundRecord(); RefundRecord refundRecord = new RefundRecord();

View File

@ -33,9 +33,8 @@ public class WxPayRefundQueryResultTest {
" <transaction_id><![CDATA[1008450740201411110005820873]]></transaction_id>\n" + " <transaction_id><![CDATA[1008450740201411110005820873]]></transaction_id>\n" +
"</xml>"; "</xml>";
WxPayRefundQueryResult result = new WxPayRefundQueryResult(); WxPayRefundQueryResult result = WxPayRefundQueryResult.fromXML(xmlString, WxPayRefundQueryResult.class);
result.setRefundCount(1); result.composeRefundRecords();
result.composeRefundRecords(xmlString);
Assert.assertNotNull(result.getRefundRecords()); Assert.assertNotNull(result.getRefundRecords());
Assert.assertEquals(result.getRefundRecords().size(), 1); Assert.assertEquals(result.getRefundRecords().size(), 1);