¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.vci.ubcs.ddl.service; |
| | | |
| | | import com.vci.ubcs.ddl.bo.DdlTableBO; |
| | | import com.vci.ubcs.omd.dto.BtmAndLinkTypeDdlDTO; |
| | | import com.vci.ubcs.omd.dto.BtmTypeDTO; |
| | | import com.vci.ubcs.omd.entity.ModifyAttributeInfo; |
| | | import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; |
| | | import com.vci.ubcs.omd.vo.BtmTypeVO; |
| | | import com.vci.ubcs.omd.vo.LinkTypeAttributeVO; |
| | | import com.vci.ubcs.omd.vo.LinkTypeVO; |
| | | import com.vci.ubcs.starter.exception.VciBaseException; |
| | | import org.springblade.core.tool.api.R; |
| | | |
| | | import java.util.Collection; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Description: æ°æ®åºæä½æå¡ç±» |
| | | * 注æçæ¯ï¼oracle对äºDDLæä½é½ä¼å
æäº¤ä¸æ¬¡äºå¡ï¼å½æ§è¡å®æåä¼å次æäº¤ä¸æ¬¡äºå¡ |
| | | * |
| | | * @author LiHang |
| | | * @date 2023/4/24 |
| | | */ |
| | | public interface IDdlService { |
| | | |
| | | /** |
| | | * æ ¡éªä¸å¡ç±»åçæ°æ®åºè¡¨ä¸æ¯å¦ææ°æ® |
| | | * @param pkBtmType ä¸å¡ç±»åçä¸»é® |
| | | * @return trueè¡¨ç¤ºææ°æ®ï¼falseè¡¨ç¤ºæ²¡ææ°æ® |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
æ¥è¯¢åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | boolean checkTableHasData(String pkBtmType) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ ¹æ®ä¸å¡ç±»åæè
龿¥ç±»åç主é®è·åæ°æ®åºè¡¨æ ¼çåç§° |
| | | * @param pkBtmType ä¸å¡ç±»åæè
龿¥ç±»åçä¸»é® |
| | | * @return æ°æ®åºè¡¨åç§° |
| | | */ |
| | | String getTableNameByBtmTypeOid(String pkBtmType); |
| | | |
| | | /** |
| | | * æ ¹æ®ä¸å¡ç±»åè·å龿¥ç±»åçè±æåç§°è·åæ°æ®åºè¡¨æ ¼çåç§° |
| | | * @param id ä¸å¡ç±»åè·å龿¥ç±»åçè±æåç§° |
| | | * @return æ°æ®åºè¡¨åç§° |
| | | */ |
| | | String getTableNameByBtmTypeId(String id); |
| | | |
| | | /** |
| | | * æ ¡éªä¸å¡ç±»åçæ°æ®åºè¡¨ä¸æ¯å¦ææ°æ® |
| | | * @param id ä¸å¡ç±»åçè±æåç§° |
| | | * @return trueè¡¨ç¤ºææ°æ®ï¼falseè¡¨ç¤ºæ²¡ææ°æ® |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
æ¥è¯¢åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | boolean checkTableHasDataById(String id) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ¹éå°ä¸å¡ç±»ååå»ºæ°æ®åºè¡¨ |
| | | * @param pkBtmTypes ä¸å¡ç±»åçä¸»é® |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
å建表åºç°äºéè¯¯çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void createDbTables(String pkBtmTypes) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ¹éå°ä¸å¡ç±»ååå»ºæ°æ®åºè¡¨ |
| | | * @param oidCollection ä¸å¡ç±»åç主é®éå |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
å建表åºç°äºéè¯¯çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void createDbTablesByOidCollection(Collection<String> oidCollection) throws VciBaseException; |
| | | |
| | | /** |
| | | * è·åå建çsqlè¯å¥ä¸å±æ§é¨å |
| | | * @param attributeVOList 屿§çç«ç¢ |
| | | * @return sqlè¯å¥ |
| | | */ |
| | | String getCreateSqlByAttributeForBtm(List<BtmTypeAttributeVO> attributeVOList); |
| | | |
| | | /** |
| | | * æ¹éå°ä¸å¡ç±»ååå»ºæ°æ®åºè¡¨ |
| | | * @param ids ä¸å¡ç±»åçè±æåç§° |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
å建表åºç°äºéè¯¯çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void createDbTablesById(String ids) throws VciBaseException; |
| | | |
| | | /** |
| | | * ä¿®æ¹ä¸å¡ç±»åä¸ç屿§å段çé¿åº¦ï¼æ³¨æå¨æ§è¡è¿ä¸ªæ¹æ³æ¶å°±ä¼å°ä»¥åçäºå¡æäº¤ã |
| | | * @param modifyLengthAttrDOList éè¦ä¿®æ¹ç屿§å¯¹è±¡ |
| | | * @throws VciBaseException æ§è¡åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void changeColumnForBtm(List<BtmTypeAttributeVO> modifyLengthAttrDOList) throws VciBaseException; |
| | | |
| | | /** |
| | | * ä¿®æ¹é¾æ¥ç±»åä¸ç屿§å段çé¿åº¦ï¼æ³¨æå¨æ§è¡è¿ä¸ªæ¹æ³æ¶å°±ä¼å°ä»¥åçäºå¡æäº¤ã |
| | | * @param modifyLengthAttrDOListForLinkType éè¦ä¿®æ¹ç屿§å¯¹è±¡ |
| | | * @throws VciBaseException æ§è¡åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void changeColumnForLink(List<LinkTypeAttributeVO> modifyLengthAttrDOListForLinkType) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ·»å 屿§å段å°ä¸å¡ç±»åä¸ï¼æ³¨æå¨æ§è¡è¿ä¸ªæ¹æ³æ¶å°±ä¼å°ä»¥åçäºå¡æäº¤ã |
| | | * @param addAttrDOList éè¦æ·»å ç屿§å¯¹è±¡ |
| | | * @throws VciBaseException æ§è¡åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void addColumn2TableForBtm(List<BtmTypeAttributeVO> addAttrDOList) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ·»å 屿§å段å°é¾æ¥ç±»åä¸ï¼æ³¨æå¨æ§è¡è¿ä¸ªæ¹æ³æ¶å°±ä¼å°ä»¥åçäºå¡æäº¤ã |
| | | * @param addAttrDOListForLinkType éè¦æ·»å ç屿§å¯¹è±¡ |
| | | * @throws VciBaseException æ§è¡åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void addColumn2TableForLink(List<LinkTypeAttributeVO> addAttrDOListForLinkType) throws VciBaseException; |
| | | |
| | | /** |
| | | * å¤æè¡¨ä¸æ¯å¦ææ°æ® |
| | | * @param tableName è¡¨æ ¼çåç§° |
| | | * @return trueè¡¨ç¤ºææ°æ®ï¼falseè¡¨ç¤ºæ²¡ææ°æ®ï¼æè
è¿ä¸ªè¡¨æ ¼ä¸åå¨çæ¶åæåºå¼å¸¸ |
| | | * @throws VciBaseException åæ°éè¯¯çæ¶åæåºå¼å¸¸ |
| | | */ |
| | | boolean checkTableHasDataByTableName(String tableName) throws VciBaseException; |
| | | |
| | | /** |
| | | * å建è§å¾ |
| | | * @param viewCreateSql è§å¾çSQLè¯å¥ |
| | | * @throws VciBaseException åæ°é误æè
æ§è¡éè¯¯çæ¶å伿åºå¼å¸¸ï¼æ§è¡é误主è¦å
æ¬SQLè¯å¥éè¯¯ï¼æ²¡ææéç |
| | | */ |
| | | void createViewBySql(String viewCreateSql) throws VciBaseException; |
| | | |
| | | /** |
| | | * å é¤è¡¨æ ¼æè
è§å¾ |
| | | * @param tableName è¡¨æ ¼åç§°æè
è§å¾åç§° |
| | | * @throws VciBaseException åæ°é误æè
æ§è¡éè¯¯çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void dropTableByName(String tableName) throws VciBaseException; |
| | | /** |
| | | * å é¤è¡¨æ ¼çæä¸å |
| | | * @param tableName è¡¨æ ¼åç§° |
| | | * @param columnName åçåç§° |
| | | */ |
| | | void dropColumnByName(String tableName, String columnName); |
| | | |
| | | /** |
| | | * æ ¡éªä¸å¡ç±»åæè
龿¥ç±»åç对åºçè¡¨æ ¼æ¯å¦åå¨ |
| | | * @param pkBtmType ä¸å¡ç±»åæè
龿¥ç±»åçè¡¨æ ¼ |
| | | * @return true表示åå¨ï¼false表示ä¸åå¨ |
| | | */ |
| | | boolean checkTableExist(String pkBtmType); |
| | | |
| | | /** |
| | | * æ ¹æ®è¡¨æ ¼çåç§°å¤æè¡¨æ ¼æ¯å¦åå¨ |
| | | * @param tableName è¡¨æ ¼åç§° |
| | | * @return rue表示åå¨ï¼false表示ä¸åå¨ |
| | | */ |
| | | boolean checkTableExistByTableName(String tableName); |
| | | |
| | | /** |
| | | * æ ¡éªä¸å¡ç±»åæè
龿¥ç±»åæå¯¹åºçè¡¨æ ¼æ¯å¦åå¨ |
| | | * @param id ä¸å¡ç±»åæè
龿¥ç±»åçè±æåç§° |
| | | * @return true表示åå¨ï¼false表示ä¸åå¨ |
| | | */ |
| | | boolean checkTableExistById(String id); |
| | | |
| | | /** |
| | | * è·åæ°æ®åºåä¸å¡ç±»åä¸çä¸åçå°æ¹ |
| | | * @param btmTypeVOList ä¸å¡ç±»åå¯¹è±¡ï¼æå±æ§æ¶éè¦å
å«å±æ§ |
| | | * @param linkTypeVOList 龿¥ç±»åå¯¹è±¡ï¼æå±æ§æ¶éè¦å
å«å±æ§ |
| | | * @return ä¸åçå°æ¹ï¼æ¯ä¸ä¸ªä¸å¡ç±»åæè
龿¥ç±»å䏿¡æ°æ® |
| | | */ |
| | | List<ModifyAttributeInfo> checkDifferent(List<BtmTypeVO> btmTypeVOList, List<LinkTypeVO> linkTypeVOList) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ¸
çä¸å¡ç±»åä¸åæ°æ®åºéä¸ä¸æ ·ç |
| | | * @param differentAttributeList ä¸åç屿§çå表 |
| | | * @param btmTypeVOList ä¸å¡ç±»åæ°æ® |
| | | * @param linkTypeVOList 龿¥ç±»åæ°æ® |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
æ§è¡åºéçæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | void reflexDifferent(List<ModifyAttributeInfo> differentAttributeList,List<BtmTypeVO> btmTypeVOList, List<LinkTypeVO> linkTypeVOList) throws VciBaseException; |
| | | |
| | | /** |
| | | * è·åæ°æ®åºä¸ææçè¡¨æ ¼ |
| | | * @return è¡¨æ ¼çåç§°ï¼å
¨æ¯å¤§å |
| | | */ |
| | | List<String> listAllTableName() ; |
| | | |
| | | /** |
| | | * æ¥è¯¢æ°æ®åºä¸çè¡¨æ ¼ä¿¡æ¯ |
| | | * @param tableNamesCollections æ°æ®åºè¡¨åéå |
| | | * @return 卿°æ®åºä¸çä¿¡æ¯ |
| | | * @throws VciBaseException åæ°ä¸ºç©ºæè
æ°æ®åºè¡¨ä¸åå¨çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | List<DdlTableBO> listTableInfoInDB(Collection<String> tableNamesCollections) throws VciBaseException; |
| | | |
| | | /** |
| | | * å¯¼åºæ°æ®åºä¸çè¡¨æ ¼ä¿¡æ¯å°excelæä»¶ |
| | | * @param tableNamesCollections è¡¨æ ¼åç§°çéå |
| | | * @param merge åå¹¶è¡¨æ ¼åç§° |
| | | * @return excelçæä»¶åç§° |
| | | * @throws VciBaseException èé£ä¸ºç©ºæè
æ°æ®åºè¡¨ä¸åå¨çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | String exportDataBase2File(Collection<String> tableNamesCollections,boolean merge) throws VciBaseException; |
| | | |
| | | /** |
| | | * è·åå卿件æéè¦çä¸´æ¶æä»¶å¤¹ï¼æä»¶å¤¹ä¸å·²ç»å
å«äº |
| | | * @return æä»¶å¤¹çå°åï¼å¦æé
ç½®æä»¶æ²¡æé
ç½®ï¼åé»è®¤è¿åå½åé¡¹ç®æå¨çæä»¶å¤¹ |
| | | */ |
| | | String getTempFolder(); |
| | | |
| | | /** |
| | | * å¯¼åºæ°æ®åºä¸çè¡¨æ ¼ä¿¡æ¯å°wordæä»¶ä¸ |
| | | * @param tableNamesCollections è¡¨æ ¼åç§°çéå |
| | | * @return wordçæä»¶åç§° |
| | | * @throws VciBaseException èé£ä¸ºç©ºæè
æ°æ®åºè¡¨ä¸åå¨çæ¶å伿åºå¼å¸¸ |
| | | */ |
| | | String exportDataBase2Word(List<String> tableNamesCollections) throws VciBaseException; |
| | | |
| | | /** |
| | | * æ·è´æ°æ®å°word模æ¿ä¸ |
| | | * @param tableDataBO è¦åå
¥çæ°æ® |
| | | * @return word æä»¶è·¯å¾ |
| | | *//* |
| | | String writeDataToWord(WordMergeStartTableDataBO tableDataBO);*/ |
| | | |
| | | /** |
| | | * 夿æ¯å¦ä¸ºå
¼å®¹æ§ç表ï¼è¿äºè¡¨ä¸åºè¯¥è¢«å建åä¿®æ¹ |
| | | * @param btmTypeId ä¸å¡ç±»åçè±æåç§° |
| | | * @param linkTypeId ä¸å¡ç±»åç䏿åç§° |
| | | * @return true 表示为å
¼å®¹æ§ç表ï¼ç¨æ·ï¼è§è²ï¼é¨é¨ï¼æéè¿äº |
| | | */ |
| | | boolean isCompatibilityTable(String btmTypeId,String linkTypeId); |
| | | |
| | | /** |
| | | * æ°æ®åºæ°å¢æä¿®æ¹è¡¨ |
| | | * @param ddlDTO ä¸å¡ç±»åä¼ è¾å¯¹è±¡ |
| | | * @return æ§è¡ç»æ |
| | | */ |
| | | R submit(BtmAndLinkTypeDdlDTO ddlDTO); |
| | | |
| | | /** |
| | | * æè¡¨åè·åè¡¨ä¿¡æ¯ |
| | | * @param tableName 表å |
| | | * @return è¡¨ä¿¡æ¯ |
| | | */ |
| | | DdlTableBO getTableColumnByTableName(String tableName); |
| | | |
| | | /** |
| | | * è·åææè¡¨ä¿¡æ¯ |
| | | * @return 表信æ¯éå |
| | | */ |
| | | List<BtmTypeVO> getAllTableInfo(); |
| | | } |