Ver Fonte

【博思达】【小米库存对接 修改】

samhoo há 3 anos atrás
pai
commit
ba7c42c941

+ 5 - 5
src/main/java/com/uas/eis/task/SyncProductStockTask.java

@@ -43,10 +43,10 @@ public class SyncProductStockTask {
         System.out.println("format:"+format);
         data.put("request_time",format);
         List<Map<String,Object>> list = new ArrayList<>();
-        String Sql="select * from (select ct_code,CUSTOMTABLEDETAIL.*,nvl(remain_sum,0) remain_sum,nvl(pr_unit,'PCS') pr_unit from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
-                " left join (select ba_prodcode,sum(ba_remain) remain_sum from batch where nvl(ba_remain,0)>0 group by ba_prodcode) A on ba_prodcode=cd_varchar50_1 " +
-                " left join product on cd_varchar50_1=pr_code" +
-                " where 1=2 and ct_caller='XiaoMiProduct' order by cd_detno) where rownum<=3 and rownum>1";
+        String Sql="select * from (select rownum rn, A.* from (select ct_code,CUSTOMTABLEDETAIL.*,nvl(remain_sum,0) remain_sum,nvl(pr_unit,'PCS') pr_unit from CUSTOMTABLE left join CUSTOMTABLEDETAIL on ct_id=cd_ctid " +
+                "                 left join (select ba_prodcode,sum(ba_remain) remain_sum from batch where nvl(ba_remain,0)>0 group by ba_prodcode) A on ba_prodcode=cd_varchar50_1 " +
+                "                 left join product on cd_varchar50_1=pr_code " +
+                "                 where ct_caller='XiaoMiProduct' order by cd_detno) A) where rn<=5 and rn>4";
         SqlRowList rs = baseDao.queryForRowSet(Sql);
         while (rs.next()){
             Map<String,Object> map = new HashMap<>();
@@ -65,7 +65,7 @@ public class SyncProductStockTask {
         System.out.println("1啊"+data);
         System.out.println("2啊"+ JSON.toJSONString(data));
         if(list.size()>0){
-            x5JsonHttpClient.post(data);
+            x5JsonHttpClient.post(data,"ProductStock");
         }
     }
 }

+ 11 - 6
src/main/java/com/uas/eis/task/httpclient/X5JsonHttpClient.java

@@ -33,8 +33,13 @@ public class X5JsonHttpClient extends X5HttpClient {
         this.baseDao = baseDao;
     }
 
-    public <T> X5Response<T> post(Object body) {
-
+    public <T> X5Response<T> post(Object body, String type) {
+        String kind="";
+        if("ProductStock".equals(type)){
+            kind="物料库存同步";
+        }else if("ProductWIP".equals(type)){
+            kind="物料WIP同步";
+        }
         X5Response<T> x5Response;
         if (X5StringUtils.isEmpty(appid) || X5StringUtils.isEmpty(appkey) || X5StringUtils.isEmpty(url)) {
             throw new X5Exception("1016", "The request at least contains appid appkey and url.");
@@ -76,12 +81,12 @@ public class X5JsonHttpClient extends X5HttpClient {
             String responseContent = EntityUtils.toString(httpResponse.getEntity(), "utf-8");
             if (statusCode == 200) {
                 x5Response = JSON.parseObject(responseContent, X5Response.class);
-                baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT)" +
-                        "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'上传成功!','')");
+                baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT,ML_TYPE)" +
+                        "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'上传成功!','','"+kind+"')");
                 logger.info("时间:"+new Date()+"状态码:"+statusCode);
             } else {
-                baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT)" +
-                        "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'上传失败!','"+statusLine.getStatusCode() + " " + statusLine.getReasonPhrase()+"')");
+                baseDao.execute("insert into XIAOMIDOCKINGLOG(ML_ID,ML_DATE,ML_CONTENT,ML_RESULT,ML_TYPE)" +
+                        "values(XIAOMIDOCKINGLOG_seq.nextval,sysdate,'上传失败!','"+statusLine.getStatusCode() + " " + statusLine.getReasonPhrase()+"','"+kind+"')");
 
                 logger.info("时间:"+new Date()+"状态码:"+statusLine.getStatusCode()+"错误:"+statusLine.getReasonPhrase());
                 throw new HttpResponseException(statusLine.getStatusCode(), statusLine.getStatusCode() + " " + statusLine.getReasonPhrase());