Forráskód Böngészése

获取在保资产清单

Jxing 6 éve
szülő
commit
ffe2e210d6

+ 70 - 0
src/main/java/com/sagacloud/pojos/WarrantyList.java

@@ -0,0 +1,70 @@
+package com.sagacloud.pojos;
+/*
+ * Author: Jxing
+ * Create Time: 2018/7/12
+ */
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+import java.util.List;
+
+public class WarrantyList {
+    private String result;
+    private String resultMsg;
+    @JSONField(name="content")
+    private List<WarrantyList> warrantyList;
+
+    public String getResult() {
+        return result;
+    }
+
+    public void setResult(String result) {
+        this.result = result;
+    }
+
+    public String getResultMsg() {
+        return resultMsg;
+    }
+
+    public void setResultMsg(String resultMsg) {
+        this.resultMsg = resultMsg;
+    }
+
+    public List<WarrantyList> getWarrantyList() {
+        return warrantyList;
+    }
+
+    public void setWarrantyList(List<WarrantyList> warrantyList) {
+        this.warrantyList = warrantyList;
+    }
+
+    public class Warrnaty{
+        private String insuranceNo;
+        private String expireDate;
+        private String contractFile;
+
+        public String getInsuranceNo() {
+            return insuranceNo;
+        }
+
+        public void setInsuranceNo(String insuranceNo) {
+            this.insuranceNo = insuranceNo;
+        }
+
+        public String getExpireDate() {
+            return expireDate;
+        }
+
+        public void setExpireDate(String expireDate) {
+            this.expireDate = expireDate;
+        }
+
+        public String getContractFile() {
+            return contractFile;
+        }
+
+        public void setContractFile(String contractFile) {
+            this.contractFile = contractFile;
+        }
+    }
+}

+ 2 - 1
src/main/java/com/sagacloud/route/Route.java

@@ -3,6 +3,7 @@ package com.sagacloud.route;
 import com.github.rjeschke.txtmark.Processor;
 import com.sagacloud.Exceptions.InvalidPostException;
 import com.sagacloud.route.processors.GetInsuranceNoListProcessor;
+import com.sagacloud.route.processors.handleWarrantyFromVenderProcessor;
 import com.sagacloud.utils.VendersUtil;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
@@ -46,7 +47,7 @@ public class Route extends RouteBuilder {
                 .route()
                 .process(new GetInsuranceNoListProcessor())
                 .to(String.join("", InitEnvRoute.venders, "/insurance/contract/query"))
-                .process(new GetInsuranceNoListProcessor())
+                .process(new handleWarrantyFromVenderProcessor())
                 .to(String.join("", InitEnvRoute.dataPlatform, "/property/relation_query"))
                 .process(new GetInsuranceNoListProcessor());
         // 获取所有保单列表

+ 2 - 2
src/main/java/com/sagacloud/route/processors/GetInsuranceNoListProcessor.java

@@ -20,10 +20,10 @@ public class GetInsuranceNoListProcessor implements Processor {
     public void process(Exchange exchange) throws Exception {
         String jsonStr = exchange.getIn().getBody(String.class);
         InsurancePost post = JSONObject.parseObject(jsonStr, InsurancePost.class);
-
+        System.out.println(ProPasCache.getPjSecret(post.getProjectId()));
         if(post.getVenderId() == null || post.getProjectId() == null || ProPasCache.getPjSecret(post.getProjectId()) == null)
             throw new InvalidPostException("参数错误!");
-        //exchange.getIn().setBody();
+        exchange.getIn().setBody(jsonStr);
         exchange.setProperty("postParam", post);
         exchange.getIn().setHeader(Exchange.HTTP_URI, String.join("", InitEnvRoute.venders, "/insurance/contract/query?method=POST"));
         exchange.getIn().setHeader(Exchange.HTTP_QUERY,String.join("", Const.HEADER_PROJECT , "=", post.getProjectId(),

+ 33 - 0
src/main/java/com/sagacloud/route/processors/handleWarrantyFromVenderProcessor.java

@@ -0,0 +1,33 @@
+package com.sagacloud.route.processors;
+/*
+ * Author: Jxing
+ * Create Time: 2018/7/12
+ */
+
+import com.alibaba.fastjson.JSONObject;
+import com.sagacloud.Exceptions.InvalidPostException;
+import com.sagacloud.cache.ProPasCache;
+import com.sagacloud.pojos.InsurancePost;
+import com.sagacloud.pojos.WarrantyList;
+import com.sagacloud.route.InitEnvRoute;
+import com.sagacloud.utils.Const;
+import org.apache.camel.Exchange;
+import org.apache.camel.Processor;
+
+public class handleWarrantyFromVenderProcessor implements Processor {
+    @Override
+    public void process(Exchange exchange) throws Exception {
+        String jsonStr = exchange.getIn().getBody(String.class);
+        WarrantyList warrantyList = JSONObject.parseObject(jsonStr, WarrantyList.class);
+
+        if(warrantyList.getResult().equals("failure"))
+            throw new InvalidPostException(warrantyList.getResultMsg() != null && warrantyList.getResult().length() > 0?
+                    String.join("", "厂商库异常:", warrantyList.getResultMsg()) : "厂商库访问出错!");
+//
+//        //exchange.getIn().setBody();
+//        exchange.setProperty("postParam", post);
+//        exchange.getIn().setHeader(Exchange.HTTP_URI, String.join("", InitEnvRoute.venders, "/insurance/contract/query?method=POST"));
+//        exchange.getIn().setHeader(Exchange.HTTP_QUERY,String.join("", Const.HEADER_PROJECT , "=", post.getProjectId(),
+//                "&", Const.HEADER_SECRET, "=", ProPasCache.getPjSecret(post.getProjectId())));
+    }
+}