田源
2023-10-17 a311e004cb184faa161c8ac35725cac72e0f92f3
Merge remote-tracking branch 'origin/master'
已修改3个文件
已添加1个文件
261 ■■■■■ 文件已修改
Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml 195 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java
@@ -5,8 +5,6 @@
import org.apache.commons.beanutils.ConvertUtils;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import java.lang.reflect.Field;
import java.lang.reflect.Type;
import java.text.ParseException;
Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,195 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdm modelcode="wl" time="2023-10-15 10:14:48" uuid="20231015101448" state="3">
    <codeinfo>
        <typecode>180101</typecode>
        <wlid>44822D85-C496-37FB-1734-24AE2CD17628</wlid>
        <wlcode>B0203104500</wlcode>
        <desc>螺栓|GB/T 5789-1986|M10×80|8.8|钢|A或B型|氧化|Ct.O</desc>
        <fields>
            <field>
                <name>企业编码</name>
                <value>B0203104500</value>
            </field>
            <field>
                <name>所属分类编码</name>
                <value>180101</value>
            </field>
            <field>
                <name>长描述</name>
                <value>螺栓|GB/T 5789-1986|M10×80|8.8|钢|A或B型|氧化|Ct.O</value>
            </field>
            <field>
                <name>短描述</name>
                <value></value>
            </field>
            <field>
                <name>集团分类代码</name>
                <value>34151102</value>
            </field>
            <field>
                <name>集团分类名称</name>
                <value>螺栓</value>
            </field>
            <field>
                <name>所属单位</name>
                <value>中国北方车辆研究所</value>
            </field>
            <field>
                <name>物资名称</name>
                <value>六角法兰面螺栓-加大系列-B级</value>
            </field>
            <field>
                <name>物资简称</name>
                <value>螺栓</value>
            </field>
            <field>
                <name>物资别名</name>
                <value></value>
            </field>
            <field>
                <name>特殊要求</name>
                <value>Ct.O</value>
            </field>
            <field>
                <name>申请说明</name>
                <value>TT--Ct.O-B0203104500</value>
            </field>
            <field>
                <name>计量单位</name>
                <value>ä»¶(ä»¶)</value>
            </field>
            <field>
                <name>密级</name>
                <value>非涉密(非涉密)</value>
            </field>
            <field>
                <name>材质</name>
                <value>钢</value>
            </field>
            <field>
                <name>规格</name>
                <value>M10×80</value>
            </field>
            <field>
                <name>牌号</name>
                <value></value>
            </field>
            <field>
                <name>性能等级</name>
                <value>8.8</value>
            </field>
            <field>
                <name>表面处理</name>
                <value>氧化</value>
            </field>
            <field>
                <name>产品等级</name>
                <value>A或B型</value>
            </field>
            <field>
                <name>集团码</name>
                <value>200181516</value>
            </field>
            <field>
                <name>产品标准号</name>
                <value>GB/T 5789-1986</value>
            </field>
        </fields>
    </codeinfo>
    <codeinfo>
        <typecode>180101</typecode>
        <wlid>59988666-C390-0BEF-B415-84FAAE76DF7F</wlid>
        <wlcode>B0203104202</wlcode>
        <desc>螺栓|GB/T 5789-1986|M10×60|12.9|钢|A|氧化|Ct.O</desc>
        <fields>
            <field>
                <name>企业编码</name>
                <value>B0203104202</value>
            </field>
            <field>
                <name>所属分类编码</name>
                <value>180101</value>
            </field>
            <field>
                <name>长描述</name>
                <value>螺栓|GB/T 5789-1986|M10×60|12.9|钢|A|氧化|Ct.O</value>
            </field>
            <field>
                <name>短描述</name>
                <value></value>
            </field>
            <field>
                <name>集团分类代码</name>
                <value>34151102</value>
            </field>
            <field>
                <name>集团分类名称</name>
                <value>螺栓</value>
            </field>
            <field>
                <name>所属单位</name>
                <value>中国北方车辆研究所</value>
            </field>
            <field>
                <name>物资名称</name>
                <value>六角法兰面螺栓-加大系列-B级</value>
            </field>
            <field>
                <name>物资简称</name>
                <value>螺栓</value>
            </field>
            <field>
                <name>物资别名</name>
                <value></value>
            </field>
            <field>
                <name>特殊要求</name>
                <value>Ct.O</value>
            </field>
            <field>
                <name>申请说明</name>
                <value>TT--Ct.O-B0203104202</value>
            </field>
            <field>
                <name>计量单位</name>
                <value>ä»¶(ä»¶)</value>
            </field>
            <field>
                <name>密级</name>
                <value>非涉密(非涉密)</value>
            </field>
            <field>
                <name>材质</name>
                <value>钢</value>
            </field>
            <field>
                <name>规格</name>
                <value>M10×60</value>
            </field>
            <field>
                <name>牌号</name>
                <value></value>
            </field>
            <field>
                <name>性能等级</name>
                <value>12.9</value>
            </field>
            <field>
                <name>表面处理</name>
                <value>氧化</value>
            </field>
            <field>
                <name>产品等级</name>
                <value>A</value>
            </field>
            <field>
                <name>集团码</name>
                <value>200181515</value>
            </field>
            <field>
                <name>产品标准号</name>
                <value>GB/T 5789-1986</value>
            </field>
        </fields>
    </codeinfo>
</mdm>
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -31,6 +31,7 @@
import com.vci.ubcs.starter.web.util.VciDateUtil;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -278,8 +279,27 @@
                    QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
                    wrapper.eq("CREATECODEBTM",addCodeDOs.get(0).getCreateCodeBtm());
                    wrapper.in("ID",addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
                    if(codeAllCodeService.count(wrapper)>0){
                    List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
                    List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
                    if(codeAllCodes.size()>takeBack.size()){
                        throw new ServiceException("生成编码数据ID已有历史记录,请确认如下生成的ID数据:"+ addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
                    }
                    for (CodeAllCode codeAllCode : takeBack) {
                        codeAllCode.setLcStatus("Released");
                        codeAllCode.setTs(new Date());
                        codeAllCode.setLastModifyTime(new Date());
                        codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
                        Iterator<CodeAllCode> iterator = addCodeDOs.iterator();
                        while (iterator.hasNext()){
                            CodeAllCode next = iterator.next();
                            if(codeAllCode.getId().equals(next.getId())){
                                codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
                                iterator.remove();
                            }
                        }
                    }
                    if(takeBack.size()>0){
                        codeAllCodeService.updateBatchById(takeBack);
                    }
                    codeAllCodeService.saveBatch(addCodeDOs);
                }
@@ -365,9 +385,29 @@
            QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
            wrapper.eq("CREATECODEBTM",allCodeDOList.get(0).getCreateCodeBtm());
            wrapper.in("ID",allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
            if(codeAllCodeService.count(wrapper)>0){
            List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
            List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
            if(codeAllCodes.size()>takeBack.size()){
                throw new ServiceException("生成编码数据ID已有历史记录,请确认如下生成的ID数据:"+ allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
            }
            for (CodeAllCode codeAllCode : takeBack) {
                codeAllCode.setLcStatus("Released");
                codeAllCode.setTs(new Date());
                codeAllCode.setLastModifyTime(new Date());
                codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
                Iterator<CodeAllCode> iterator = allCodeDOList.iterator();
                while (iterator.hasNext()){
                    CodeAllCode next = iterator.next();
                    if(codeAllCode.getId().equals(next.getId())){
                        codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
                        iterator.remove();
                    }
                }
            }
            if(takeBack.size()>0){
                codeAllCodeService.updateBatchById(takeBack);
            }
            codeAllCodeService.saveBatch(allCodeDOList);
//            iCodeWupinService.saveBatch(dataCBOList);
            mdmEngineService.insertBatchByType(dataCBOList.get(0).getBtmname(),dataCBOList);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -1661,9 +1661,9 @@
                                            if (!CollectionUtils.isEmpty(ListMap)) {
                                                ListMap.stream().forEach(map -> {
                                                    num[0]++;
                                                    String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                                    String value = map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
                                                    String text = map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
                                                    String id =Func.isNull(map.getOrDefault("OID".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                                    String value = Func.isNull(map.getOrDefault(valueField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
                                                    String text =Func.isNull(map.getOrDefault(textField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
                                                    String description = map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
                                                    CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, "", description);
                                                    codeSectionValueVOList.add(sectionValueVO);
@@ -1750,11 +1750,11 @@
                                            if (!CollectionUtils.isEmpty(ListMap)) {
                                                ListMap.stream().forEach(map -> {
                                                    num[0]++;
                                                    String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                                    String value = map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
                                                    String text = map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
                                                    String description = map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
                                                    String pid = map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), "").toString();
                                                    String id =Func.isNull(map.getOrDefault("OID".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
                                                    String value =Func.isNull(map.getOrDefault(valueField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
                                                    String text =Func.isNull(map.getOrDefault(textField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
                                                    String description =Func.isNull(map.getOrDefault("description".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
                                                    String pid =Func.isNull(map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), "").toString();
                                                    CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, pid, description);
                                                    codeSectionValueVOList.add(sectionValueVO);
                                                });
@@ -2135,7 +2135,7 @@
                if (!CollectionUtils.isEmpty(codeClassifyList)) {
                    codeClassifyList.stream().forEach(codeClassify -> {
                        CodeClassifyVO codeClassifyVO=  classifyService.getTopClassifyVO(codeClassify.getOid());
                        if(codeClassifyVO.getId().equals(libray)){
                        if(codeClassifyVO.getId().toLowerCase(Locale.ROOT).equals(libray.toLowerCase(Locale.ROOT))){
                            newCodeClassify[0] =codeClassify;
                        }
                    });
@@ -2177,7 +2177,7 @@
                if (!CollectionUtils.isEmpty(codeClassifyList)) {
                    codeClassifyList.stream().forEach(codeClassify -> {
                        CodeClassifyVO codeClassifyVO=  classifyService.getTopClassifyVO(codeClassify.getOid());
                        if(codeClassifyVO.getId().equals(libray)){
                        if(codeClassifyVO.getId().toLowerCase(Locale.ROOT).equals(libray.toLowerCase(Locale.ROOT))){
                            newCodeClassify[0] =codeClassify;
                        }
                    });