Преглед на файлове

Merge remote-tracking branch 'origin/master'

“lqy преди 2 месеца
родител
ревизия
5a6574da90

+ 7 - 1
mjava-huagao/src/main/java/com/malk/huagao/schedule/KdScheduleTask.java

@@ -22,6 +22,12 @@ public class KdScheduleTask {
     //每周五 18:00定时同步序列号主档
     @Scheduled(cron = "0 0 18 * * 5")
     public void syncBDSerialMainFile(){
-        kdHuaGaoService.syncBDSerialMainFile();//
+        kdHuaGaoService.syncBDSerialMainFile();
     }
+
+    //定时即时库存明细
+    /*@Scheduled(cron = "")
+    public void syncSTKInventory(){
+        kdHuaGaoService.syncSTKInventory();
+    }*/
 }

+ 1 - 0
mjava-huagao/src/main/java/com/malk/huagao/service/KdHuaGaoService.java

@@ -3,4 +3,5 @@ package com.malk.huagao.service;
 public interface KdHuaGaoService {
     void syncBDSerialMainFile();
 
+    void syncSTKInventory();
 }

+ 46 - 0
mjava-huagao/src/main/java/com/malk/huagao/service/impl/KdHuaGaoServiceImpl.java

@@ -142,6 +142,8 @@ public class KdHuaGaoServiceImpl implements KdHuaGaoService {
                     formData.put("numberField_mev270x5",month);
                     formData.put("textField_mev2ers5",weekOfMonth);
 
+                    formData.put("numberField_mfat6egj",1);//统计数值,默认1
+
                     ydClient.operateData(YDParam.builder()
                             .formUuid("FORM-3B2E5C93D7E6494B9AD920B48A90159F7DZ4")
                             .formDataJson(JSONObject.toJSONString(formData))
@@ -154,6 +156,50 @@ public class KdHuaGaoServiceImpl implements KdHuaGaoService {
 
     }
 
+    @Override
+    public void syncSTKInventory() {
+        MDC.put("MDC_KEY_PID","1002");
+
+        try {
+            K3CloudApi client = new K3CloudApi(initIden());
+
+            int startRow = 0;
+            int limit = 2000;
+
+            BillQuery billQuery = new BillQuery();
+
+            billQuery.setLimit(limit);
+            billQuery.setFormId("STK_Inventory");
+            billQuery.setFieldKeys("FMaterialId,FStockId,FLot,FStockUnitId,FQty,FAVBQty,FBaseQty,FBaseAVBQty,FStockStatusId");
+            List<Map> filterString = new ArrayList<>();
+            //仓库等于成品仓 仓位等于默认仓位或样机仓位 在库状态等于待入库或在库
+            /*filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FStockId.FName","67","成品仓","","","0"));//仓库名称等于XX
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FStockLocId.FF100001.FName","67","默认仓位","(","","1"));//仓位等于XX
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FStockLocId.FF100001.FName","67","样机仓位","",")","0"));//仓位等于XX
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FStockStatus","29","0","(","","1"));//在库状态等于XX
+            filterString.add(UtilMap.map("FieldName, Compare, Value, Left, Right, Logic","FStockStatus","29","1","",")","0"));//在库状态等于XX*/
+
+            billQuery.setFilterString(filterString);
+
+            List<Map> result = new ArrayList<>();
+            List<Map> list = new ArrayList<>();
+
+            do {
+                billQuery.setStartRow(startRow);
+                String s = client.billQuery(JSONObject.toJSONString(billQuery));
+                result = (List<Map>)JSONObject.parse(s);
+                list.addAll(result);
+
+                startRow += limit;
+            }while (result.size() == limit);
+
+
+        }catch (Exception e){
+            fail(e.getMessage());
+        }
+
+    }
+
     private IdentifyInfo initIden(){
         //注意 1:此处不再使用参数形式传入用户名及密码等敏感信息,改为在登录配置文件中设置。
         //注意 2:必须先配置第三方系统登录授权信息后,再进行业务操作,详情参考各语言版本SDK介绍中的登录配置文件说明。