| | |
| | | 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()); |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | * @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()); |
| | |
| | | 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"); |
| | |
| | | // 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(); |
| | | } |
| | |
| | | * @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()); |
| | |
| | | // 用户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(); |
| | |
| | | * @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"); |
| | |
| | | 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); |
| | |
| | | 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","")); |
| | |
| | | |
| | | 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); |
| | |
| | | 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);// 集团视图名称 |
| | | //影响编码项的数据 |
| | |
| | | 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);// 属性名称 |
| | |
| | | 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()); |
| | |
| | | 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());//中文名称 |
| | |
| | | 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 |
| | |
| | | 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) { |
| | |
| | | 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 |
| | |
| | | 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) { |
| | |
| | | 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); |
| | |
| | | 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); |
| | |
| | | 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);// 集团视图名称 |
| | | //影响编码项的数据 |
| | |
| | | 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);// 属性名称 |
| | |
| | | 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()); |
| | |
| | | //将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"); |
| | |
| | | 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()); |
| | |
| | | // 将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()+")"); |
| | |
| | | codeRule.setOwnerText(userR.getData().getAccount()+"("+userR.getData().getRealName()+")"); |
| | | } |
| | | } |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeRule,null); |
| | | return R.status(codeRuleMapper.updateById(codeRule)>0); |
| | | } |
| | | |
| | |
| | | } |
| | | 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(); |
| | |
| | | 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和码值的关联关系 |
| | |
| | | value.stream().forEach(item -> { |
| | | item.setOid(""); |
| | | item.setCodeFixedSecOid(key); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(item,null); |
| | | codeFixedDOValues.add(item); |
| | | }); |
| | | }); |
| | |
| | | //将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<>(); |
| | |
| | | //将DTO转换为DO |
| | | CodeTemplatePhase codeTemplatePhaseEntityDO = selectByOid(codeTemplatePhaseDTO.getOid()); |
| | | revisionModelUtil.copyFromDTOIgnore(codeTemplatePhaseDTO, codeTemplatePhaseEntityDO); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeTemplatePhaseEntityDO); |
| | | DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeTemplatePhaseEntityDO,null); |
| | | //WebUtil.setPersistence(false); |
| | | codeTemplatePhaseMapper.updateById(codeTemplatePhaseEntityDO); |
| | | //把以前的删除 |
| | |
| | | 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); |
| | | }); |
| | | } |
| | |
| | | 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("根据选择的集成系统未校验到系统中存在此集成系统,请核对!"); |
| | |
| | | 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; |
| | |
| | | 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); |
| | | } |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | CodeClassifyVO codeClassifyVO = classifyService.getObjectByOid(codeClassifyOid); |
| | | |
| | | //获取码段宽度 |
| | | String secWidth = getCodeSegmentWidth(codeClassifyVO.getOid()); |
| | | //String secWidth = getCodeSegmentWidth(codeClassifyVO.getOid()); |
| | | |
| | | if(isHistory){ |
| | | templateVOList= templateService.childTemplates(codeClassifyOid); |
| | |
| | | }).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()); |
| | |
| | | resultDataObjectDetailDO.setErrorid("0"); |
| | | } |
| | | resultDataObjectDetailDO.setId(sourceOid); |
| | | |
| | | resultDataObjectDetailDO.setMsg(msg); |
| | | resultDataObjectDetailDOs.add(resultDataObjectDetailDO); |
| | | //处理传送的数据中关键属性重复的,直接拿到已经申请到编码的数据编码直接将赋给关键属性重复的数据 |
| | |
| | | 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)){ |
| | |
| | | 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); |
| | |
| | | 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)) { |
| | |
| | | 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); |
| | |
| | | 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); |
| | | }); |
| | |
| | | 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()); |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | 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); |
| | |
| | | }); |
| | | } |
| | | 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()); |
| | |
| | | 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); |
| | |
| | | } |
| | | //处理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<>(); |
| | |
| | | saveSerialValue( finalRuleVO, lastMaxSerialValueMap, maxSerialValueMap); |
| | | |
| | | allCodeDOList.stream().forEach( |
| | | allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode");allCode.setLctid("codeAllCodeLC");} |
| | | allCode -> {DefaultAttrAssimtUtil.addDefaultAttrAssimt(allCode,"codeallcode",null);allCode.setLctid("codeAllCodeLC");} |
| | | ); |
| | | |
| | | |
| | |
| | | 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()); |
| | |
| | | //说明有 |
| | | 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); |
| | |
| | | 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())); |
| | |
| | | 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; |
| | | //这是账号信息 |
| | |
| | | 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()); |