ludc
2023-12-05 b40cd8c94978d43f9d13ba9ee93a4164b68a8165
赋默认值工具类修改,根据多线程流情况修改
已修改14个文件
156 ■■■■ 文件已修改
Source/UBCS/ubcs-ops/ubcs-resource/src/main/java/com/vci/ubcs/resource/service/impl/FileServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/DefaultAttrAssimtUtil.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/DockingPreAttrMappingServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeTempphaseServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-resource/src/main/java/com/vci/ubcs/resource/service/impl/FileServiceImpl.java
@@ -279,7 +279,7 @@
        fileObject.setObjectName(bladeFile.getName());
        fileObject.setFileLink(bladeFile.getLink());
        // 添加之前赋默认值
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(fileObject, MdmBtmTypeConstant.FILE_OBJECT);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(fileObject, MdmBtmTypeConstant.FILE_OBJECT,null);
        fileObjectMapper.insert(fileObject);
        if(log.isDebugEnabled()){
            log.debug("新增文件",fileObject.toString());
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/DefaultAttrAssimtUtil.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.starter.util;
import com.alibaba.nacos.api.naming.pojo.healthcheck.impl.Http;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.revision.model.BaseModel;
@@ -7,7 +8,10 @@
import org.apache.poi.ss.formula.functions.T;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.WebUtil;
import org.springframework.web.util.WebUtils;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.text.ParseException;
@@ -33,7 +37,7 @@
     * @return
     * @throws VciBaseException
     */
    public static <T extends BaseModel> T addDefaultAttrAssimt(T object,String btmName) throws VciBaseException {
    public static <T extends BaseModel> T addDefaultAttrAssimt(T object, String btmName, HttpServletRequest request/*不在多线程流中使用就不需要传request*/) throws VciBaseException {
        BaseModel baseModel = object;
        try {
            baseModel.setOid(VciBaseUtil.getPk());
@@ -42,10 +46,9 @@
            baseModel.setLastModifyTime(new Date());
            baseModel.setTs(new Date());
            baseModel.setRevisionOid(VciBaseUtil.getPk());
            // 用户id
            // String userId = AuthUtil.getUserId().toString();
            String account = Func.isEmpty(request) ? AuthUtil.getUser().getAccount() : AuthUtil.getUser(request).getAccount();
            baseModel.setBtmname(btmName);
            baseModel.setCreator(AuthUtil.getUser().getAccount());
            baseModel.setCreator(account);
            baseModel.setFirstR("1");
            baseModel.setFirstV("1");
            baseModel.setLastR("1");
@@ -54,17 +57,17 @@
            // TODO:目前只有编码规则中有用到,后期需要去掉这段代码的话,就把他加在编码规则新增中去
            if(Func.isBlank(baseModel.getOwner())){
                // 设置所有者
                baseModel.setOwner(AuthUtil.getUserId().toString());
                baseModel.setOwner(Func.isEmpty(request) ? AuthUtil.getUserId().toString():AuthUtil.getUserId(request).toString());
            }
            baseModel.setVersionSeq(1);
            baseModel.setVersionRule("0");
            baseModel.setVersionValue("1");
            baseModel.setRevisionOid(VciBaseUtil.getPk());
            baseModel.setLastModifier(AuthUtil.getUser().getAccount());
            baseModel.setLastModifier(account);
            baseModel.setRevisionValue("1");
            baseModel.setRevisionRule("1");
            baseModel.setTenantId(AuthUtil.getTenantId());
            baseModel.setTenantId(Func.isEmpty(request) ? AuthUtil.getTenantId():AuthUtil.getTenantId(request));
        }catch (VciBaseException e){
            e.printStackTrace();
        }
@@ -78,7 +81,7 @@
     * @return
     * @throws VciBaseException
     */
    public static <T extends BaseModel> T updateDefaultAttrAssimt(T object) throws VciBaseException {
    public static <T extends BaseModel> T updateDefaultAttrAssimt(T object,HttpServletRequest request) throws VciBaseException {
        BaseModel baseModel = object;
        try {
            baseModel.setLastModifyTime(new Date());
@@ -86,7 +89,7 @@
            // 用户id
            // String userId = AuthUtil.getUserId().toString();
            // 要求改成账号
            String account = AuthUtil.getUserAccount();
            String account = Func.isEmpty(request) ? AuthUtil.getUser().getAccount() : AuthUtil.getUser(request).getAccount();
            baseModel.setLastModifier(account);
        }catch (VciBaseException e){
            e.printStackTrace();
@@ -101,7 +104,7 @@
     * @return
     * @throws VciBaseException
     */
    public static <T extends BaseModel> T copplyDefaultAttrAssimt(Map<String,String> dataMap, T object) throws VciBaseException {
    public static <T extends BaseModel> T copplyDefaultAttrAssimt(Map<String,String> dataMap, T object,HttpServletRequest request) throws VciBaseException {
        BaseModel baseModel = object;
        try {
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -112,7 +115,7 @@
                Object value=dataMap.get(key);
                newDataMap.put(key.toLowerCase(Locale.ROOT),value);
            }*/
        /*    dataMap.forEach((key,value)->{
            /*    dataMap.forEach((key,value)->{
                newDataMap.put(key.toLowerCase(Locale.ROOT),value);
            });*/
            //baseModel.setData((Map)newDataMap);
@@ -155,7 +158,7 @@
            baseModel.setVersionRule(dataMap.getOrDefault("VERSIONRULE",""));
            baseModel.setVersionValue(dataMap.getOrDefault("VERSIONVALUE",""));
            baseModel.setRevisionOid(dataMap.getOrDefault("REVISIONOID",""));
            baseModel.setLastModifier(AuthUtil.getUser().getAccount());
            baseModel.setLastModifier(Func.isEmpty(request) ? AuthUtil.getUser().getAccount() : AuthUtil.getUser(request).getAccount());
            baseModel.setLcStatus(dataMap.getOrDefault("LCSTATUS",""));
            baseModel.setName(dataMap.getOrDefault("NAME",""));
            baseModel.setTenantId(dataMap.getOrDefault("TENADTID",""));
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java
@@ -258,9 +258,9 @@
                if (dockingPreClassify == null|| StringUtils.isBlank(dockingPreClassify.getOid())) {
                    dockingPreClassify = new DockingPreClassify();
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify, MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify, MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY,null);
                } else {
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify,null);
                }
                dockingPreClassify.setOid(id);
                dockingPreClassify.setName(className);
@@ -314,10 +314,10 @@
                    jviewModelObject = jviewmodelMap.get(viewName);
                    //影响编码项的数据
                    jviewModelObject.setImpactList(impactList);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject,null);
                } else {
                    jviewModelObject =new DockingPreViewModel();
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL,null);
                    jviewModelObject.setSourceClassifyId(jclassId);// 集团分类id
                    jviewModelObject.setViewName(viewName);// 集团视图名称
                    //影响编码项的数据
@@ -372,9 +372,9 @@
                    dockingPreMetaAttr = jmetaattrMap.get(englishName);
                    dockingPreMetaAttr.setChineseName(chineseName);
                    dockingPreMetaAttr.setDefaultValue(defaultValue);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr,null);
                } else {
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR,null);
                    dockingPreMetaAttr.setSourceClassifyId(jclassId);// 集团分类id
                    dockingPreMetaAttr.setViewModelId(jviewModelObject.getOid());// 集团视图模型id
                    dockingPreMetaAttr.setChineseName(chineseName);// 属性名称
@@ -436,9 +436,9 @@
                    rangeObject = rangeMap.get(rangeKey);
                    rangeObject.setNumTextValue(keyValue);
                    rangeObject.setNumText(rangeKey);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject,null);
                } else {
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE,null);
                    rangeObject.setNumTextValue(keyValue);
                    rangeObject.setNumText(rangeKey);
                    rangeObject.setTs(rangeObject.getLastModifyTime());
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/DockingPreAttrMappingServiceImpl.java
@@ -104,9 +104,9 @@
            DockingPreAttrMapping dockingPreAttrMapping=new DockingPreAttrMapping();
            if(dockingPreAttrMappingMap.containsKey(attrOid)){
                dockingPreAttrMapping=    dockingPreAttrMappingMap.get(attrOid);
                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreAttrMapping);
                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreAttrMapping,null);
            }else{
                DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreAttrMapping, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreAttrMapping, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM,null);
                dockingPreAttrMapping.setMetaListId(dockingPreMetaAttr.getOid());//属性主键
                dockingPreAttrMapping.setSourceAttrKey(dockingPreMetaAttr.getEnglishName());//英文名称
                dockingPreAttrMapping.setSourceAttrName(dockingPreMetaAttr.getChineseName());//中文名称
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
@@ -175,8 +175,8 @@
                                        baseModel.setId(10+customCoding);
                                    }
                                    BeanUtilForVCI.copyDeclaredIgnoreCase(baseModel, baseModel);
                                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel,null);
                                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel,null);
                                    baseModel.getData().getOrDefault("groupCode", customCoding);
                                    updateCbos.add(baseModel);//更新数据集团code
@@ -189,14 +189,14 @@
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm,null);
                        });
                        addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
                            dockingPreApplyForm.setCode("2");
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM,null);
                        });
                    }
                    if (editDockingPreApplyFormMap.size() > 0) {
@@ -300,7 +300,7 @@
                                if(partCoe.equals(classOid)){
                                    baseModel.setId(10+customCoding);
                                }
                                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel,null);
                                //    baseModel.setId(customCoding);
                                baseModel.getData().put("groupCode", customCoding);
                                updateCbos.add(baseModel);//更新数据集团code
@@ -313,14 +313,14 @@
                        dockingPreApplyForm.setMsg("修改:" + msg);
                        dockingPreApplyForm.setContent("");
                        dockingPreApplyForm.setGroupCode("");
                        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm,null);
                    });
                    addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
                        dockingPreApplyForm.setCode("2");
                        dockingPreApplyForm.setMsg("修改:" + msg);
                        dockingPreApplyForm.setContent("");
                        dockingPreApplyForm.setGroupCode("");
                        DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                        DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM,null);
                    });
                }
                if (editDockingPreApplyFormMap.size() > 0) {
@@ -439,9 +439,9 @@
                        log.info("classify:-------------->链接名称:"+nodeLinkName);
                        log.info("classify:-------------->链接版本:"+version);
                        if (dockingPreClassify == null || StringUtils.isBlank(dockingPreClassify.getOid())) {
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY,null);
                        } else {
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify,null);
                        }
                        dockingPreClassify.setOid(id);
                        dockingPreClassify.setName(className);
@@ -603,9 +603,9 @@
                log.info("classify:-------------->链接名称:"+nodeLinkName);
                if (dockingPreClassify == null || StringUtils.isBlank(dockingPreClassify.getOid())) {
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY,null);
                } else {
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify,null);
                }
                dockingPreClassify.setOid(id);
                dockingPreClassify.setName(className);
@@ -660,10 +660,10 @@
                    jviewModelObject = jviewmodelMap.get(viewName);
                    //影响编码项的数据
                    jviewModelObject.setImpactList(impactList);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(jviewModelObject,null);
                } else {
                    jviewModelObject =new DockingPreViewModel();
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(jviewModelObject,MdmBtmTypeConstant.DOCKING_PRE_JVIEWMODEL,null);
                    jviewModelObject.setSourceClassifyId(jclassId);// 集团分类id
                    jviewModelObject.setViewName(viewName);// 集团视图名称
                    //影响编码项的数据
@@ -718,9 +718,9 @@
                    dockingPreMetaAttr = jmetaattrMap.get(englishName);
                    dockingPreMetaAttr.setChineseName(chineseName);
                    dockingPreMetaAttr.setDefaultValue(defaultValue);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreMetaAttr,null);
                } else {
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreMetaAttr,MdmBtmTypeConstant.DOCKING_PRE_JMETAATRR,null);
                    dockingPreMetaAttr.setSourceClassifyId(jclassId);// 集团分类id
                    dockingPreMetaAttr.setViewModelId(jviewModelObject.getOid());// 集团视图模型id
                    dockingPreMetaAttr.setChineseName(chineseName);// 属性名称
@@ -782,9 +782,9 @@
                    rangeObject = rangeMap.get(rangeKey);
                    rangeObject.setNumTextValue(keyValue);
                    rangeObject.setNumText(rangeKey);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(rangeObject,null);
                } else {
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(rangeObject,MdmBtmTypeConstant.DOCKING_PRE_JRANGE,null);
                    rangeObject.setNumTextValue(keyValue);
                    rangeObject.setNumText(rangeKey);
                    rangeObject.setTs(rangeObject.getLastModifyTime());
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java
@@ -173,7 +173,7 @@
        //将DTO转换为DO
        CodeResembleRule codeResembleRuleDO = new CodeResembleRule();
        BeanUtilForVCI.copyPropertiesIgnoreCase(codeResembleRuleDTO,codeResembleRuleDO);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeResembleRuleDO, MdmBtmTypeConstant.CODE_RESEMBLE_RULE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeResembleRuleDO, MdmBtmTypeConstant.CODE_RESEMBLE_RULE,null);
        codeResembleRuleDO.setTenantId(AuthUtil.getTenantId());
        codeResembleRuleDO.setLctid("frameworkDataLc");
        codeResembleRuleDO.setLcStatus("Enabled");
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleCharacterServiceImpl.java
@@ -112,7 +112,7 @@
            codeRuleCharacterMapper.updateById(codeRuleCharacter);
        }else{
            codeRuleCharacter=new CodeRuleCharacter();
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleCharacter,"character");
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleCharacter,"character",null);
            codeRuleCharacter.setCodeRuleId(codeRuleCharacterVO.getCodeRuleId());
            codeRuleCharacter.setChartType(codeRuleCharacterVO.getChartType());
            codeRuleCharacter.setChartValue(codeRuleCharacterVO.getChartValue());
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeRuleServiceImpl.java
@@ -163,7 +163,7 @@
        // 将DTO转换为DO
        CodeRule codeRule = Objects.requireNonNull(BeanUtil.copy(codeRuleDTO, CodeRule.class));
        // 填充默认值
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRule, MdmBtmTypeConstant.CODE_RULE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRule, MdmBtmTypeConstant.CODE_RULE,null);
        codeRule.setLctid(CODE_RULE_LC);
        codeRule.setLcStatus(FRAMEWORK_RELEASE_EDITING);
        codeRule.setOwnerText(AuthUtil.getUserAccount()+"("+AuthUtil.getNickName()+")");
@@ -239,7 +239,7 @@
                codeRule.setOwnerText(userR.getData().getAccount()+"("+userR.getData().getRealName()+")");
            }
        }
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule);
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule,null);
        return R.status(codeRuleMapper.updateById(codeRule)>0);
    }
@@ -518,7 +518,7 @@
        }
        VciBaseUtil.alertNotNull(codeRuleDTO, "需要添加的数据对象");
        CodeRule codeRuleDO = new CodeRule();
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleDO,MdmBtmTypeConstant.CODE_RULE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeRuleDO,MdmBtmTypeConstant.CODE_RULE,null);
        BeanUtilForVCI.copyPropertiesIgnoreCase(codeRuleDTO, codeRuleDO);
        boolean exFlag = codeRuleMapper.insert(codeRuleDO)>0;
        List<CodeBasicSecDTO> secList = codeRuleDTO.getElements();
@@ -542,7 +542,7 @@
                continue;
            }
            // 更改创建时间,修改时间等默认值
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC);
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeBasicSecDO,MdmBtmTypeConstant.CODE_BASIC_SEC,null);
            // 固定码段
            if(codeBasicSecDO.getSecType().equals(CodeSecTypeEnum.CODE_FIXED_SEC.getValue())){
                // 固定码段存储好oid和码值的关联关系
@@ -565,7 +565,7 @@
            value.stream().forEach(item -> {
                item.setOid("");
                item.setCodeFixedSecOid(key);
                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item);
                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item,null);
                codeFixedDOValues.add(item);
            });
        });
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeTempphaseServiceImpl.java
@@ -223,7 +223,7 @@
        //将DTO转换为DO
        CodeTemplatePhase codeTemplatePhaseDO = new CodeTemplatePhase();
        BeanUtilForVCI.copyPropertiesIgnoreCase(codeTemplatePhaseDTO, codeTemplatePhaseDO);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeTemplatePhaseDO, MdmBtmTypeConstant.CODE_TEMPLATE_PHASE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeTemplatePhaseDO, MdmBtmTypeConstant.CODE_TEMPLATE_PHASE,null);
        //WebUtil.setPersistence(false);
        boolean resInsertTempPhase = codeTemplatePhaseMapper.insert(codeTemplatePhaseDO) > 0;
        List<CodePhaseAttr> attrDOList = new ArrayList<>();
@@ -253,7 +253,7 @@
        //将DTO转换为DO
        CodeTemplatePhase codeTemplatePhaseEntityDO = selectByOid(codeTemplatePhaseDTO.getOid());
        revisionModelUtil.copyFromDTOIgnore(codeTemplatePhaseDTO, codeTemplatePhaseEntityDO);
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeTemplatePhaseEntityDO);
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeTemplatePhaseEntityDO,null);
        //WebUtil.setPersistence(false);
        codeTemplatePhaseMapper.updateById(codeTemplatePhaseEntityDO);
        //把以前的删除
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -191,7 +191,7 @@
                    DockingSysIntParam sysIntParamDO = new DockingSysIntParam();
                    sysIntParamDTO.setInfoOid(dockingSystemConfigDTO.getOid());
                    BeanUtilForVCI.copyPropertiesIgnoreCase(sysIntParamDTO, sysIntParamDO);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(sysIntParamDO, MdmBtmTypeConstant.SYS_INT_PARAMTERY);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(sysIntParamDO, MdmBtmTypeConstant.SYS_INT_PARAMTERY,null);
                    sysIntParamList.add(sysIntParamDO);
                });
            }
@@ -202,13 +202,13 @@
                    DockingSysIntHeader dockingSysIntHeader = new DockingSysIntHeader();
                    sysIntHeaderDTO.setInfoOid(dockingSystemConfigDTO.getOid());
                    BeanUtilForVCI.copyPropertiesIgnoreCase(sysIntHeaderDTO, dockingSysIntHeader);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSysIntHeader,MdmBtmTypeConstant.SYS_INT_HEADER);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSysIntHeader,MdmBtmTypeConstant.SYS_INT_HEADER,null);
                    sysIntHeaderList.add(dockingSysIntHeader);
                });
            }
            dockingSysIntParamService.saveBatch(sysIntParamList);
            dockingSysIntHeaderService.saveBatch(sysIntHeaderList);
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystemConfig,MdmBtmTypeConstant.SYS_INT_INFO);
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystemConfig,MdmBtmTypeConstant.SYS_INT_INFO,null);
            dockingSystemConfigMapper.insert(dockingSystemConfig);
        }else{
            throw new Throwable("根据选择的集成系统未校验到系统中存在此集成系统,请核对!");
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java
@@ -72,7 +72,7 @@
        VciBaseUtil.alertNotNull(dockingSystemDTO, "需要添加的数据对象");
        //将DTO转换为DO
        DockingSystem dockingSystem = Objects.requireNonNull(BeanUtil.copy(dockingSystemDTO, DockingSystem.class));
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystem, MdmBtmTypeConstant.SYS_INT_BASE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingSystem, MdmBtmTypeConstant.SYS_INT_BASE,null);
        dockingSystem.setLctid(CODE_RULE_LC);
        dockingSystem.setLcStatus(FRAMEWORK_RELEASE_EDITING);
        boolean resInsert = dockingSystemMapper.insert(dockingSystem) > 0;
@@ -108,7 +108,7 @@
            userClient.updateUserByAccount(dockingSystem.getId(),dockingSystemDTO.getId().toLowerCase(Locale.ROOT));
        }
        revisionModelUtil.copyFromDTOIgnore(dockingSystemDTO,dockingSystem);
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingSystem);
        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingSystem,null);
        dockingSystemMapper.updateById(dockingSystem);
        return DockingSystemWrapper.build().entityVO(dockingSystem);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -6,13 +6,11 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.google.protobuf.ServiceException;
import com.vci.ubcs.code.applyjtcodeservice.entity.DockingPreAttrMapping;
import com.vci.ubcs.code.applyjtcodeservice.feign.IMdmInterJtClient;
import com.vci.ubcs.code.applyjtcodeservice.vo.DockingPreAttrMappingVO;
import com.vci.ubcs.code.bo.AttributeValue;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.bo.CodeTemplateAttrSqlBO;
import com.vci.ubcs.code.constant.MdmEngineConstant;
import com.vci.ubcs.code.dto.*;
import com.vci.ubcs.code.entity.CodeAllCode;
import com.vci.ubcs.code.enumpack.CodeDefaultLC;
@@ -71,6 +69,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
@@ -88,7 +87,6 @@
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import static com.alibaba.druid.util.FnvHash.Constants.LIMIT;
@@ -382,7 +380,7 @@
        CodeClassifyVO codeClassifyVO = classifyService.getObjectByOid(codeClassifyOid);
        //获取码段宽度
        String secWidth = getCodeSegmentWidth(codeClassifyVO.getOid());
        //String secWidth = getCodeSegmentWidth(codeClassifyVO.getOid());
        if(isHistory){
            templateVOList= templateService.childTemplates(codeClassifyOid);
@@ -2120,7 +2118,8 @@
                }).collect(Collectors.toList());
                List<ClientBusinessObject> finalNeedSaveCboList = needSaveCboList;
                Map<String, CodeRuleVO> finalRuleVOMap = ruleVOMap;
                ruleRowIndexMap.keySet().parallelStream().forEach(ruleOid -> {
                // TODO: 多线程流套多线程流,有坑,我把这儿改了
                ruleRowIndexMap.keySet().stream().forEach(ruleOid -> {
                    List <BaseModel>dataCBOList=new CopyOnWriteArrayList<>();
                    List<String> rowIndexList = ruleRowIndexMap.get(ruleOid);
                    List<ClientBusinessObject> thisCbos = needSaveCboList.stream().filter(cbo -> rowIndexList.contains(cbo.getAttributeValue(IMPORT_ROW_INDEX)) && !errorMap.containsKey(cbo.getAttributeValue(IMPORT_ROW_INDEX))).collect(Collectors.toList());
@@ -2502,7 +2501,6 @@
                        resultDataObjectDetailDO.setErrorid("0");
                    }
                    resultDataObjectDetailDO.setId(sourceOid);
                    resultDataObjectDetailDO.setMsg(msg);
                    resultDataObjectDetailDOs.add(resultDataObjectDetailDO);
                    //处理传送的数据中关键属性重复的,直接拿到已经申请到编码的数据编码直接将赋给关键属性重复的数据
@@ -3348,7 +3346,7 @@
            String oid=rowData.getOid();
            String rowNumber=rowData.getRowIndex();
            ClientBusinessObject cbo = new ClientBusinessObject();
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId());
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),null);
            rowData.getData().forEach((index,value)->{
                String field = fieldIndexMap.get(index);
                if(StringUtils.isBlank(field)){
@@ -3454,7 +3452,7 @@
        String fullPath = getFullPath(classifyFullInfo);
        codeImprotDataVO.getDatas().stream().forEach(rowData -> {
            ClientBusinessObject cbo=new ClientBusinessObject();
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId());
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),null);
            rowData.forEach((field,value)->{
                try {
                    cbo.setAttributeValueWithNoCheck(field,value);
@@ -3508,7 +3506,7 @@
                            String fullPath,boolean newCode){
        rowDataList.stream().forEach(rowData -> {
            ClientBusinessObject cbo=new ClientBusinessObject();
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId());
            DefaultAttrAssimtUtil.addDefaultAttrAssimt(cbo, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),null);
            rowData.getData().forEach((index,value)->{
                    String field = fieldIndexMap.get(index);
                if (StringUtils.isBlank(field)) {
@@ -4271,6 +4269,7 @@
        Map<String,List<BaseModel>> indexTODataMap=new ConcurrentHashMap<>();
        // 查询不需要参与关键属性校验的除自己以外的所有分类oid
        final String isParticipateCheckOids = classifyService.selectLeafByParentClassifyOid(classifyFullInfo.getTopClassifyVO().getOid(), classifyFullInfo.getCurrentClassifyVO().getOid());
        final HttpServletRequest request = org.springblade.core.tool.utils.WebUtil.getRequest();
        List<ClientBusinessObject> repeatDataMap = cboList.parallelStream().filter(cbo -> {
            //每行都得查询.如果其中出现了错误,我们就直接抛出异常,其余的显示
            //VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
@@ -4296,7 +4295,7 @@
                    List<BaseModel> newCboList = new ArrayList<>();
                    newDataList.stream().forEach(stringStringMap -> {
                        BaseModel baseModel=new BaseModel();
                        DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel);
                        DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(stringStringMap,baseModel,request);
                        baseModel.setData(stringStringMap);
                        newCboList.add(baseModel);
                    });
@@ -4522,7 +4521,7 @@
        List<ClientBusinessObject> clientBusinessObjectList=new ArrayList<>();
        oldDataMap.stream().forEach(dataMap->{
            ClientBusinessObject clientBusinessObject=new ClientBusinessObject();
            DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject);
            DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject,null);
            for (String key:dataMap.keySet()){
                Object value= dataMap.getOrDefault(key,"");
                clientBusinessObject.setAttributeValue(key.toLowerCase(Locale.ROOT),value==null?"":value.toString());
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -38,6 +38,7 @@
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.WebUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -45,6 +46,7 @@
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Method;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
@@ -112,6 +114,7 @@
            List<CodeAllCode> allCodeDOList = new CopyOnWriteArrayList<>();
            Map<String/**流水依据**/, HashMap<String/**码段的主键**/,String/**最大流水号**/>> maxSerialMap = new HashMap<>();
            // TODO 多线程流引发的问题已修改
            final HttpServletRequest request = WebUtil.getRequest();
            dataCBOList.parallelStream().forEach(cbo->{
                log.info("code:----->"+cbo.getId());
                //VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
@@ -201,7 +204,7 @@
                    });
                }
                CodeAllCode allCodeDO = new CodeAllCode();
                DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE);
                DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE,request);
                allCodeDO.setCodeClassifyOid(classifyFullInfoBO.getCurrentClassifyVO().getOid());
                allCodeDO.setCodeRuleOid(finalRuleVO.getOid());
                allCodeDO.setId(cbo.getId());
@@ -234,13 +237,13 @@
                        log.info("oldmaxSerial--->"+serialValueDO.getMaxSerial()+"---- newmaxSerial---->"+maxSerial);
                        if(VciBaseUtil.getDouble(serialValueDO.getMaxSerial())<VciBaseUtil.getDouble(maxSerial)){
                            serialValueDO.setMaxSerial(String.valueOf(maxSerial));
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO);
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO,null);
                            editSerialValueList.add(serialValueDO);
                        }
                    }else{
                        //没有
                        CodeSerialValue serialValueDO = new CodeSerialValue();
                        DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE);
                        DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE,request);
                        serialValueDO.setCodeRuleOid(finalRuleVO.getOid());
                        serialValueDO.setSerialUnit(serialUnit);
                        serialValueDO.setCodeSecOid(secOid);
@@ -261,7 +264,6 @@
            }
            //处理allCode
            if(!CollectionUtils.isEmpty(allCodeDOList)){
                // TODO 历史数据导入的时候这儿偶尔会触发空指针异常
                Map<String,List<CodeAllCode>> ruleGroup = allCodeDOList.stream().collect(Collectors.groupingBy(s -> s.getCodeRuleOid()));
                Map<String, CodeAllCode> codeDOMap = allCodeDOList.stream().collect(Collectors.toMap(s -> s.getCodeRuleOid() + "${SEP}" + s.getId(), t -> t));
                List<CodeAllCode> addCodeDOs = new CopyOnWriteArrayList<>();
@@ -417,7 +419,7 @@
            saveSerialValue( finalRuleVO, lastMaxSerialValueMap, maxSerialValueMap);
            allCodeDOList.stream().forEach(
                allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");}
                allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode",null);allCode.setLctid("codeAllCodeLC");}
            );
@@ -980,7 +982,7 @@
                                BaseModel cbo, CodeClassifyTemplateVO templateVO,
                                List<CodeAllCode> allCodeDOList, String serialUnitString, String serialValueString,String codeDelimiter){
        CodeAllCode allCodeDO = new CodeAllCode();
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE);
        DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCodeDO, MdmBtmTypeConstant.CODE_ALL_CODE,null);
        allCodeDO.setCodeClassifyOid(classifyFullInfoBO.getCurrentClassifyVO().getOid());
        allCodeDO.setCodeRuleOid(ruleVO.getOid());
        allCodeDO.setId(cbo.getId());
@@ -1013,11 +1015,11 @@
                    //说明有
                    serialValueDO = maxSerialValueMap.get(secOid).get(unit);
                    serialValueDO.setMaxSerial(maxSerial.toString());
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO);
                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(serialValueDO,null);
                    editSerialValueDOList.add(serialValueDO);
                }else{
                    serialValueDO = new CodeSerialValue();
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE);
                    DefaultAttrAssimtUtil.addDefaultAttrAssimt(serialValueDO, MdmBtmTypeConstant.CODE_SERIAL_VALUE,null);
                    serialValueDO.setCodeRuleOid(ruleVO.getOid());
                    serialValueDO.setSerialUnit(unit);
                    serialValueDO.setCodeSecOid(secOid);
@@ -1247,7 +1249,7 @@
        saveSerialValue( finalRuleVO, lastMaxSerialValueMap, maxSerialValueMap);
        allCodeDOList.stream().forEach(
            allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");}
            allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode",null);allCode.setLctid("codeAllCodeLC");}
        );
        Map<String, String> statusMap = allCodeDOList.stream().collect(Collectors.toMap(s -> s.getOid(), s -> s.getLcStatus()));
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -281,9 +281,7 @@
            UserVO userVo = interParameterVO.getData().getUser();
            //免密登录申请token,request中添加用户信息
            //passwordFreeLoginService.pwdFreeLoginByBoolean(userVo.getUserName(),this.getRequest());
            passwordFreeLoginService.pwdFreeLoginByBoolean(systemId.toLowerCase(Locale.ROOT),this.getRequest());
            AuthUtil.getUser();
            List<ClassfyVO> classVOList = classfysVO.getClassify();
            InterParameterVO finalInterParameterVO = interParameterVO;
            //这是账号信息
@@ -2297,7 +2295,7 @@
        List<ClientBusinessObject> clientBusinessObjectList=new ArrayList<>();
        oldDataMap.stream().forEach(dataMap->{
            ClientBusinessObject clientBusinessObject=new ClientBusinessObject();
            DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject);
            DefaultAttrAssimtUtil.copplyDefaultAttrAssimt(dataMap,clientBusinessObject,null);
            for (String key:dataMap.keySet()){
                Object value= dataMap.getOrDefault(key,"");
                clientBusinessObject.setAttributeValue(key.toLowerCase(Locale.ROOT),value==null?"":value.toString());