From c007f0ca1785db093d48f4846cda82fe8e955765 Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期三, 27 五月 2020 09:59:29 +0800 Subject: [PATCH] merage --- src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java | 554 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 462 insertions(+), 92 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java index 392adfb..0b10b35 100644 --- a/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java +++ b/src/main/java/com/highdatas/mdm/service/impl/MasterDataServiceImpl.java @@ -58,7 +58,14 @@ AntianaphylaxisClient antianaphylaxisClient; - + /** + * + * @description: 鏍规嵁琛ㄥ悕鍜宨d鑾峰彇鏁版嵁 + * @param tableName 琛ㄥ悕 + * @param id 鏁版嵁id + * @return: 鏁版嵁 + * + */ @Override public Result selectById(String tableName, String id) { try{ @@ -82,28 +89,71 @@ return Result.error(CodeMsg.SELECT_ERROR); } } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛鍜岃〃鍚嶈幏鍙栨暟鎹� + * @param tableName 琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character, String tableName) { return selectList(character, tableName, null,null, (maintainService.getNowVersion(tableName).getVersion())); } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛鍜岃〃鍚嶏紝绛涢�夋潯浠惰幏鍙栨暟鎹� + * @param tableName 琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character, String tableName, String whereSegment) { return selectList(character,tableName, whereSegment, (maintainService.getNowVersion(tableName).getVersion())); } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛鍜岃〃鍚嶏紝绛涢�夋潯浠讹紝鏁版嵁鐗堟湰鑾峰彇鏁版嵁 + * @param tableName 琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param version 鏁版嵁鐗堟湰 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character,String tableName, String whereSegment, String version) { return selectList(character, tableName, null, whereSegment, version); } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛锛屽瓧娈碉紝琛ㄥ悕锛岀瓫閫夋潯浠惰幏鍙栨暟鎹� + * @param tableName 琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param fieldList 瀛楁 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character, String tableName, List<String> fieldList, String whereSegment) { return selectList(character, tableName, fieldList, whereSegment, maintainService.getNowVersion(tableName).getVersion()); } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛锛屽瓧娈碉紝琛ㄥ悕锛岀瓫閫夋潯浠讹紝鏁版嵁鐗堟湰鑾峰彇鏁版嵁 + * @param tableName 琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param fieldList 瀛楁 + * @param version 鏁版嵁鐗堟湰 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character, String tableName,List<String> fieldList, String whereSegment, String version) { try{ @@ -130,12 +180,27 @@ } } - + /** + * + * @description: 鏍规嵁鐢ㄦ埛锛屽瓧娈碉紝琛ㄥ悕鑾峰彇鏁版嵁 + * @param tableName 琛ㄥ悕 + * @param fieldList 瀛楁 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁 + * + */ @Override public Result selectList(Character character, String tableName, List<String> fields) { return selectList(character, tableName,fields,Constant.WHERE_DEFAULT,(maintainService.getNowVersion(tableName).getVersion())); } - + /** + * + * @description: 鏍规嵁琛ㄥ悕锛岀瓫閫夋潯浠惰幏鍙栨暟鎹潯鏁� + * @param tableName 琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @return: 鏁版嵁鏉℃暟 + * + */ public Long getCount(String tableName, String whereSegment) { try{ if (StringUtils.isEmpty(whereSegment)) { @@ -149,18 +214,29 @@ return null; } } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁鏉℃暟 + * @param maintainId 鏁版嵁鐗堟湰 + * @param tableName 琛ㄥ悕 + * @param tableTempName 涓存椂琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param fieldList 瀛楁 + * @param version 鏁版嵁鐗堟湰 + * @param character 鐢ㄦ埛 + * @param fromOrderNo 浠庡摢涓増鏈紑濮嬪線鍓嶆帹 + * @param toOrderNo 鍒板摢涓増鏈粨鏉熷線鍓嶆帹 + * @return: 鏁版嵁鏉℃暟 + * + */ @Override public Long getCountByVersion (Character character, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) { try{ Maintain maintain = maintainService.selectById(maintainId); - String fields = getFields(character,tableName, maintain); - String Hfields = getFields(character, tableName, Constant.H, maintain); - String tempFields = getTempFields(character, tableName, Constant.MT, maintain); + String tempFields = getTempFields(character, tableName, Constant.A1, maintain); String A1fields = getFields(character, tableName, Constant.A1, maintain); - String A2fields = getFields(character, tableName, Constant.A2, maintain); - String tempHFields = getTempFields(character, tableName, Constant.H, maintain); + if (StringUtils.isEmpty(whereSegment)) { whereSegment = Constant.WHERE_DEFAULT; } @@ -168,7 +244,7 @@ if (StringUtils.isEmpty(fields)) { return 0L; } - count = mapper.getCountByVersion(tableName, tableTempName, fields, tempFields, Hfields, A1fields,A2fields,tempHFields, fromOrderNo, toOrderNo, DbUtils.quotedStr(maintainId), whereSegment); + count = mapper.getCountByVersion(tableName, tableTempName, fields, tempFields, A1fields,fromOrderNo, toOrderNo, whereSegment); return count; } catch (Exception e) { @@ -176,21 +252,33 @@ return null; } } - - public Long getCountByMaxVersion (Character character, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, Integer toOrderNo, String whereSegment) { + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏈�澶х増鏈殑鏁版嵁鏉℃暟 + * @param maintainId 鏁版嵁鐗堟湰 + * @param tableName 琛ㄥ悕 + * @param tableTempName 涓存椂琛ㄥ悕 + * @param whereSegment 绛涢�夋潯浠� + * @param fieldList 瀛楁 + * @param version 鏁版嵁鐗堟湰 + * @param character 鐢ㄦ埛 + * @return: 鏁版嵁鏉℃暟 + * + */ + public Long getCountByMaxVersion (Character character, String maintainId, String tableName,String tableTempName,Integer fromOrderNo, String whereSegment) { try{ Maintain maintain = maintainService.selectById(maintainId); String fields = getFields(character, tableName, maintain); - String Hfields = getFields(character, tableName, Constant.H, maintain); - String tempFields = getTempFields(character, tableName, Constant.MT, maintain); + + String tempFields = getTempFields(character, tableName, Constant.A1, maintain); String A1fields = getFields(character, tableName, Constant.A1, maintain); - String A2fields = getFields(character, tableName, Constant.A2, maintain); - String tempHFields = getTempFields(character, tableName, Constant.H, maintain); + if (StringUtils.isEmpty(whereSegment)) { whereSegment = Constant.WHERE_DEFAULT; } - Long count = mapper.getCountByMaxVersion(tableName, tableTempName, fields, tempFields, Hfields, A1fields,A2fields,tempHFields, fromOrderNo, toOrderNo, DbUtils.quotedStr(maintainId), whereSegment); + + Long count = mapper.getCountByMaxVersion(tableName, tableTempName, fields, tempFields, A1fields, fromOrderNo, whereSegment); return count; } catch (Exception e) { @@ -199,23 +287,54 @@ } } - + /** + * + * @description: 鏍规嵁琛ㄥ悕鑾峰彇瀛楁sql + * @param tableName 琛ㄥ悕 + * @return: 瀛楁sql + * + */ @Override public String getFields(String tableName) { return getFields(tableName, Constant.EMPTY_Str); } - + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇瀛楁sql + * @param tableName 琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @return: 瀛楁sql + * + */ @Override public String getFields(Character character, String tableName, Maintain maintain) { return getFields(character, tableName, null, maintain); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇瀛楁sql + * @param tableName 琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @param uuid 璇锋眰鍞竴鏍囪瘑锛宭og涓煡璇㈡椂闂翠娇鐢� + * @return: 瀛楁sql + * + */ @Override public String getFields(Character character, String tableName, Maintain maintain, String uuid) { return getFields(character, tableName, null, maintain, uuid); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰缁勮 casewhen 瀛楁sql + * @param tableName 琛ㄥ悕 + * @return: 瀛楁sql + * + */ private String getCaseWhenFields(String tableName) { List<TableSchemaResult> tableField = mapper.getTableField(tableName); ContentBuilder contentBuilder = new ContentBuilder(Constant.COMMA); @@ -229,6 +348,14 @@ } return contentBuilder.toString(); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 锛岃幏鍙栧瓧娈祍ql骞舵坊鍔犲埆鍚� + * @param tableName 琛ㄥ悕 + * @param alias 鍒悕 + * @return: 瀛楁sql + * + */ @Override public String getFields(String tableName, String alias) { List<TableSchemaResult> tableField = mapper.getTableField(tableName); @@ -248,11 +375,32 @@ } return contentBuilder.toString(); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇瀛楁sql锛屽苟娣诲姞鍒悕 + * @param tableName 琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @param alias 鍒悕 + * @return: 瀛楁sql + * + */ @Override public String getFields(Character character, String tableName, String alias, Maintain maintain) { return getFields(character, tableName, alias, maintain, null); } - @Override + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇瀛楁sql锛屽苟娣诲姞鍒悕 + * @param tableName 琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @param alias 鍒悕 + * @param uuid 璇锋眰鍞竴鏍囪瘑锛宭og涓煡璇㈡椂闂翠娇鐢� + * @return: 瀛楁sql + * + */ + @Override public String getFields(Character character, String tableName, String alias, Maintain maintain, String uuid) { List<SysField> fields; if (character == null) { @@ -285,15 +433,41 @@ return contentBuilder.toString(); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇涓存椂琛ㄥ瓧娈祍ql锛屽苟娣诲姞鍒悕 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @return: 瀛楁sql + * + */ @Override public String getTempFields(Character character, String tableName, Maintain maintain) { return getTempFields(character, tableName, null, maintain); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇涓存椂琛ㄥ瓧娈祍ql锛屽苟娣诲姞鍒悕 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @return: 瀛楁sql + * + */ @Override public String getTempFields(Character character, String tableName) { return getTempFields(character, tableName, Constant.EMPTY_Str); } + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛鑾峰彇涓存椂琛ㄥ瓧娈祍ql锛屽苟娣诲姞鑷畾涔夊埆鍚� + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param alias 鍒悕 + * @return: 瀛楁sql + * + */ @Override public String getTempFields(Character character, String tableName, String alias) { List<TableSchemaResult> tableField = mapper.getTableField(tableName); @@ -317,7 +491,16 @@ } return contentBuilder.toString(); } - + /** + * + * @description: 鏍规嵁琛ㄥ悕 鐢ㄦ埛锛� 鐗堟湰鑾峰彇涓存椂琛ㄥ瓧娈祍ql锛屽苟娣诲姞鑷畾涔夊埆鍚� + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param maintain 鐗堟湰 + * @param alias 鍒悕 + * @return: 瀛楁sql + * + */ @Override public String getTempFields(Character character, String tableName, String alias, Maintain maintain) { List<SysField> fields; @@ -379,49 +562,160 @@ } return fieldList.stream().map(tableSchemaResult -> tableSchemaResult.getFieldName()).collect(Collectors.toList()); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏁版嵁閲� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, Integer pageSize, boolean findMax) { return selectListByPageByVersion(character, tableName,Constant.WHERE_DEFAULT,pageNo,pageSize, findMax); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏁版嵁閲� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, boolean findMax) { return selectListByPageByVersion(character, tableName,null, whereSegment,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param pageNo 椤垫暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @param uuid 璇锋眰鍞竴鏍囪瘑锛宭og涓煡璇㈡椂闂翠娇鐢� + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, String version, boolean findMax) { return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, version, findMax); } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param pageNo 椤垫暟 + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, Integer pageNo, boolean findMax) { return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, null, String.valueOf(maintainService.getNowVersion(tableName).getVersion()), findMax); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏁版嵁閲� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, Integer pageSize, boolean findMax) { return selectListByPageByVersion(character, tableName,null,whereSegment,pageNo,pageSize, findMax); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param fieldList 绛涢�夊瓧娈� + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏁版嵁閲� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, boolean findMax) { return selectListByPageByVersion(character, tableName,null,whereSegment,pageNo, null, findMax); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param fieldList 瀛楁鍒楄〃 + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, Integer pageNo, boolean findMax) { return selectListByPageByVersion(character, tableName,null,Constant.WHERE_DEFAULT,pageNo, findMax); } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, String version, boolean findMax) { return selectListByPageByVersion(character, tableName, null,whereSegment, pageNo, null,version, findMax); } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @param uuid 鏃ュ織浣跨敤 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, String whereSegment, Integer pageNo, String version, boolean findMax, String uuid) { return selectListByPageByVersion(character, tableName, null,whereSegment, pageNo, null,version, findMax, uuid); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public List<Map<String, Object>> selectListByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, String version, boolean findMax) { Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version); @@ -441,32 +735,22 @@ String fields; String tempFields; - String Hfields; - String A1fields; - String A2fields; + String A1Fields; - String tempHfields; + if (fieldList == null || fieldList.size() == 0) { fields = getFields(character, tableName, maintainFromVersion); - Hfields = getFields(character, tableName,Constant.H, maintainFromVersion); - A1fields = getFields(character, tableName,Constant.A1, maintainFromVersion); - A2fields = getFields(character, tableName,Constant.A2, maintainFromVersion); - tempFields = getTempFields(character, tableName, maintainFromVersion); - tempHfields = getTempFields(character, tableName, Constant.H, maintainFromVersion); + A1Fields = getFields(character, tableName, Constant.A1, maintainFromVersion); + tempFields = getTempFields(character, tableName, Constant.A1, maintainFromVersion); } else { fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA)); - Hfields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA)); - A1fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)).collect(Collectors.joining(Constant.COMMA)); - A2fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A2, s)).collect(Collectors.joining(Constant.COMMA)); + A1Fields = fieldList.stream() + .map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)) + .collect(Collectors.joining(Constant.COMMA)); tempFields = fieldList.stream() .map(s -> s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .collect(Collectors.joining(Constant.COMMA)); - - tempHfields = fieldList.stream() - .map(s -> - s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .map(s -> MessageFormat.format(Constant.Alias,Constant.H,s)) + .map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)) .collect(Collectors.joining(Constant.COMMA)); } @@ -482,15 +766,25 @@ long con = maintainIds.stream().map(s -> builder.append(DbUtils.quotedStr(s))).count(); } - result = mapper.selectByPageByMaxVersion(tableName,tableTempName,fields,tempFields, Hfields, A1fields, A2fields, tempHfields, fromVersionOrderNo, nowVersionOrderNo, DbUtils.quotedStr(maintainFromVersion.getId()), whereSegment, null); + result = mapper.selectByPageByMaxVersion(tableName,tableTempName,fields, A1Fields, tempFields, nowVersionOrderNo, whereSegment, null); }else { - result = mapper.selectByPageByVersion(tableName,tableTempName,fields,tempFields, Hfields, A1fields, A2fields, tempHfields, nowVersionOrderNo, fromVersionOrderNo, DbUtils.quotedStr(maintainFromVersion.getId()), whereSegment, null); + result = mapper.selectByPageByVersion(tableName,tableTempName,fields, A1Fields, tempFields, nowVersionOrderNo, fromVersionOrderNo, whereSegment, null); } return result; } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁sql璇彞 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁sql璇彞 + * + */ @Override public String selectByVersionSql(Character character, String tableName, List<String> fieldList, String whereSegment, String version, boolean findMax) { Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version); @@ -590,6 +884,17 @@ return result; } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁閲� + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁閲� + * + */ @Override public Long getCountByVersion(Character character, String tableName, String whereSegment, String version, boolean findMax) { Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version); @@ -616,21 +921,62 @@ nowVersionOrderNo = nowVersionOrderNo - 1; } - count = getCountByMaxVersion(character, maintainFromVersion.getId(), tableName, tableTempName, fromVersionOrderNo, nowVersionOrderNo, whereSegment); + count = getCountByMaxVersion(character, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, whereSegment); }else { count = getCountByVersion(character, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, fromVersionOrderNo, whereSegment); } return count; } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏉℃暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version, boolean findMax) { return selectListByPageByVersion(character, tableName, fieldList, whereSegment, pageNo, pageSize, version, findMax, null); } + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param fieldList 瀛楁鍒楄〃 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏉℃暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version, boolean findMax, String uuid) { return selectListByPageByVersion(character, tableName, fieldList, whereSegment, pageNo, pageSize, version, findMax, uuid, null); } - + /** + * + * @description: 鏍规嵁鏉′欢鑾峰彇鏁版嵁 + * @param tableName 涓存椂琛ㄥ悕 + * @param character 鐢ㄦ埛 + * @param whereSegment 绛涢�夋潯浠� + * @param pageNo 椤垫暟 + * @param pageSize 姣忛〉鏉℃暟 + * @param version 鐗堟湰鍙� + * @param findMax 鏄惁鏌ヨ鐨勬渶澶х増鏈殑鏁版嵁 + * @param uuid 渚涙棩蹇椾娇鐢� + * @param page 宸茬粡璁$畻濂界殑鍒嗛〉瀵硅薄 + * @return: 鏁版嵁 + * + */ @Override public Result selectListByPageByVersion(Character character, String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version, boolean findMax, String uuid, Page page) { String fieldStr = ""; @@ -680,7 +1026,7 @@ nowVersionOrderNo = nowVersionOrderNo - 1; } - count = getCountByMaxVersion(character, maintainFromVersion.getId(), tableName, tableTempName, fromVersionOrderNo, nowVersionOrderNo, whereSegment); + count = getCountByMaxVersion(character, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, whereSegment); }else { count = getCountByVersion(character, maintainFromVersion.getId(), tableName, tableTempName, nowVersionOrderNo, fromVersionOrderNo, whereSegment); } @@ -711,29 +1057,17 @@ String limitSQL = page.getLimitSQL(); String fields; String tempFields; - String Hfields; - String A1fields; - String A2fields; - String tempHfields; + String A1Fields; if (fieldList == null || fieldList.size() == 0) { fields = getFields(character, tableName, maintainFromVersion, uuid); + A1Fields = getFields(character, tableName, Constant.A1, maintainFromVersion, uuid); List<String> fieldStrList = DbUtils.split(fields, Constant.COMMA); - - Hfields = fieldStrList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA)); - A1fields = fieldStrList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)).collect(Collectors.joining(Constant.COMMA)); - A2fields = fieldStrList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A2, s)).collect(Collectors.joining(Constant.COMMA)); tempFields = fieldStrList.stream() .map(s -> s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .map(s -> MessageFormat.format(Constant.Alias,Constant.MT, s)) - .collect(Collectors.joining(Constant.COMMA)); - - tempHfields = fieldStrList.stream() - .map(s -> - s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .map(s -> MessageFormat.format(Constant.Alias,Constant.H,s)) + .map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)) .collect(Collectors.joining(Constant.COMMA)); } else { @@ -741,19 +1075,13 @@ fieldList.add(Constant.ID); } fields = fieldList.stream().collect(Collectors.joining(Constant.COMMA)); - Hfields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.H, s)).collect(Collectors.joining(Constant.COMMA)); - A1fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)).collect(Collectors.joining(Constant.COMMA)); - A2fields = fieldList.stream().map(s -> MessageFormat.format(Constant.Alias,Constant.A2, s)).collect(Collectors.joining(Constant.COMMA)); + A1Fields = fieldList.stream() + .map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)) + .collect(Collectors.joining(Constant.COMMA)); tempFields = fieldList.stream() .map(s -> s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .map(s -> MessageFormat.format(Constant.Alias,Constant.MT, s)) - .collect(Collectors.joining(Constant.COMMA)); - - tempHfields = fieldList.stream() - .map(s -> - s.equalsIgnoreCase(Constant.ID) ? MessageFormat.format("{0} as id",Constant.STD_ID): s) - .map(s -> MessageFormat.format(Constant.Alias,Constant.H,s)) + .map(s -> MessageFormat.format(Constant.Alias,Constant.A1, s)) .collect(Collectors.joining(Constant.COMMA)); } @@ -773,10 +1101,10 @@ long con = maintainIds.stream().map(s -> builder.append(DbUtils.quotedStr(s))).count(); } - result = mapper.selectByPageByMaxVersion(tableName,tableTempName,fields,tempFields, Hfields, A1fields, A2fields, tempHfields, fromVersionOrderNo, nowVersionOrderNo, DbUtils.quotedStr(maintainFromVersion.getId()), whereSegment, limitSQL); + result = mapper.selectByPageByMaxVersion(tableName,tableTempName,fields, A1Fields, tempFields, nowVersionOrderNo, whereSegment, limitSQL); }else { - result = mapper.selectByPageByVersion(tableName,tableTempName,fields,tempFields, Hfields, A1fields, A2fields, tempHfields, nowVersionOrderNo, fromVersionOrderNo, DbUtils.quotedStr(maintainFromVersion.getId()), whereSegment, limitSQL); + result = mapper.selectByPageByVersion(tableName,tableTempName,fields, A1Fields, tempFields, nowVersionOrderNo, fromVersionOrderNo, whereSegment, limitSQL); } endDate = new Date(); log.info(MessageFormat.format("master tag:{0} MASTER-- select dataMap :{1} ms",uuid, (endDate.getTime() - startDate.getTime()))); @@ -812,11 +1140,29 @@ return Result.success(resultobject); } - + /** + * + * @description: 涓婁紶鏁版嵁鍚庣殑鎿嶄綔 + * @param tableName 涓存椂琛ㄥ悕 + * @param uploadType 鏇存柊绫诲瀷 + * @param userId 鐢ㄦ埛id + * @return: 鐢熸垚鍚庣殑鐗堟湰 + * + */ @Override public Maintain uploadedData(String tableName, SysAssembleUpdateType uploadType, String userId) { return uploadedData(tableName, uploadType, userId, true); } + /** + * + * @description: 涓婁紶鏁版嵁鍚庣殑鎿嶄綔 + * @param tableName 涓存椂琛ㄥ悕 + * @param uploadType 鏇存柊绫诲瀷 + * @param bigVersion 鏄惁鐢熸垚澶х増鏈� + * @param userId 鐢ㄦ埛id + * @return: 鐢熸垚鍚庣殑鐗堟湰 + * + */ @Override public Maintain uploadedData(String tableName, SysAssembleUpdateType uploadType, String userId, boolean bigVersion) { MenuMapping menuMapping = menuMappingService.selectOne(new EntityWrapper<MenuMapping>().eq("table_name",tableName)); @@ -901,6 +1247,7 @@ .setDesp("鎵归噺涓婁紶鏁版嵁"); maintain.insert(); + connection.commit(); } catch (Exception e) { e.printStackTrace(); @@ -921,6 +1268,7 @@ //bak + @Deprecated public Result selectListByPage(String tableName, List<String> fieldList, String whereSegment, Integer pageNo, Integer pageSize, String version) { Maintain maintainFromVersion = maintainService.getMaintainFromVersion(tableName, version); long changeCount = maintainService.countVersionOperatorByType(tableName + Constant.RECORD, whereSegment, maintainFromVersion.getId(), Operate.create); @@ -1274,7 +1622,14 @@ return Result.error(CodeMsg.DELETE_ERROR); } } - + /** + * + * @description: 鑾峰彇琛ㄤ腑distinct鍚庣殑鍊� + * @param tableName 涓存椂琛ㄥ悕 + * @param field 瀛楁鍚� + * @return: 鍘婚噸鍚庣殑鏁版嵁 + * + */ @Override public Set<String> getFieldValByTable(String tableName, String field) { //鏌ョ紦瀛� @@ -1289,10 +1644,10 @@ } // 璇绘暟鎹簱 String tempTableName = tableName + Constant.RECORD; - List<Map<String, Object>> maps = mapper.selectByPage(tableName, MessageFormat.format(Constant.DISTINCT, field), Constant.WHERE_DEFAULT, null); + // List<Map<String, Object>> maps = mapper.selectByPage(tableName, MessageFormat.format(Constant.DISTINCT, field), Constant.WHERE_DEFAULT, null); - List<Map<String, Object>> tempMaps = mapper.selectByPage(tempTableName, MessageFormat.format(Constant.DISTINCT, field), Constant.WHERE_DEFAULT, null); - maps.addAll(tempMaps); + List<Map<String, Object>> maps = mapper.selectDistinct(tempTableName, field, Constant.WHERE_DEFAULT); + if (maps.size() == 0) { return null; } @@ -1304,7 +1659,15 @@ redisClient.putRedisList(key, new ArrayList(result)); return result; } - + /** + * + * @description: 鑾峰彇琛ㄤ腑distinct鍚庣殑鍊� + * @param maintainFieldId 瀛楁鐗堟湰id + * @param tableName 琛ㄥ悕 + * @param field 瀛楁鍚� + * @return: 鍘婚噸鍚庣殑鏁版嵁 + * + */ @Override public Set<String> getFieldValByMaintainField(String maintainFieldId, String field, String tableName) { //鏌ョ紦瀛� @@ -1346,7 +1709,13 @@ return result; } - + /** + * + * @description: 鍒涘缓绱㈠紩 + * @param recordTableName 璁板綍琛ㄥ悕绉� + * @return: + * + */ @Override public void createIdx(String recordTableName) { String idxName = MessageFormat.format(Constant.IDX_TEMPLATE, recordTableName, Constant.STD_ID); @@ -1356,7 +1725,8 @@ .map(stringObjectMap -> stringObjectMap.get("index_name").toString()) .filter(s -> idxName.equalsIgnoreCase(s)).count(); if (existsIdx == 0) { - mapper.createIdx(recordTableName, idxName, Constant.STD_ID); + + mapper.createIdx(recordTableName, idxName, Constant.STD_ID + Constant.COMMA + Constant.DEAL); } } } -- Gitblit v1.8.0