1098226878@qq.com лет назад: 4
Родитель
Сommit
955e63a7a2

+ 12 - 9
service-api/src/main/java/com/java110/api/smo/payment/impl/ToPayTempCarFeeSMOImpl.java

@@ -23,6 +23,7 @@ import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.StringUtil;
+import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,10 +33,7 @@ import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.UUID;
+import java.util.*;
 
 @Service("toPayTempCarFeeSMOImpl")
 public class ToPayTempCarFeeSMOImpl extends AppAbstractComponentSMO implements IToPayTempCarFeeSMO {
@@ -69,6 +67,7 @@ public class ToPayTempCarFeeSMOImpl extends AppAbstractComponentSMO implements I
         Assert.jsonObjectHaveKey(paramIn, "openId", "请求报文中未包含openId节点");
         Assert.jsonObjectHaveKey(paramIn, "paId", "请求报文中未包含paId节点");
         Assert.jsonObjectHaveKey(paramIn, "inoutId", "请求报文中未包含inoutId节点");
+        Assert.jsonObjectHaveKey(paramIn, "couponList", "请求报文中未包含couponList节点");
 
     }
 
@@ -86,13 +85,17 @@ public class ToPayTempCarFeeSMOImpl extends AppAbstractComponentSMO implements I
             smallWeChatDto.setMchId(wechatAuthProperties.getMchId());
             smallWeChatDto.setPayPassword(wechatAuthProperties.getKey());
         }
-
-
+        JSONArray couponList = paramIn.getJSONArray("couponList");
+        List<String> couponIds = new ArrayList<String>();
+        if (couponList != null && couponList.size() > 0) {
+            for (int couponIndex = 0; couponIndex < couponList.size(); couponIndex++) {
+                couponIds.add(couponList.getJSONObject(couponIndex).getString("couponId"));
+            }
+        }
         //查询用户ID
         paramIn.put("userId", pd.getUserId());
-        String url = "tempCarFee.getTempCarFeeOrder";
-       // responseEntity = super.callCenterService(restTemplate, pd, "", url, HttpMethod.GET);
-        responseEntity = super.callCenterService(restTemplate, pd, paramIn.toJSONString(), url, HttpMethod.POST);
+        String url = "tempCarFee.getTempCarFeeOrder?paId=" + paramIn.getString("paId") + "&carNum=" + paramIn.getString("carNum")+"&couponIds="+StringUtils.join(couponIds,",");
+        responseEntity = super.callCenterService(restTemplate, pd, "", url, HttpMethod.GET);
 
         if (responseEntity.getStatusCode() != HttpStatus.OK) {
             return responseEntity;

+ 8 - 8
service-fee/src/main/java/com/java110/fee/cmd/tempCarFee/GetTempCarFeeOrderCmd.java

@@ -22,6 +22,7 @@ import org.springframework.http.ResponseEntity;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -46,6 +47,7 @@ public class GetTempCarFeeOrderCmd extends AbstractServiceCmdListener {
 
         Assert.hasKeyAndValue(reqJson, "paId", "paId不能为空");
         Assert.hasKeyAndValue(reqJson, "carNum", "carNum不能为空");
+        Assert.hasKeyAndValue(reqJson, "couponIds", "couponIds不能为空");
 
     }
 
@@ -87,20 +89,18 @@ public class GetTempCarFeeOrderCmd extends AbstractServiceCmdListener {
     }
 
     private double checkCouponUser(JSONObject paramObj) {
-        JSONArray couponList = paramObj.getJSONArray("couponList");
-        BigDecimal couponPrice = new BigDecimal(0.0);
-        List<String> couponIds = new ArrayList<String>();
 
-        if (couponList == null || couponList.size() < 1) {
+        BigDecimal couponPrice = new BigDecimal(0.0);
+        String couponIds = paramObj.getString("couponIds");
+        if (couponIds == null || "".equals(couponIds)) {
             paramObj.put("couponPrice", couponPrice.doubleValue());
             paramObj.put("couponUserDtos", new JSONArray()); //这里考虑空
             return couponPrice.doubleValue();
         }
-        for (int couponIndex = 0; couponIndex < couponList.size(); couponIndex++) {
-            couponIds.add(couponList.getJSONObject(couponIndex).getString("couponId"));
-        }
+
+        List<String> result = Arrays.asList(couponIds.split(","));
         CouponUserDto couponUserDto = new CouponUserDto();
-        couponUserDto.setCouponIds(couponIds.toArray(new String[couponIds.size()]));
+        couponUserDto.setCouponIds(result.toArray(new String[result.size()]));
         List<CouponUserDto> couponUserDtos = couponUserV1InnerServiceSMOImpl.queryCouponUsers(couponUserDto);
         if (couponUserDtos == null || couponUserDtos.size() < 1) {
             paramObj.put("couponPrice", couponPrice.doubleValue());