Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeClassifyTemplateAttrDTO.java
@@ -38,110 +38,110 @@ /** * æå±æ¨¡æ¿ */ private String classifytemplateoid; private String classifyTemplateOid; /** * æå±æ¨¡æ¿æ¾ç¤ºææ¬ */ private String classifytemplateoidName; private String classifyTemplateOidName; /** * æå±åç±»ä¸ç屿§ä¸»é® */ private String classifyattributeoid; private String classifyAttributeOid; /** * æå±åç±»ä¸ç屿§ä¸»é®æ¾ç¤ºææ¬ */ private String classifyattributeoidName; private String classifyAttributeOidName; /** * 屿§çç±»å */ private String attributedatatype; private String attributeDataType; /** * æ¯å¦å ³é®å±æ§ */ private String keyattrflag; private String keyAttrFlag; /** * æ¯å¦å¿«éæ¥è¯¢å±æ§ */ private String queryattrflag; private String queryAttrFlag; /** * æ¯å¦é«çº§æ¥è¯¢å±æ§ */ private String seniorqueryattrflag; private String seniorQueryAttrFlag; /** * ç¸ä¼¼æ¥é屿§ */ private String samerepeatattrflag; private String sameRepeatAttrFlag; /** * æ¯å¦æåº */ private String sortattrflag; private String sortAttrFlag; /** * æ¯å¦çæäºç»´ç */ private String qrcodeflag; private String qrcodeFlag; /** * æ¯å¦çæä¸ç»´ç */ private String barcodeflag; private String barcodeFlag; /** * ç»åè§å */ private String componentrule; private String componentRule; /** * éªè¯è§å */ private String verifyrule; private String verifyRule; /** * åç±»æ³¨å ¥å±çº§ */ private String classifyinvokelevel; private String classifyInvokeLevel; /** * åç±»æ³¨å ¥ç屿§è±æåç§° */ private String classifyinvokeattr; private String classifyInvokeAttr; /** * åç±»æ³¨å ¥ç屿§ä¸æåç§° */ private String classifyinvokeattrname; private String classifyInvokeAttrName; /** * åç±»æ³¨å ¥æ¯å¦å¯ä»¥ç¼è¾ */ private String classifyinvokeeditflag; private String classifyInvokeEditFlag; /** * ç å¼åºå· */ private Integer ordernum; private Integer orderNum; /** * 表å鿝妿¾ç¤º */ private String formdisplayflag; private String formDisplayFlag; /** * åè¡¨éæ¯å¦æ¾ç¤º */ private String tabledisplayflag; private String tableDisplayFlag; /** * æå±å±æ§åç» */ private String attributegroup; private String attributeGroup; /** * ä½¿ç¨æä¸¾æ³¨å ¥çåç¬¦ä¸²æ ¼å¼ @@ -151,27 +151,27 @@ /** * ä½¿ç¨æä¸¾è±æç¼å· */ private String enumid; private String enumId; /** * ä½¿ç¨æä¸¾ä¸æåç§° */ private String enumname; private String enumName; /** * æä¸¾æ¯å¦å¯ä»¥ç¼è¾ */ private String enumeditflag; private String enumEditFlag; /** * åç §çä¸å¡ç±»åè±æåç§° */ private String referbtmid; private String referBtmId; /** * åç §çä¸å¡ç±»å䏿åç§° */ private String referbtmname; private String referBtmName; /** * åç §çªå£é ç½® @@ -181,97 +181,97 @@ /** * æ¯å¦å¿ è¾ */ private String requireflag; private String requireFlag; /** * æ¯å¦åªè¯» */ private String readonlyflag; private String readOnlyFlag; /** * 屿§æ§å¶è¾å ¥çé¿åº¦ */ private Integer controllength; private Integer controlLength; /** * 表åéæ¾ç¤ºçæ ·å¼ */ private String formdisplaystyle; private String formDisplayStyle; /** * è¡¨æ ¼éæ¾ç¤ºçæ ·å¼ */ private String tabledisplaystyle; private String tableDisplayStyle; /** * 表åä¸è¶ 龿¥å 容 */ private String formhref; private String formHref; /** * è¡¨æ ¼ä¸è¶ 龿¥å 容 */ private String tablehref; private String tableHref; /** * å°æ°ç²¾åº¦ */ private Integer precisionlength; private Integer precisionLength; /** * å°æ°å»åº¦ */ private Integer scalelength; private Integer scaleLength; /** * åå¼èå´ */ private String valuearea; private String valueArea; /** * æ¶é´æ ¼å¼ */ private String codedateformat; private String codeDateFormat; /** * è¡¨æ ¼éæ¾ç¤ºè°ç¨çjs */ private String tabledisplayjs; private String tableDisplayJs; /** * æ¯å¦æ¾ç¤ºå¤è¡ææ¬ */ private String textareaflag; private String textAreaFlag; /** * é¢è§å¾ */ private String imageflag; private String imageFlag; /** * é»è®¤å¼ */ private String defaultvalue; private String defaultValue; /** * åç¼ */ private String prefixvalue; private String prefixValue; /** * åç¼ */ private String suffixvalue; private String suffixValue; /** * éæ©æ°æ®æ¶è¿æ»¤ç屿§ */ private String filtersourceattr; private String filterSourceAttr; /** * éæ©æ°æ®æ¶è¿æ»¤ç屿§åç§° */ private String filtersourceattrname; private String filterSourceAttrName; /** * 屿§å表ä¸ç宽度 @@ -306,5 +306,9 @@ */ //@Column(columnDefinition = "çº§èæ¥è¯¢å±æ§") private String parentQueryAttr; /** * è¾å ¥æç¤º */ private String inputTip; } Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeImprotParmaDatVO.java
@@ -5,7 +5,7 @@ public class CodeImprotParmaDatVO { private List<CodeImprotSaveDatVO> codeImprotSaveDatVOList; private String classifyAttr; private Boolean isImprot; private Boolean improt; public List<CodeImprotSaveDatVO> getCodeImprotSaveDatVOList() { return codeImprotSaveDatVOList; @@ -24,18 +24,18 @@ } public Boolean getImprot() { return isImprot; return this.improt; } public void setImprot(Boolean improt) { isImprot = improt; this.improt = improt; } @Override public String toString() { return "CodeImprotParmaDatVO{" + "codeImprotSaveDatVOList=" + codeImprotSaveDatVOList + ", isImprot=" + isImprot + ", isImprot=" + improt + '}'; } } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java
@@ -36,7 +36,7 @@ import com.vci.ubcs.starter.web.util.VciDateUtil; import com.vci.ubcs.system.entity.DictBiz; import com.vci.ubcs.system.feign.IDictBizClient; import org.springblade.core.log.exception.ServiceException; import com.vci.ubcs.core.log.exception.ServiceException; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; @@ -398,7 +398,7 @@ throw new VciBaseException("{0}{1}屿§çæ¶é´æ ¼å¼ä¸ç¬¦åè¦æ±",new String[]{codeClassifyTemplateAttrDO.getId(),codeClassifyTemplateAttrDO.getName()}); } //妿æ¯ç»åè§åï¼éé¢ä½¿ç¨ç屿§ä¸è½ç¼ºå¤±ï¼ä¹é½å¾æ¾ç¤º String componentrule = codeClassifyTemplateAttrDTO.getComponentrule(); String componentrule = codeClassifyTemplateAttrDTO.getComponentRule(); boolean isContainsDynamicParameter = PatternUtil.isContainsDynamicParameter(componentrule); if(isContainsDynamicParameter){ List<String> userdAttrList = PatternUtil.getKeyListByContent(componentrule);//å å«çææ${xxx}ä¸çxxx @@ -409,7 +409,7 @@ } //è¦ççè¡¨åæ¯å¦æ¾ç¤º String unFormDisplayAttr = userdAttrList.stream().filter(s -> !VciBaseUtil.getBoolean(attrDTOMap.getOrDefault(s.toLowerCase(Locale.ROOT), new CodeClassifyTemplateAttrDTO()).getFormdisplayflag())).collect(Collectors.joining(",")); new CodeClassifyTemplateAttrDTO()).getFormDisplayFlag())).collect(Collectors.joining(",")); if(StringUtils.isNotBlank(unFormDisplayAttr)){ throw new VciBaseException("{0}屿§æ¯ç»åè§åï¼ä½æ¯è§åéå å«ç屿§[{1}]å¨å½å模æ¿ä¸æ²¡æè®¾ç½® è¡¨åæ¾ç¤º ",new String[]{codeClassifyTemplateAttrDO.getName(),unFormDisplayAttr}); } @@ -417,7 +417,7 @@ } if(CLASSIFYTEMPLATEOID==null){ CLASSIFYTEMPLATEOID = codeClassifyTemplateAttrDTO.getClassifytemplateoid(); CLASSIFYTEMPLATEOID = codeClassifyTemplateAttrDTO.getClassifyTemplateOid(); } } @@ -439,7 +439,7 @@ } // BatchCBO batchCBOTemplateDelete = new BatchCBO(); if(!CollectionUtils.isEmpty(oids)){ baseMapper.deleteBatchIds(oids); this.removeBatchByIds(oids); } //åæ°å¢ @@ -542,7 +542,7 @@ } //å¤æä¼ è¿æ¥çåç §é ç½®æ¯å¦æ¯jsonæ ¼å¼ if(StringUtils.isNotBlank(codeClassifyTemplateAttrDTO.getReferbtmid())&&!checkKVObj(codeClassifyTemplateAttrDTO.getReferbtmid())){ if(StringUtils.isNotBlank(codeClassifyTemplateAttrDTO.getReferBtmId())&&!checkKVObj(codeClassifyTemplateAttrDTO.getReferBtmId())){ throw new VciBaseException("æä¸¾æ³¨å ¥æ°æ®æ ¼å¼é误!"); } Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -54,6 +54,7 @@ import org.apache.poi.ss.usermodel.Font; import org.apache.poi.ss.usermodel.RichTextString; import org.apache.poi.ss.usermodel.Workbook; import org.springblade.core.cache.utils.CacheUtil; import org.springblade.core.redis.cache.BladeRedis; import org.springblade.core.tool.api.R; import org.springframework.beans.BeanUtils; @@ -1379,8 +1380,7 @@ public List<CodeImportTemplateVO> gridclassifys(String redisOid) { List<CodeImportTemplateVO> codeImportTemplateVOs=new ArrayList<>(); VciBaseUtil.alertNotNull(redisOid,"åç±»",redisOid,"åç±»ç¼å主é®"); List<CodeImportTemplateVO> redisServiceCacheObjects=bladeRedis.lRange(redisOid,0,-1); List<CodeImportTemplateVO> redisServiceCacheObjects=bladeRedis.get(redisOid); if(redisServiceCacheObjects!=null){ codeImportTemplateVOs= redisServiceCacheObjects; } @@ -1396,7 +1396,7 @@ @Override public DataGrid<Map<String, String>> gridDatas(String codeClssifyOid, String redisOid) { VciBaseUtil.alertNotNull(redisOid,"å¯¼å ¥ç¸ä¼¼æ°æ®",redisOid,"æ°æ®ç¼å主é®"); List<CodeImprotDataVO> codeImprotDataVOs = bladeRedis.lRange(redisOid+"-"+codeClssifyOid,0,-1); List<CodeImprotDataVO> codeImprotDataVOs = bladeRedis.get(redisOid+"-"+codeClssifyOid); // redisService.getCacheList(redisOid+"-"+codeClssifyOid); CodeImprotDataVO codeImprotDataVO=new CodeImprotDataVO(); if(!CollectionUtils.isEmpty(codeImprotDataVOs)){ @@ -1430,7 +1430,7 @@ @Override public DataGrid<Map<String,String>> gridRowResemble(String oid,String redisOid){ VciBaseUtil.alertNotNull(redisOid,"å¯¼å ¥ç¸ä¼¼æ°æ®",redisOid,"æ°æ®ç¼å主é®"); List<DataResembleVO> codeImprotDataVOs = bladeRedis.lRange(redisOid,0,-1);; List<DataResembleVO> codeImprotDataVOs = bladeRedis.get(redisOid);; DataGrid<Map<String, String>> dataGrid = new DataGrid<>(); List<Map<String, String>> dataList = new ArrayList<>(); Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DdlDmMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,55 @@ package com.vci.ubcs.ddl.mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.ResultType; import org.apache.ibatis.annotations.Update; import org.springframework.stereotype.Repository; /** * è¾¾æ¢¦æ°æ®åºçæä½æ§è¡å¨ */ @Repository public interface DdlDmMapper extends DdlMapper{ /** * å é¤è¡¨æ ¼ä¸çå * @param tableName 表åç§° * @param columnName ååç§° * @return åå½±åçè¡æ° */ @Update("alter table ${tableName} DROP COLUMN ${columnName}") @Override int dropTableColumn(@Param("tableName")String tableName, @Param("columnName")String columnName); /** * å é¤è¡¨æ ¼ * @param tableName è¡¨æ ¼åç§° * @return å½±åçè¡æ° */ @Update("drop table if exists ${tableName}") @ResultType(Integer.class) @Override int dropTable(@Param("tableName") String tableName); /** * æ¹éä¿®æ¹æ°æ®åºè¡¨çåæ®µ * @param tableName è¡¨æ ¼çåç§° * @param attributeSql ä¿®æ¹ç屿§çsql * @return å½±åçè¡æ° */ @Update("alter table ${tableName} modify ( ${attributeSql} ) ") @ResultType(Integer.class) @Override int modifyTableBySql(@Param("tableName") String tableName, @Param("attributeSql") String attributeSql); /** * åæ°æ®åºè¡¨ä¸æ¹éæ·»å åæ®µ * @param tableName è¡¨æ ¼çåç§° * @param attributeSql è¦æ·»å çæ°çsql * @return å½±åçè¡æ° */ @Update("alter table ${tableName} add ( ${attributeSql} )") @ResultType(Integer.class) @Override int addColumn2TableBySql(@Param("tableName") String tableName, @Param("attributeSql") String attributeSql); } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllDmMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,11 @@ package com.vci.ubcs.ddl.mapper; import org.springframework.stereotype.Repository; /** * è¾¾æ¢¦æ°æ®åºçæä½æ§è¡å¨ */ @Repository public interface DllDmMapper extends DllMapper{ } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllMapper.java
@@ -1,6 +1,11 @@ package com.vci.ubcs.ddl.mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.ResultType; import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Update; /** * Description: * @@ -9,21 +14,31 @@ */ public interface DllMapper { int createViewBySql(String viewCreateSql); @Update({"${viewCreateSql}"}) int createViewBySql(@Param("viewCreateSql") String viewCreateSql); int createTableBySql(String tableName,String attributeSql); @Update({"create table ${tableName} ( ${attributeSql} )"}) int createTableBySql(@Param("tableName") String tableName, @Param("attributeSql") String attributeSql); int checkTableExist(String tableName); @Update({"COMMENT ON TABLE ${tableName} IS '${comment}' "}) int commentTable(@Param("tableName") String tableName, @Param("comment") String comment); int countAll(String tableName); @Update({"COMMENT ON column ${tableName}.${columnName} IS '${comment}' "}) int commentColumnTable(@Param("tableName") String tableName, @Param("columnName") String columnName, @Param("comment") String comment); int commentTable(String tableName, String comment); @Update({"alter table ${tableName} modify ( ${attributeSql} ) "}) int modifyTableBySql(@Param("tableName") String tableName, @Param("attributeSql") String attributeSql); int commentColumnTable(String tableName, String columnName, String comment); @Update({"alter table ${tableName} add ( ${attributeSql} )"}) int addColumn2TableBySql(@Param("tableName") String tableName, @Param("attributeSql") String attributeSql); int modifyTableBySql(String tableName, String attributeSql); @Update({"drop table if exists ${tableName}"}) int dropTable(@Param("tableName") String tableName); int addColumn2TableBySql(String tableName, String attributeSql); @Select({"select count(table_name) from user_tables where upper(table_name) = upper(#{tableName,jdbcType=VARCHAR})"}) int checkTableExist(@Param("tableName") String tableName); int dropTable(String tableName); @Select({"select count(*) from ${tableName}"}) @ResultType(Integer.class) int countAll(@Param("tableName") String tableName); } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,34 @@ package com.vci.ubcs.ddl.processor.ddl; import com.vci.ubcs.ddl.mapper.DdlDmMapper; import com.vci.ubcs.ddl.mapper.DdlMapper; import com.vci.ubcs.starter.util.VciSpringUtil; import org.springframework.stereotype.Component; /** * è¾¾æ¢¦æ°æ®åºæ§è¡è¡¨æä½sqlçå¤çå¨ */ @Component public class DdlDmMapperProcessor extends DdlMapperProcessor{ private static final DdlMapper MAPPER = VciSpringUtil.getBean(DdlDmMapper.class); public DdlDmMapperProcessor() { super(MAPPER); System.out.println("-----------------"); if (MAPPER != null){ System.out.println("[success]::å è½½è¾¾æ¢¦æ°æ®åºDDLæä½æå¡æå"); }else { System.out.println("[fail]::å è½½è¾¾æ¢¦æ°æ®åºDDLæä½æå¡å¤±è´¥"); } } @Override public void modifyTableBySqlBase(String tableName, String attributeSql) { modifyTableBySql(tableName,attributeSql); } @Override boolean support(String url) { return "dm.jdbc.driver.DmDriver".equals(url); } } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
@@ -7,6 +7,8 @@ import com.vci.ubcs.starter.util.VciSpringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Component; import javax.annotation.Resource; @@ -18,10 +20,11 @@ * @author LiHang * @date 2023/4/24 */ @Component public class DdlMapperProcessStrategy { @Value("${spring.datasource.driver-class-name}") private static final String DATABASE_DRIVER = ""; private String DATABASE_DRIVER; private final static List<DdlMapperProcessor> PROCESSORS = Lists.newArrayList(); @@ -29,11 +32,15 @@ PROCESSORS.add(VciSpringUtil.getBean(DdlOracleMapperProcessor.class)); PROCESSORS.add(VciSpringUtil.getBean(DdlMySqlMapperProcessor.class)); PROCESSORS.add(VciSpringUtil.getBean(DdlMsMapperProcessor.class)); PROCESSORS.add(VciSpringUtil.getBean(DdlDmMapperProcessor.class)); } public static DdlMapperProcessor getProcessor(){ @Bean("ddlMapper") public DdlMapperProcessor getProcessor(){ for (DdlMapperProcessor processor : PROCESSORS) { if (processor.support(DATABASE_DRIVER)){ System.out.println("==========================================="); System.out.println("è·åDDLæä½ç±»æåï¼" + processor.getClass().getName()); return processor; } } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,75 @@ package com.vci.ubcs.ddl.processor.dll; import com.vci.ubcs.ddl.bo.DdlFieldMappingAttrBO; import com.vci.ubcs.ddl.mapper.DllDmMapper; import com.vci.ubcs.ddl.mapper.DllMapper; import com.vci.ubcs.starter.util.VciSpringUtil; import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum; import org.apache.commons.collections4.BidiMap; import org.springframework.stereotype.Component; import java.util.List; /** * Description: åºç¨äºè¾¾æ¢¦æ°æ®ï¼çæå建表æä½sqlçå¤çå¨ * * @author LiHang * @date 2023/4/24 */ @Component public class DllDmMapperProcessor extends DllMapperProcessor{ private static final DllMapper MAPPER = VciSpringUtil.getBean(DllDmMapper.class); private static final BidiMap<VciFieldTypeEnum, DdlFieldMappingAttrBO> FIELD_MAP = getMappingMapCopy(); static { // éè¦éæ°æ å°çåæ®µç±»åå¨è¿éå FIELD_MAP.put(VciFieldTypeEnum.VTDouble,new DdlFieldMappingAttrBO("DOUBLE",26,8,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTInteger,new DdlFieldMappingAttrBO("NUMBER",22,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTLong,new DdlFieldMappingAttrBO("BIGINT",22,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTBoolean,new DdlFieldMappingAttrBO("VARCHAR",5,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTDate,new DdlFieldMappingAttrBO("DATE",null,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTDateTime,new DdlFieldMappingAttrBO("TIMESTAMP",null,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTTime,new DdlFieldMappingAttrBO("TIME",null,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTFilePath,new DdlFieldMappingAttrBO("TEXT",null,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTClob,new DdlFieldMappingAttrBO("CLOB",100,null,true,null)); FIELD_MAP.put(VciFieldTypeEnum.VTString,new DdlFieldMappingAttrBO("VARCHAR",255,null,true,null)); } public DllDmMapperProcessor() { super(MAPPER); System.out.println("-----------------"); if (MAPPER != null){ System.out.println("[success]::å è½½è¾¾æ¢¦æ°æ®åºDLLæä½æå¡æå"); }else { System.out.println("[fail]::å è½½è¾¾æ¢¦æ°æ®åºDLLæä½æå¡å¤±è´¥"); } } @Override public boolean support(String url) { return "dm.jdbc.driver.DmDriver".equals(url); } @Override protected DdlFieldMappingAttrBO getMappingBO(VciFieldTypeEnum fieldTypeEnum) { return getMappingBOInMap(fieldTypeEnum,FIELD_MAP); } /** * ææ°æ®åºå段类åå举ææçVCIåæ®µç±»å * * @param columnStr æ°æ®åºå段类å * @return VCIåæ®µç±»å */ @Override public List<VciFieldTypeEnum> listFieldByColumnStr(String columnStr) { return listFieldInMapByColumnStr(columnStr,FIELD_MAP); } @Override public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); } } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
@@ -5,9 +5,13 @@ import com.vci.ubcs.ddl.mapper.DllOracleMapper; import com.vci.ubcs.ddl.mapper.DllSqlLiteMapper; import com.vci.ubcs.starter.util.VciSpringUtil; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.Resource; import java.util.List; @@ -17,10 +21,11 @@ * @author LiHang * @date 2023/4/24 */ @Component public class DllMapperProcessorStrategy { @Value("${spring.datasource.driver-class-name}") private static final String DATABASE_DRIVER = ""; private String DATABASE_DRIVER; public static List<DllMapperProcessor> processors = Lists.newArrayList(); @@ -29,11 +34,15 @@ processors.add(VciSpringUtil.getBean(DllSqlLiteMapperProcessor.class)); processors.add(VciSpringUtil.getBean(DllMySqlMapperProcessor.class)); processors.add(VciSpringUtil.getBean(DllOracleMapperProcessor.class)); processors.add(VciSpringUtil.getBean(DllDmMapperProcessor.class)); } public static DllMapperProcessor getProcessor(){ @Bean("dllMapper") public DllMapperProcessor getProcessor(){ for (DllMapperProcessor processor : processors) { if (processor.support(DATABASE_DRIVER)){ System.out.println("==========================================="); System.out.println("è·åDLLæä½ç±»æåï¼" + processor.getClass().getName()); return processor; } } Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java
@@ -35,6 +35,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import javax.validation.constraints.NotNull; import java.util.*; import java.util.concurrent.ConcurrentHashMap; @@ -64,13 +65,15 @@ /** * ddlæ°æ®æä½æå¡ */ private final DdlMapperProcessor ddlMapper = DdlMapperProcessStrategy.getProcessor(); @Autowired private DdlMapperProcessor ddlMapper; /** * dllæ°æ®æä½æå¡ */ private final DllMapperProcessor dllMapper = DllMapperProcessorStrategy.getProcessor(); @Autowired private DllMapperProcessor dllMapper; private static final String YES = "Y";