Преглед изворни кода

1、MDM供应商接口,分配所有公司

wanghaiwu пре 1 месец
родитељ
комит
ad01773412

+ 66 - 47
code/jyyy/nckd-jimin-jyyy-bd/src/main/java/nckd/jimin/jyyy/bd/webapi/SynSupplierApiPlugin.java

@@ -44,6 +44,7 @@ public class SynSupplierApiPlugin implements Serializable {
     //所有核算组织map
     private static Map<String, String> allKdOrgName = null;
     private static Map<String, Long> allKdOrgId = null;
+    private static List<Long> allOrgIds = null;
 
     //默认组织
     private static DynamicObject defaultOrg = null;
@@ -123,11 +124,14 @@ public class SynSupplierApiPlugin implements Serializable {
 
         allKdOrgId = new HashMap<>();
         allKdOrgName = new HashMap<>();
+        allOrgIds = new ArrayList<>();
 
         DynamicObject[] orgList = BusinessDataServiceHelper.load("bos_org", "id, number, name", orgFilter.toArray());
         for(DynamicObject org : orgList){
             allKdOrgId.put(org.getString("number"), org.getLong("id"));
             allKdOrgName.put(org.getString("number"), org.getString("name"));
+
+            allOrgIds.add(org.getLong("id"));
         }
 
         //供应商状态:
@@ -166,7 +170,6 @@ public class SynSupplierApiPlugin implements Serializable {
             dataSource = "mdm";
         }
 
-
         if(StringUtils.isEmpty(supplierNumber)){
             returnMap.put("code", "500");
             returnMap.put("msg", "供应商编码为空!");
@@ -465,54 +468,70 @@ public class SynSupplierApiPlugin implements Serializable {
             return returnMap;
         }
 
-        List<Long> assignOrgIds = new ArrayList<>();
-        List<String> orgCodeList = new ArrayList<>();
-        List<String> orgCodeKdList = new ArrayList<>();
-
-        //分配公司信息
-//        JSONArray assignOrgArray = jsonData.getJSONArray("venBukrsE");
-        if(assignOrgArray != null && assignOrgArray.size() > 0){
-            for(int index = 0; index < assignOrgArray.size(); index++){
-                JSONObject assignOrg = assignOrgArray.getJSONObject(index);
-
-                String orgCode = assignOrg.getString("venBukrsCode");
-
-                if(!orgCodeList.contains(orgCode)) {
-                    orgCodeList.add(orgCode);
-
-                    if(allKdOrgId.containsKey(orgCode)){
-                        assignOrgIds.add(allKdOrgId.get(orgCode));
-                        orgCodeKdList.add(allKdOrgName.get(orgCode));
-                    }
-                }
-            }
-
-            if(assignOrgIds.size() > 0) {
-                String assignResult = assignOrg2Supplier(supplierId, assignOrgIds);
-
-                if (assignResult.isEmpty()) {
-                    returnMap.put("code", "0000");
-                    returnMap.put("msg", "同步成功、分配成功");
-
-                    return returnMap;
-                } else {
-                    returnMap.put("code", "500");
-                    returnMap.put("msg", "同步成功、分配失败");
-
-                    return returnMap;
-                }
-            }
-
-            if(orgCodeKdList.size() != orgCodeList.size()){
-                List<String> differenceList = orgCodeKdList.stream().filter(item -> !orgCodeKdList.contains(item)).collect(Collectors.toList());
-                if(differenceList.size() > 0){
-                    String unAssignOrgString = String.join(",", differenceList);
+//        List<Long> assignOrgIds = new ArrayList<>();
+//        List<String> orgCodeList = new ArrayList<>();
+//        List<String> orgCodeKdList = new ArrayList<>();
+//
+//        //分配公司信息
+////        JSONArray assignOrgArray = jsonData.getJSONArray("venBukrsE");
+//        if(assignOrgArray != null && assignOrgArray.size() > 0){
+//            for(int index = 0; index < assignOrgArray.size(); index++){
+//                JSONObject assignOrg = assignOrgArray.getJSONObject(index);
+//
+//                String orgCode = assignOrg.getString("venBukrsCode");
+//
+//                if(!orgCodeList.contains(orgCode)) {
+//                    orgCodeList.add(orgCode);
+//
+//                    if(allKdOrgId.containsKey(orgCode)){
+//                        assignOrgIds.add(allKdOrgId.get(orgCode));
+//                        orgCodeKdList.add(allKdOrgName.get(orgCode));
+//                    }
+//                }
+//            }
+//
+//            if(assignOrgIds.size() > 0) {
+//                String assignResult = assignOrg2Supplier(supplierId, allOrgIds);
+//
+//                if (assignResult.isEmpty()) {
+//                    returnMap.put("code", "0000");
+//                    returnMap.put("msg", "同步成功、分配成功");
+//
+//                    return returnMap;
+//                } else {
+//                    returnMap.put("code", "500");
+//                    returnMap.put("msg", "同步成功、分配失败");
+//
+//                    return returnMap;
+//                }
+//            }
+//
+//            if(orgCodeKdList.size() != orgCodeList.size()){
+//                List<String> differenceList = orgCodeKdList.stream().filter(item -> !orgCodeKdList.contains(item)).collect(Collectors.toList());
+//                if(differenceList.size() > 0){
+//                    String unAssignOrgString = String.join(",", differenceList);
+//
+//                    returnMap.put("code", "500");
+//                    returnMap.put("msg", "部分组织分配失败:" + unAssignOrgString + ", 这些组织在星瀚中未匹配到或不是CU!");
+//
+//                    return returnMap;
+//                }
+//            }
+//        }
+
+        if(allOrgIds.size() > 0) {
+            String assignResult = assignOrg2Supplier(supplierId, allOrgIds);
+
+            if (assignResult.isEmpty()) {
+                returnMap.put("code", "0000");
+                returnMap.put("msg", "同步成功、分配成功");
 
-                    returnMap.put("code", "500");
-                    returnMap.put("msg", "部分组织分配失败:" + unAssignOrgString + ", 这些组织在星瀚中未匹配到或不是CU!");
+                return returnMap;
+            } else {
+                returnMap.put("code", "500");
+                returnMap.put("msg", "同步成功、分配失败");
 
-                    return returnMap;
-                }
+                return returnMap;
             }
         }