xiejun
2023-11-17 c520fd24a5f0f38290a1ccbc6ed2195de43463cb
在·
已修改2个文件
7 ■■■■ 文件已修改
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -3965,6 +3965,9 @@
                childOidPathMap.put(childPath.getOid(),thisClassifyPath);
            });
        }
        String path=classifyFullInfo.getCurrentClassifyVO().getId();
        //根据客户选择的分类路径未id,还是name确定路径拼接
        childOidPathMap.put(classifyFullInfo.getCurrentClassifyVO().getOid(),fullPath);
        return childOidPathMap;
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -108,7 +108,7 @@
            //主要是为了录入最大流水号和allcode
            //SessionInfo sessionInfo = VciBaseUtil.getCurrentUserSessionInfo();
            List<CodeAllCode> allCodeDOList = new CopyOnWriteArrayList<>();
            Map<String/**流水依据**/, ConcurrentHashMap<String/**码段的主键**/,String/**最大流水号**/>> maxSerialMap = new ConcurrentHashMap<>();
            Map<String/**流水依据**/, HashMap<String/**码段的主键**/,String/**最大流水号**/>> maxSerialMap = new HashMap<>();
            // TODO 多线程流引发的问题已修改
            dataCBOList.parallelStream().forEach(cbo->{
                log.info("code:----->"+cbo.getId());
@@ -182,7 +182,7 @@
                                OsCodeFillTypeEnum.LEFT.getValue().equalsIgnoreCase(secVO.getCodeFillType()));
                        }
                        Double newSerialDb= CustomSerialEnum.getDoubleCustomSerialValue(secValue,secVO.getCustomCodeSerialType());
                        ConcurrentHashMap<String, String> thisUnitMaxMap = maxSerialMap.getOrDefault(serialUnitString, new ConcurrentHashMap<>());
                        HashMap<String, String> thisUnitMaxMap = maxSerialMap.getOrDefault(serialUnitString, new HashMap<>());
                        Double maxValue=newSerialDb;
                        if(thisUnitMaxMap.containsKey(secOid)){
                            String     newMaxValue=  thisUnitMaxMap.getOrDefault(secOid,"");