From 1d0042d823333554cc1b74b092496e5aff38d502 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 04 七月 2023 18:46:11 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs

---
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeClassifyTemplateAttrDTO.java          |   96 +++++++------
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java                 |   34 ++++
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java           |   13 +
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllMapper.java                                   |   33 +++-
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java                    |    8 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java |   12 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java                 |   75 ++++++++++
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeImprotParmaDatVO.java        |    8 
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java             |   11 +
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DdlDmMapper.java                                 |   55 +++++++
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllDmMapper.java                                 |   11 +
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java                        |    7 
 12 files changed, 288 insertions(+), 75 deletions(-)

diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeClassifyTemplateAttrDTO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeClassifyTemplateAttrDTO.java
index be49c9c..da4b3a1 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/dto/CodeClassifyTemplateAttrDTO.java
+++ b/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;
 
 }
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeImprotParmaDatVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeImprotParmaDatVO.java
index ac03baf..cc5b2f9 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeImprotParmaDatVO.java
+++ b/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 +
                 '}';
     }
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java
index 68256fb..10740cd 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java
+++ b/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 @@
 		}
 
 		//鍒ゆ柇浼犺繃鏉ョ殑鍙傜収閰嶇疆鏄惁鏄痡son鏍煎紡
-		if(StringUtils.isNotBlank(codeClassifyTemplateAttrDTO.getReferbtmid())&&!checkKVObj(codeClassifyTemplateAttrDTO.getReferbtmid())){
+		if(StringUtils.isNotBlank(codeClassifyTemplateAttrDTO.getReferBtmId())&&!checkKVObj(codeClassifyTemplateAttrDTO.getReferBtmId())){
 			throw new VciBaseException("鏋氫妇娉ㄥ叆鏁版嵁鏍煎紡閿欒!");
 		}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index 90a9ab3..931fe88 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/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<>();
 
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DdlDmMapper.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DdlDmMapper.java
new file mode 100644
index 0000000..e19a148
--- /dev/null
+++ b/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);
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllDmMapper.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllDmMapper.java
new file mode 100644
index 0000000..46d9f45
--- /dev/null
+++ b/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{
+
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllMapper.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllMapper.java
index d7664a2..ce77cee 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/mapper/DllMapper.java
+++ b/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);
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlDmMapperProcessor.java
new file mode 100644
index 0000000..d40064d
--- /dev/null
+++ b/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]::鍔犺浇杈炬ⅵ鏁版嵁搴揇DL鎿嶄綔鏈嶅姟鎴愬姛");
+		}else {
+			System.out.println("[fail]::鍔犺浇杈炬ⅵ鏁版嵁搴揇DL鎿嶄綔鏈嶅姟澶辫触");
+		}
+	}
+	@Override
+	public void modifyTableBySqlBase(String tableName, String attributeSql) {
+		modifyTableBySql(tableName,attributeSql);
+	}
+
+	@Override
+	boolean support(String url) {
+		return "dm.jdbc.driver.DmDriver".equals(url);
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
index 5f77cc6..578d9b8 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/ddl/DdlMapperProcessStrategy.java
+++ b/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;
 			}
 		}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java
new file mode 100644
index 0000000..e93f205
--- /dev/null
+++ b/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: 搴旂敤浜庤揪姊︽暟鎹紝鐢熸垚鍒涘缓琛ㄦ搷浣渟ql鐨勫鐞嗗櫒
+ *
+ * @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]::鍔犺浇杈炬ⅵ鏁版嵁搴揇LL鎿嶄綔鏈嶅姟鎴愬姛");
+		}else {
+			System.out.println("[fail]::鍔犺浇杈炬ⅵ鏁版嵁搴揇LL鎿嶄綔鏈嶅姟澶辫触");
+		}
+	}
+
+	@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);
+	}
+}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
index 678ed44..db82496 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessorStrategy.java
+++ b/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;
 			}
 		}
diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java
index 6d1f373..bc9b2ad 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java
+++ b/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";
 

--
Gitblit v1.9.3