瀏覽代碼

<feat>:修改
1、供应商同步,增加数据来源

wanghaiwu 8 小時之前
父節點
當前提交
d34b902174

+ 14 - 4
code/jyyy/nckd-jimin-jyyy-bd/src/main/java/nckd/jimin/jyyy/bd/task/SynSupplierFromSAPTask.java

@@ -83,7 +83,7 @@ public class SynSupplierFromSAPTask extends AbstractTask implements StopTask {
             logger.info("------同步组织 " + org.getString("number") + "(" + org.getString("number") + ")下的供应商----------");
             String orgNumber = org.getString("number");
 
-            buildSupplier(supplierNameMap, supplierOrgMap, param_supplierurl, header, orgNumber);
+            buildSupplier(supplierNameMap, supplierOrgMap, param_supplierurl, header, orgNumber, map);
         }
 
         if(supplierNameMap.size() > 0){
@@ -112,8 +112,10 @@ public class SynSupplierFromSAPTask extends AbstractTask implements StopTask {
      * @param orgNumber
      */
     private void buildSupplier(Map<String, String> supplierNameMap, Map<String, List<String>> supplierOrgMap
-                                , String url, Map<String, String> header, String orgNumber){
+                                , String url, Map<String, String> header, String orgNumber, Map<String, Object> map){
         try {
+
+
             JSONObject jsonData = new JSONObject();
 
             jsonData.put("BUKRS", orgNumber);
@@ -156,15 +158,22 @@ public class SynSupplierFromSAPTask extends AbstractTask implements StopTask {
             }
 
             int size = 0;
+            int maxSize = 0;
+            if(map.get("maxCount") != null){
+                maxSize = Integer.parseInt(map.get("maxCount").toString());
+            }
+
             for(int i = 0; i < rItemArray.size(); ++i) {
                 JSONObject item = rItemArray.getJSONObject(i);
                 String number = item.getString("LIFNR");
 
                 if(StringUtils.isNotEmpty(number) && "5".equals(number.substring(0, 1))){
                     size++;
-                    if(size > 100){
+
+                    if(maxSize > 0 && size > maxSize){
                         break;
                     }
+
                     String name = item.getString("NAME1");
 
                     if(!supplierNameMap.containsKey(number)){
@@ -219,11 +228,13 @@ public class SynSupplierFromSAPTask extends AbstractTask implements StopTask {
         if (supplier == null) {
             supplier = BusinessDataServiceHelper.newDynamicObject(ENTITY_SUPPLIER);
             supplier.set("status", "A");
+            supplier.set("createtime", curDate);
         } else {
             supplierId = supplier.getLong("id");
             isUpdate = true;
         }
 
+        supplier.set("nckd_datasource", "sap");
 //        supplier.set("societycreditcode", "test");
 
         supplier.set("type", type);
@@ -254,7 +265,6 @@ public class SynSupplierFromSAPTask extends AbstractTask implements StopTask {
         supplier.set("creator", user);
         supplier.set("createorg", defaultOrg);
         supplier.set("org", defaultOrg);
-        supplier.set("createtime", curDate);
 
         qFilter = new QFilter("number", QCP.equals, param_suppliertype);
         qFilter.and(new QFilter("enable", QCP.equals, "1"));

+ 10 - 1
code/jyyy/nckd-jimin-jyyy-bd/src/main/java/nckd/jimin/jyyy/bd/webapi/SynSupplierApiPlugin.java

@@ -151,6 +151,12 @@ public class SynSupplierApiPlugin implements Serializable {
         String supplierNumber = jsonData.getString("mdCode");
         //供应商名称
         String supplierName = jsonData.getString("mdDescription");
+        //数据来源
+        String dataSource = jsonData.getString("dataSource");
+        if(StringUtils.isEmpty(dataSource)){
+            dataSource = "mdm";
+        }
+
         //供应商类型:法人企业1,非法人企业2,非企业单位3,个人4,个体户5
         String type = "1";
         //社会信用识别码societycreditcode
@@ -167,10 +173,13 @@ public class SynSupplierApiPlugin implements Serializable {
         if (supplier == null) {
             supplier = BusinessDataServiceHelper.newDynamicObject(ENTITY_SUPPLIER);
             supplier.set("status", "A");
+            supplier.set("createtime", curDate);
         } else {
             supplierId = supplier.getLong("id");
             isUpdate = true;
         }
+
+        supplier.set("nckd_datasource", "mdm");
         supplier.set("societycreditcode", uniqueCode);
         supplier.set("type", type);
         supplier.set("number", supplierNumber);
@@ -193,7 +202,7 @@ public class SynSupplierApiPlugin implements Serializable {
         supplier.set("creator", createUser);
         supplier.set("createorg", defaultOrg);
         supplier.set("org", defaultOrg);
-        supplier.set("createtime", curDate);
+
 
 
         supplier.set("group", supplierGroup);