From c259536f2c3055f4f81822e159a94cdc59cc9483 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期六, 24 八月 2024 15:30:53 +0800 Subject: [PATCH] 首页后台接口基本全部完善测试(待联调) --- Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/AppConfigDetailInfoVO.java | 28 + Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java | 4 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmHMSysModConfigServiceI.java | 52 ++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmHMSysModConfigServiceImpl.java | 642 +++++++++++++++++++++++++++++++++++++-- Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/ExpExcelConditionVO.java | 54 +++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java | 171 ++++++++++ 6 files changed, 891 insertions(+), 60 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/AppConfigDetailInfoVO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/AppConfigDetailInfoVO.java new file mode 100644 index 0000000..bb87b86 --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/AppConfigDetailInfoVO.java @@ -0,0 +1,28 @@ +package com.vci.pagemodel; + +import com.vci.corba.framework.data.AppConfigDetailInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 绯荤粺閰嶇疆瀵硅薄 + * @author ludc + * @date 2024/8/24 13:54 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class AppConfigDetailInfoVO { + + /** + * 闇�瑕佺殑鍙傛暟瀵硅薄 + */ + private AppConfigDetailInfo appConfigDetailInfo; + + /** + * 鏄惁涓烘搷浣滈厤缃」鍒嗛厤 + */ + private boolean isConfCategorys; + +} diff --git a/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/ExpExcelConditionVO.java b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/ExpExcelConditionVO.java new file mode 100644 index 0000000..5695483 --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/ExpExcelConditionVO.java @@ -0,0 +1,54 @@ +package com.vci.pagemodel; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; +import java.util.Map; + +/** + * 瀵煎嚭excel鏃剁殑鎺ュ彛鏉′欢瀵硅薄 + * @author ludc + * @date 2024/8/24 11:38 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ExpExcelConditionVO { + + /** + * 瀵煎嚭璧峰椤� + */ + private Integer startPage; + + /** + * 瀵煎嚭缁撴潫椤� + */ + private Integer endPage; + + /** + * 瀵煎嚭绫诲瀷锛氬叏閮ㄥ鍑猴細all锛岄�夋嫨瀵煎嚭锛歴elect锛屾寜椤电爜瀵煎嚭锛歱age + */ + private String expType; + + /** + * 瀵煎嚭鐨勫睘鎬у垪琛紙閰嶅悎isSelectExp浣跨敤锛� + */ + private List<String> expAttrNames; + + /** + * 鎸夐�夋嫨瀵煎嚭鏃讹紝閫夋嫨鐨勬暟鎹殑鍞竴鏍囪瘑锛氳兘閫氳繃璇ヨ〃绀烘煡璇㈠埌鍏蜂綋鏁版嵁鐨� + */ + private List<String> selectDataIdentify; + + /** + * 瀵煎嚭鐨勬枃浠跺悕锛氬鏋滆浼犵殑璇濓紝鍙墠绔嚜宸变紶鏂囦欢鍚庣紑 + */ + private String expFileName; + + /** + * 鍏朵粬瀵煎嚭鏉′欢 + */ + private Map<String,Object> conditionMap; +} diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmHMSysModConfigServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmHMSysModConfigServiceI.java index 2805f22..e4e47af 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmHMSysModConfigServiceI.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmHMSysModConfigServiceI.java @@ -2,7 +2,11 @@ import com.vci.common.exception.VciException; import com.vci.corba.common.PLException; +import com.vci.corba.framework.data.AppConfigCategoryInfo; +import com.vci.corba.framework.data.AppConfigDetailInfo; import com.vci.corba.framework.data.FuncOperationInfo; +import com.vci.corba.framework.data.OperateInfo; +import com.vci.pagemodel.ExpExcelConditionVO; import com.vci.pagemodel.MenuVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.BaseResult; @@ -52,7 +56,27 @@ * 澧炲姞鎿嶄綔绫诲瀷 * @return */ - boolean addOperationType(List<FuncOperationInfo> funcOperationInfoList); + boolean addFuncOperationType(List<FuncOperationInfo> funcOperationInfoList); + + /** + * 澧炲姞鎿嶄綔绫诲瀷 + * @return + */ + OperateInfo addOperationType(OperateInfo operateInfo); + + /** + * 淇敼鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + OperateInfo updateOperationType(OperateInfo operateInfo) throws VciBaseException; + + /** + * 鍒犻櫎鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + boolean delOperationType(OperateInfo operateInfo); /** * 鍒犻櫎闈炵郴缁熸ā鍧� @@ -99,33 +123,39 @@ //绯荤粺閰嶇疆鐩稿叧鎺ュ彛 /** - * 鏌ヨ绯荤粺閰嶇疆鍒嗙被 + * 鏌ヨ绯荤粺閰嶇疆鏍� */ - List<Object>getSysConfTree(); + List<AppConfigCategoryInfo>getAppConfigCategoryInfo(); /** - * 澧炲姞绯荤粺閰嶇疆 + * 鏍规嵁鍒嗙被ID杩斿洖鍏ㄩ儴鐨� AppConfigDetail 瀵硅薄 * @return */ - boolean addSysConf(); + List<AppConfigDetailInfo> getAppConfigDetailsByID(String clsId); /** - * 淇敼绯荤粺閰嶇疆 + * 澧炲姞閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� * @return */ - boolean updateSysConf(); + boolean addAppConf(AppConfigDetailInfo appConfigDetailInfo,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/); /** - * 鍒犻櫎绯荤粺閰嶇疆 + * 淇敼閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� * @return */ - boolean delSysConf(); + boolean updateAppConf(AppConfigDetailInfo appConfigDetailInfo,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/); /** - * 瀵煎嚭绯荤粺閰嶇疆 + * 鍒犻櫎閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� + * @return + */ + boolean delAppConf(String[] ids,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/); + + /** + * 瀵煎嚭绯荤粺閰嶇疆(閰嶇疆椤瑰垎绫绘垨閰嶇疆椤�) * @param response * @return */ - String exportSysConf(HttpServletResponse response); + String exportSysConf(ExpExcelConditionVO expExcelConditionVO, HttpServletResponse response) throws IOException; } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmHMSysModConfigServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmHMSysModConfigServiceImpl.java index 3f6dd7e..bd566c1 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmHMSysModConfigServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmHMSysModConfigServiceImpl.java @@ -1,16 +1,12 @@ package com.vci.frameworkcore.compatibility.impl; -import com.vci.client.ClientSession; -import com.vci.client.common.excel.ExcelDocumentUtils; import com.vci.common.exception.VciException; import com.vci.common.utility.ObjectUtility; import com.vci.corba.common.PLException; import com.vci.corba.common.data.UserEntityInfo; -import com.vci.corba.framework.data.FuncOperationInfo; -import com.vci.corba.framework.data.FunctionInfo; -import com.vci.corba.framework.data.OperateInfo; +import com.vci.corba.framework.data.*; import com.vci.frameworkcore.compatibility.SmHMSysModConfigServiceI; -import com.vci.pagemodel.MenuVO; +import com.vci.pagemodel.*; import com.vci.starter.poi.bo.SheetDataSet; import com.vci.starter.poi.bo.SheetRowData; import com.vci.starter.poi.bo.WriteExcelData; @@ -32,6 +28,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.*; import java.util.*; +import java.util.stream.Collectors; /** * 棣栭〉绯荤粺妯″潡閰嶇疆娣诲姞鎸夐挳銆佹坊鍔犳搷浣滅被鍨嬬瓑鎺ュ彛鏈嶅姟 @@ -182,8 +179,8 @@ * @return */ @Override - public boolean addOperationType(List<FuncOperationInfo> funcOperationInfoList) { - VciBaseUtil.alertNotNull(funcOperationInfoList,"娣诲姞鎿嶄綔绫诲瀷鐨勫垪琛�");//灏嗘搷浣滅被鍨嬬粍瑁呮垚闇�瑕佸瓨鍌ㄧ殑瀵硅薄 + public boolean addFuncOperationType(List<FuncOperationInfo> funcOperationInfoList) { + VciBaseUtil.alertNotNull(funcOperationInfoList,"娣诲姞鐨勬搷浣滅被鍨嬪垪琛�");//灏嗘搷浣滅被鍨嬬粍瑁呮垚闇�瑕佸瓨鍌ㄧ殑瀵硅薄 List<FuncOperationInfo> objs = new ArrayList<>(); funcOperationInfoList.stream().forEach(info -> { if(Func.isBlank(info.funcId)){ @@ -209,6 +206,120 @@ throw new VciBaseException(exceptionMessage); } return res; + } + + /** + * 澧炲姞鎿嶄綔绫诲瀷 + * @return + */ + @Override + public OperateInfo addOperationType(OperateInfo operateInfo) throws VciBaseException { + try { + //鏍¢獙 + this.checkItem(operateInfo); + String s = foDelegate.saveOperate(operateInfo); + /**杩斿洖1琛ㄧず鍚嶇О鏈夐噸澶嶏紝杩斿洖2琛ㄧず鏍囪瘑鏈夐噸澶�,杩斿洖3琛ㄧず椤哄簭鏈夐噸澶�**/ + if (s.equals("1")) { + throw new VciBaseException("鍚嶇О瀛樺湪閲嶅锛�"); + } else if (s.equals("2")) { + throw new VciBaseException("鏍囪瘑瀛樺湪閲嶅锛�"); + } else if (s.equals("3")) { + throw new VciBaseException("椤哄簭瀛樺湪閲嶅锛�"); + } + operateInfo.id = s; + return operateInfo; + }catch (Exception e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } + } + + /** + * 淇敼鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + @Override + public OperateInfo updateOperationType(OperateInfo operateInfo) throws VciBaseException { + try { + this.checkItem(operateInfo); + String res = foDelegate.updateOperate(operateInfo); + /**杩斿洖1琛ㄧず鍚嶇О鏈夐噸澶嶏紝杩斿洖2琛ㄧず鏍囪瘑鏈夐噸澶�,杩斿洖3琛ㄧず椤哄簭鏈夐噸澶�**/ + if (res.equals("1")) { + throw new VciBaseException("鍚嶇О瀛樺湪閲嶅锛�"); + } else if (res.equals("2")) { + throw new VciBaseException("鏍囪瘑瀛樺湪閲嶅锛�"); + } else if (res.equals("3")) { + throw new VciBaseException("椤哄簭瀛樺湪閲嶅锛�"); + } + return operateInfo; + } catch (Exception e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } + } + + /** + * 鍒犻櫎鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + @Override + public boolean delOperationType(OperateInfo operateInfo) throws VciBaseException { + try { + /**妫�鏌ュ綋鍓嶆搷浣滄槸鍚﹁寮曠敤,0琛ㄧず鏃犲紩鐢紝1琛ㄧず琚ā鍧楀紩鐢紝2琛ㄧず宸叉湁鏉冮檺淇℃伅**/ + int res = foDelegate.checkOperateIsReferenced(operateInfo.id); + if(res == 1){ + throw new VciBaseException("褰撳墠鎿嶄綔宸茶妯″潡寮曠敤锛屽垹闄よ鎿嶄綔鐨勫悓鏃朵細灏嗗叾浠庢ā鍧椾笅绉婚櫎锛岀‘璁ゆ墽琛屽垹闄ゅ悧锛�"); + }else if(res == 2){ + throw new VciBaseException("褰撳墠鎿嶄綔宸茬粡鍦ㄦ潈闄愭ā鍧楄鍒嗛厤杩囨潈闄愶紝鍒犻櫎璇ユ搷浣滅殑鍚屾椂浼氬皢鍏朵粠鐢ㄦ埛鐨勬潈闄愪腑绉婚櫎锛岀‘璁ゆ墽琛屽垹闄ゅ悧锛�"); + } + return foDelegate.deleteOperate(operateInfo.id); + } catch (VciBaseException e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } + } + + /** + * 鏍¢獙 + * @param operateInfo + * @return + */ + private void checkItem(OperateInfo operateInfo) { + if (Func.isBlank(operateInfo.name)) { + throw new VciBaseException("鍚嶇О涓嶈兘涓虹┖锛�"); + } + if (Func.isBlank(operateInfo.identify)) { + throw new VciBaseException("鏍囪瘑涓嶈兘涓虹┖锛�"); + } + if (Func.isBlank(operateInfo.alias)) { + throw new VciBaseException("鍒悕涓嶈兘涓虹┖锛�"); + } + /*if (operateInfo.seq > -1){ + throw new VciBaseException("璇疯緭鍏ユ纭殑鎿嶄綔椤哄簭鍊硷紒"); + }*/ + /*long seq = operateInfo.seq; + Pattern pattern = Pattern.compile("[0-9]*"); + Matcher isNum = pattern.matcher(seq); + if( !isNum.matches() ){ + throw new VciBaseException("鎿嶄綔鐨勯『搴忓�煎彧鑳芥槸[0-9]涔嬮棿鐨勬暟瀛�,骞朵笖蹇呴』鏄鏁存暟.\n闀垮害涓嶅厑璁歌緭鍏ュ皬鏁版垨鑰呰礋鏁�!"); + }*/ + if (operateInfo.name.length() > 128) { + throw new VciBaseException("鍚嶇О闀垮害涓嶈兘瓒呰繃128锛�"); + } + if (operateInfo.desc.length() > 255) { + throw new VciBaseException("鎻忚堪闀垮害涓嶈兘瓒呰繃255锛�"); + } + if (operateInfo.alias.length() > 128) { + throw new VciBaseException("鍒悕闀垮害涓嶈兘瓒呰繃255锛�"); + } } /** @@ -348,11 +459,10 @@ boolean isSuccess = collectionDatas(files); logger.info("姝e湪瀵煎叆琛ㄥ崟浜哄憳淇℃伅......"); logger.info("count==="+count); - boolean resBoolean = false; if(isSuccess == false){ - resBoolean = importExcelData(count); + isSuccess = importExcelData(count); } - return resBoolean ? BaseResult.success("瀵煎叆鎴愬姛锛�"):BaseResult.fail("瀵煎叆澶辫触锛�"); + return isSuccess ? BaseResult.success("瀵煎叆鎴愬姛锛�"):BaseResult.fail("瀵煎叆澶辫触锛�"); } /** @@ -360,7 +470,7 @@ * @return */ @Override - public boolean updateAlias(MenuVO menuVO) throws VciException { + public boolean updateAlias(MenuVO menuVO) throws VciBaseException { String alias = menuVO.getAlias(); if ("".equals(alias)){ throw new VciBaseException("璇峰~鍐欐搷浣滃埆鍚�!"); @@ -370,29 +480,296 @@ return foDelegate.updateFuncOperation(id , alias, isValid); } + /** + * 鏌ヨ绯荤粺閰嶇疆鏍� + * @return + */ @Override - public List<Object> getSysConfTree() { - return null; + public List<AppConfigCategoryInfo> getAppConfigCategoryInfo() { + try { + AppConfigCategoryInfo[] appConfigCategorys = foDelegate.getAppConfigCategorys(); + return Arrays.asList(appConfigCategorys); + } catch (VciBaseException e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } } + /** + * 鏍规嵁鍒嗙被ID杩斿洖鍏ㄩ儴鐨� AppConfigDetail 瀵硅薄 + * @return + */ @Override - public boolean addSysConf() { + public List<AppConfigDetailInfo> getAppConfigDetailsByID(String clsId) { + try { + AppConfigDetailInfo[] appConfigDetailInfos = foDelegate.getAppConfigDetailsByID(clsId); + return Arrays.asList(appConfigDetailInfos); + } catch (VciBaseException e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } + } + + /** + * 澧炲姞閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� + * @return + */ + @Override + public boolean addAppConf(AppConfigDetailInfo appConfigDetailInfo,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/) { + VciBaseUtil.alertNotNull(appConfigDetailInfo,"娣诲姞鐨勬搷浣滅被鍨�"); + boolean rs = false; + try { + String id = ""; + if(isConfCategorys){ + AppConfigCategoryInfo appConfigCategoryInfo = new AppConfigCategoryInfo(); + appConfigCategoryInfo.name = appConfigDetailInfo.name; + appConfigCategoryInfo.desc = appConfigDetailInfo.desc; + this.checkConf(appConfigCategoryInfo); + id = foDelegate.saveAppConfigCategory(appConfigCategoryInfo); + }else{ + this.checkConfItem(appConfigDetailInfo); + id = foDelegate.saveAppConfigDetail(appConfigDetailInfo); + } + appConfigDetailInfo.id = id; + rs = true; + } catch (VciBaseException e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + rs = false; + throw new VciBaseException(exceptionMessage); + } + return rs; + } + + /** + * 淇敼閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� + * @return + */ + @Override + public boolean updateAppConf(AppConfigDetailInfo appConfigDetailInfo,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/) { + VciBaseUtil.alertNotNull(appConfigDetailInfo,"娣诲姞鐨勬搷浣滅被鍨�"); + boolean rs = false; + try { + if(isConfCategorys){ + AppConfigCategoryInfo appConfigCategoryInfo = new AppConfigCategoryInfo(); + appConfigCategoryInfo.id = appConfigDetailInfo.id; + appConfigCategoryInfo.name = appConfigDetailInfo.name; + appConfigCategoryInfo.desc = appConfigDetailInfo.desc; + this.checkConf(appConfigCategoryInfo); + rs = foDelegate.updateAppConfigCategory(appConfigCategoryInfo); + }else{ + this.checkConfItem(appConfigDetailInfo); + rs = foDelegate.updateAppConfigDetail(appConfigDetailInfo); + } + } catch (VciBaseException e) { + e.printStackTrace(); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + throw new VciBaseException(exceptionMessage); + } + return rs; + } + + /** + * 鍒犻櫎閰嶇疆椤瑰垎绫绘垨閰嶇疆椤� + * @return + */ + @Override + public boolean delAppConf(String[] ids,boolean isConfCategorys/*鏄惁涓烘搷浣滈厤缃」鍒嗛厤*/) { + VciBaseUtil.alertNotNull(ids,"寰呭垹闄ょ殑涓婚敭鍒楄〃"); + boolean res = false; + if(isConfCategorys){ + if (this.hasAppConfigDetail(ids)) { + throw new VciBaseException("鍒犻櫎鐨勯厤缃」鍒嗙被涓嬪瓨鍦ㄥ叧鑱旀暟鎹紒"); + } + res = foDelegate.deleteAppConfigCategory(ids); + }else { + res = foDelegate.deleteAppConfigDetail(ids); + } + return res; + } + + /** + * 妫�鏌ユ槸鍚﹀瓨鍦ㄥ紩鐢ㄥ叧绯� + * @param ids + * @return + */ + private boolean hasAppConfigDetail(final String[] ids){ + for (int i = 0; i < ids.length; i++) { + AppConfigDetailInfo[] appConfigDetailsByID = foDelegate.getAppConfigDetailsByID(ids[i]); + if(Func.isNotEmpty(appConfigDetailsByID)){ + return true; + } + } return false; } - @Override - public boolean updateSysConf() { - return false; + /** + * 閰嶇疆椤瑰垎绫绘牎楠� + * @param obj + */ + private void checkConf(AppConfigCategoryInfo obj) { + if ("".equals(obj.name)) { + throw new VciBaseException("鍚嶇О涓嶈兘涓虹┖锛�"); + } } - @Override - public boolean delSysConf() { - return false; + /** + * 閰嶇疆椤规牎楠� + * @param obj + */ + private void checkConfItem(AppConfigDetailInfo obj) { + if ("".equals(obj.name)) { + throw new VciBaseException("鍚嶇О涓嶈兘涓虹┖锛�"); + } + /*AppConfigDetailInfo[] appConfigDetailInfoByName = foDelegate.getAppConfigDetailInfoByName(obj.name); + if(appConfigDetailInfoByName != null && appConfigDetailInfoByName.length > 0){ + throw new VciBaseException("閰嶇疆椤瑰悕绉伴噸澶嶏紒"); + }*/ + if ("".equals(obj.key)){ + throw new VciBaseException("涓婚敭涓嶈兘涓虹┖锛�"); + } + if ("".equals(obj.value)){ + throw new VciBaseException("閿�间笉鑳戒负绌�!"); + } } + /** + * 瀵煎嚭绯荤粺閰嶇疆 + * @param response + * @return + */ @Override - public String exportSysConf(HttpServletResponse response) { - return null; + public String exportSysConf(ExpExcelConditionVO expExcelConditionVO, HttpServletResponse response) throws IOException { + //璁剧疆鏂囦欢鍚嶅拰璺緞 + String expFileName = expExcelConditionVO.getExpFileName(); + if(Func.isNotBlank(expFileName) && expFileName.contains(".xls")){ + throw new VciBaseException("璁剧疆鐨勬枃浠跺悕涓湭璁剧疆鏂囦欢鍚庣紑锛屾垨鍚庣紑璁剧疆鏈夎锛屽綋鍓嶄粎鏀寔瀵煎嚭.xls鏍煎紡锛�"); + } + expFileName = Func.isBlank(expFileName) ? "appConfig.xls":expFileName; + String defaultTempFolder = LocalFileUtil.getDefaultTempFolder(); + //鍐檈xcel + String excelPath = defaultTempFolder + File.separator + expFileName; + //鍏堝垽鏂槸鍏ㄩ儴瀵煎嚭杩樻槸閫夋嫨鏁版嵁瀵煎嚭 + Map<String, Object> conditionMap = expExcelConditionVO.getConditionMap(); + if (Func.isEmpty(conditionMap)) { + throw new VciBaseException("缂哄皯蹇呰瀵煎嚭鏉′欢锛�"); + } + //鎸囧畾瀵煎嚭鐨勫睘鎬у悕 + List<String> expAttrNames = expExcelConditionVO.getExpAttrNames(); + if(Func.isEmpty(expAttrNames)){ + throw new VciBaseException("璇烽�夋嫨鎮ㄨ瀵煎嚭鐨勫睘鎬э紒"); + } + //鍏堝尯鍒嗘槸瀵煎嚭鐨勯厤缃」鍒嗙被杩樻槸閰嶇疆椤硅鎯� + boolean isExpAppConfDetail = (boolean) conditionMap.get("isExpAppConfDetail"); + //鍥犱负AppConfigDetailInfo涓殑灞炴�у寘鍚簡AppConfigCategoryInfo涓殑灞炴�ф墍浠ュ厛閫氱敤浜� + List<AppConfigDetailInfo> appConfigDetailInfos = new ArrayList<>(); + //閫変腑瀵煎嚭鏁版嵁鐨勫敮涓�鏍囪瘑 + List<String> selectDataIdentify = expExcelConditionVO.getSelectDataIdentify(); + //褰撳墠鐣岄潰瀵煎嚭閫昏緫锛屽彧瀛樺湪鍏ㄩ儴鍜岄�夋嫨瀵煎嚭 + String expType = expExcelConditionVO.getExpType(); + if(!isExpAppConfDetail){ + AppConfigCategoryInfo[] appConfigCategorys = foDelegate.getAppConfigCategorys(); + List<AppConfigCategoryInfo> filterAppConfigInfo = null; + if("select".equals(expType)){ + filterAppConfigInfo = Arrays.stream(appConfigCategorys).filter(item -> { + if (selectDataIdentify.contains(item.id)) { + return true; + } + return false; + }).collect(Collectors.toList()); + }else{ + filterAppConfigInfo = new ArrayList<>(Arrays.asList(appConfigCategorys)); + } + if (Func.isNotEmpty(filterAppConfigInfo)) { + filterAppConfigInfo.stream().forEach(item->{ + AppConfigDetailInfo appConfigDetailInfo = new AppConfigDetailInfo(); + appConfigDetailInfo.id = item.id; + appConfigDetailInfo.name = item.name; + appConfigDetailInfo.desc = item.desc; + appConfigDetailInfos.add(appConfigDetailInfo); + }); + } + }else{ + String clsId = (String)conditionMap.get("clsId"); + if(Func.isBlank(clsId)){ + throw new VciBaseException("鏈幏鍙栧埌鏌ヨ閰嶇疆椤圭殑閰嶇疆椤瑰垎绫讳富閿�"); + } + AppConfigDetailInfo[] configDetailInfos = foDelegate.getAppConfigDetailsByID(clsId); + List<AppConfigDetailInfo> filterAppConfigInfo = null; + if("select".equals(expType)){ + filterAppConfigInfo = Arrays.stream(configDetailInfos).filter(item -> { + if (selectDataIdentify.contains(item.id)) { + return true; + } + return false; + }).collect(Collectors.toList()); + }else{ + filterAppConfigInfo = new ArrayList<>(Arrays.asList(configDetailInfos)); + } + if (Func.isNotEmpty(filterAppConfigInfo)) { + appConfigDetailInfos.addAll(filterAppConfigInfo); + } + } + //璁剧疆鍒楀悕 + List<String> columns = new ArrayList<>(); + //鏍规嵁瀵煎嚭鍒楄缃垪鍚� + Map<String,Integer> colAttrMap = new HashMap<>(); //瀵煎嚭鐨勫垪鍜屽睘鎬ф槧灏� + for (int i = 0; i < expAttrNames.size(); i++) { + String attrName = expAttrNames.get(i); + switch (attrName){ + case "name": + columns.add("鍚嶇О"); + break; + case "key": + columns.add("key"); + break; + case "value": + columns.add("value"); + break; + case "desc": + columns.add("鎻忚堪"); + break; + } + colAttrMap.put(attrName,i); + } + + new File(excelPath).createNewFile(); + //璁剧疆鍒� + List<WriteExcelData> excelDataList = new ArrayList<>(); + //璁剧疆鍒楀ご + for (int index = 0; index < columns.size(); index++) { + excelDataList.add(new WriteExcelData(0,index, columns.get(index))); + } + //澶勭悊鏁版嵁瀵煎嚭 + if(Func.isEmpty(appConfigDetailInfos)){ + excelDataList.add(new WriteExcelData(1,1, "鏈幏鍙栧埌瑕佸鍑虹殑鏁版嵁锛岃鍒锋柊鍚庡皾璇曢噸鏂板鍑猴紒")); + }else{ + for (int i = 0; i < appConfigDetailInfos.size(); i++) { + AppConfigDetailInfo appConfigDetailInfo = appConfigDetailInfos.get(i); + int row = i+1; + if(Func.isNotEmpty(colAttrMap.get("name"))){ + excelDataList.add(new WriteExcelData(row,colAttrMap.get("name"), appConfigDetailInfo.name)); + } + if(Func.isNotEmpty(colAttrMap.get("key"))){ + excelDataList.add(new WriteExcelData(row,colAttrMap.get("key"), appConfigDetailInfo.key)); + } + if(Func.isNotEmpty(colAttrMap.get("value"))){ + excelDataList.add(new WriteExcelData(row,colAttrMap.get("value"), appConfigDetailInfo.value)); + } + if(Func.isNotEmpty(colAttrMap.get("desc"))){ + excelDataList.add(new WriteExcelData(row,colAttrMap.get("desc"), appConfigDetailInfo.desc)); + } + } + } + WriteExcelOption excelOption = new WriteExcelOption(excelDataList); + ExcelUtil.writeDataToFile(excelPath, excelOption); + return excelPath; } /** @@ -428,7 +805,7 @@ if(oneData.get(14).equals("1")) { try { onebl = foDelegate.firstLevel(plName); - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } @@ -438,14 +815,13 @@ try { fParentId = foDelegate.changeFirstLevel(funObj,plName); pd[2]=fParentId; - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } funObj.id = fParentId; fileFunctionDatas.add(funObj); first=true; - } else { funObj.id = id; @@ -466,7 +842,7 @@ pd[jibie]=""; } twobl=foDelegate.secondLevel(plName,pd[jibie]); - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } @@ -512,7 +888,7 @@ try { OperateInfo operObj = foDelegate.fetchOperateTypeByName(oneData.get(18)); foObj.operId = operObj.id; - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } @@ -521,7 +897,7 @@ foObj.isValid = Integer.parseInt(oneData.get(17)) != 0; try { foDelegate.saveFuncOperation2(foObj); - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } @@ -532,7 +908,7 @@ foObj.isValid = Integer.parseInt(oneData.get(17)) != 0; try { foDelegate.updateOperation(foObj,dataOperName,plFuncOid); - } catch (VciException e) { + } catch (VciBaseException e) { // TODO Auto-generated catch block e.printStackTrace(); } @@ -713,12 +1089,12 @@ * @return * @throws VciException */ - public boolean firstLevel(String plName) throws VciException{ + public boolean firstLevel(String plName) throws VciBaseException{ try{ return platformClientUtil.getFrameworkService().firstLevel(plName); }catch (PLException e) { e.printStackTrace(); - throw new VciException(String.valueOf(e.code), e.messages); + throw new VciBaseException(String.valueOf(e.code), e.messages); } } @@ -726,7 +1102,7 @@ * 瑕嗙洊閲嶅悕鐨勭涓�绾ф暟鎹� * add by caill * */ - public String changeFirstLevel(FunctionInfo functionInfo,String plName) throws VciException{ + public String changeFirstLevel(FunctionInfo functionInfo,String plName) throws VciBaseException{ String fParentId=""; try { fParentId= platformClientUtil.getFrameworkService().changeFirstLevel(functionInfo, plName); @@ -734,7 +1110,6 @@ // TODO Auto-generated catch block e.printStackTrace(); } - return fParentId; } @@ -742,12 +1117,12 @@ * 鍒ゆ柇绗簩绾ф暟鎹湁娌℃湁閲嶅悕鐨� * add by caill * */ - public boolean secondLevel(String plName,String fParentId) throws VciException{ + public boolean secondLevel(String plName,String fParentId) throws VciBaseException{ try{ return platformClientUtil.getFrameworkService().secondLevel(plName,fParentId); }catch (PLException e) { e.printStackTrace(); - throw new VciException(String.valueOf(e.code), e.messages); + throw new VciBaseException(String.valueOf(e.code), e.messages); } } @@ -943,7 +1318,7 @@ int len = funObject.length; List<FunctionInfo> funInfoList = new ArrayList<FunctionInfo>(); for(int i = count ; i<len ; i++){ - if(funObject[i].parentId!=null){ + if(Func.isNotBlank(funObject[i].parentId)){ FunctionInfo funInfo = funObject[i]; funInfoList.add(funInfo); } @@ -978,7 +1353,7 @@ return same; } - public OperateInfo fetchOperateTypeByName(String name) throws VciException { + public OperateInfo fetchOperateTypeByName(String name) throws VciBaseException { try{ OperateInfo info = platformClientUtil.getFrameworkService().fetchOperateTypeByName(name); return info; @@ -992,12 +1367,13 @@ * 淇濆瓨鎿嶄綔绫诲瀷 * add by caill * */ - public boolean saveFuncOperation2(FuncOperationInfo funcOperationInfo) throws VciException{ + public boolean saveFuncOperation2(FuncOperationInfo funcOperationInfo) throws VciBaseException{ try { platformClientUtil.getFrameworkService().saveFuncOperation2(funcOperationInfo,this.getUserEntityInfo()); } catch (PLException e) { // TODO Auto-generated catch block e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code), e.messages); } return true; } @@ -1006,26 +1382,208 @@ * 瑕嗙洊鎿嶄綔绫诲瀷 * add by caill * */ - public String updateOperation(FuncOperationInfo funcOperationInfo,String dataOperName,String plFuncOid) throws VciException{ + public String updateOperation(FuncOperationInfo funcOperationInfo,String dataOperName,String plFuncOid) throws VciBaseException{ try { platformClientUtil.getFrameworkService().updateOperation(funcOperationInfo,this.getUserEntityInfo(),dataOperName,plFuncOid); } catch (PLException e) { // TODO Auto-generated catch block e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code), e.messages); } return null; } - public boolean updateFuncOperation(String id , String alias, boolean isSelected) throws VciException { + public boolean updateFuncOperation(String id , String alias, boolean isSelected) throws VciBaseException { boolean res = false; try{ res = platformClientUtil.getFrameworkService().updateFuncOperation(id, alias, isSelected, this.getUserEntityInfo()); }catch(PLException e){ - throw new VciException(String.valueOf(e.code), e.messages); + throw new VciBaseException(String.valueOf(e.code), e.messages); } return res; } + /** + * 淇濆瓨鎿嶄綔绫诲瀷 + * + * @param operateInfo + * @return + * @throws VciException + */ + public String saveOperate(OperateInfo operateInfo) throws VciBaseException { + String res = ""; + try{ + res = platformClientUtil.getFrameworkService().saveOperate(operateInfo,this.getUserEntityInfo()); + }catch (PLException e) { + e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + return res; + } + + /** + * 淇敼鎿嶄綔绫诲瀷 + * + * @param operateInfo + * @return + * @throws VciException + */ + public String updateOperate(OperateInfo operateInfo) throws VciBaseException { + String res = ""; + try{ + res = platformClientUtil.getFrameworkService().updateOperate(operateInfo,this.getUserEntityInfo()); + }catch (PLException e) { + e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + return res; + } + + /** + * 鍒犻櫎鎿嶄綔绫诲瀷 + * + * @param id + * @return + * @throws VciException + */ + public boolean deleteOperate(String id) throws VciBaseException { + boolean res = true; + try{ + res = platformClientUtil.getFrameworkService().deleteOperate(id,this.getUserEntityInfo()); + }catch (PLException e) { + e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + return res; + } + + /** + * 妫�鏌ユ搷浣滄槸鍚﹁寮曠敤 + * @param operateId + * @return 0琛ㄧず鏃犲紩鐢紝1琛ㄧず琚ā鍧楀紩鐢紝2琛ㄧず鏈夋潈闄愪俊鎭� + * @throws VciException + */ + public int checkOperateIsReferenced(String operateId) throws VciBaseException { + try{ + return (int)platformClientUtil.getFrameworkService().checkOperateIsReferenced(operateId); + }catch (PLException e) { + e.printStackTrace(); + throw new VciBaseException(String.valueOf(e.code),e.messages); + } + } + + /** + * 杩斿洖鍏ㄩ儴鐨� AppConfigCategory 瀵硅薄 + * @return + * @throws VciException + */ + public AppConfigCategoryInfo[] getAppConfigCategorys() throws VciBaseException{ + try{ + AppConfigCategoryInfo[] infos = platformClientUtil.getFrameworkService().getAppConfigCategorys(this.getUserEntityInfo()); + return infos; + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 鏍规嵁鍒嗙被ID杩斿洖鍏ㄩ儴鐨� AppConfigDetail 瀵硅薄 + */ + public AppConfigDetailInfo[] getAppConfigDetailsByID(String clsfId) throws VciBaseException{ + try{ + AppConfigDetailInfo[] infos = platformClientUtil.getFrameworkService().getAppConfigDetailsByCatId(clsfId, this.getUserEntityInfo()); + return infos; + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 娣诲姞銆佷繚瀛� AppConfigCategory 瀵硅薄 + * @param object AppConfigCategoryInfo 瀵硅薄 + */ + public String saveAppConfigCategory(AppConfigCategoryInfo object) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().saveAppConfigCategory(object, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 淇敼銆佹洿鏂� AppConfigCategory 瀵硅薄 + * @param object AppConfigCategoryInfo 瀵硅薄 + */ + public boolean updateAppConfigCategory(AppConfigCategoryInfo object) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().updateAppConfigCategory(object, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 鏍规嵁鍚嶇О鏌ヨ閰嶇疆椤� + * @param name + * @return + * @throws VciBaseException + */ + public AppConfigDetailInfo[] getAppConfigDetailInfoByName(String name) throws VciBaseException{ + try{ + AppConfigDetailInfo[] appConfigDetailsByName = platformClientUtil.getFrameworkService().getAppConfigDetailsByName(name, this.getUserEntityInfo()); + return appConfigDetailsByName; + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 鏍规嵁 ID 鍒犻櫎 AppConfigCategory 瀵硅薄锛堟壒閲忥級 + * @param ids AppConfigCategory 瀵硅薄鐨� ID 鍒楄〃 + */ + public boolean deleteAppConfigCategory(String[] ids) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().deleteAppConfigCategory(ids, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** 娣诲姞銆佷繚瀛� AppConfigDetail 瀵硅薄 + * @param info AppConfigDetailInfo 瀵硅薄 + */ + public String saveAppConfigDetail(AppConfigDetailInfo info) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().saveAppConfigDetail(info, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 淇敼銆佹洿鏂� AppConfigDetail 瀵硅薄 + * @param info AppConfigDetailInfo 瀵硅薄 + */ + public boolean updateAppConfigDetail(AppConfigDetailInfo info) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().updateAppConfigDetail(info, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + + /** + * 鏍规嵁 ID 鍒犻櫎 AppConfigDetail 瀵硅薄锛堟壒閲忥級 + * @param ids AppConfigDetail 瀵硅薄鐨� ID 鍒楄〃 + */ + public boolean deleteAppConfigDetail(String[] ids) throws VciBaseException{ + try{ + return platformClientUtil.getFrameworkService().deleteAppConfigDetail(ids, this.getUserEntityInfo()); + }catch(PLException e){ + throw new VciBaseException(String.valueOf(e.code), e.messages); + } + } + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java index d7f1bdb..8137581 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java @@ -1,9 +1,13 @@ package com.vci.web.controller; import com.vci.constant.FrameWorkLangCodeConstant; +import com.vci.corba.framework.data.AppConfigDetailInfo; import com.vci.corba.framework.data.FuncOperationInfo; +import com.vci.corba.framework.data.OperateInfo; import com.vci.frameworkcore.compatibility.ISmFunctionQueryService; import com.vci.frameworkcore.compatibility.SmHMSysModConfigServiceI; +import com.vci.pagemodel.AppConfigDetailInfoVO; +import com.vci.pagemodel.ExpExcelConditionVO; import com.vci.pagemodel.MenuVO; import com.vci.starter.web.annotation.controller.VciUnCheckRight; import com.vci.starter.web.exception.VciBaseException; @@ -34,7 +38,6 @@ */ @RestController @RequestMapping("/hmSysModConfigController") -@VciUnCheckRight public class HMSysModConfigController { /** @@ -151,7 +154,24 @@ return BaseResult.success(hmSysModConfigService.updateAlias(menuVO),"鎿嶄綔鍒悕淇敼鎴愬姛"); }catch (Exception e){ e.printStackTrace(); - String errorMsg = "鎿嶄綔鍒悕淇敼鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + String errorMsg = "鎿嶄綔绫诲瀷鍒悕淇敼鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 娣诲姞鎿嶄綔绫诲瀷涓庢ā鍧楃殑鍏宠仈鍏崇郴 + * @param funcOperationInfoList + * @return + */ + @PostMapping("/addFuncOperationType") + public BaseResult addFuncOperationType(@RequestBody List<FuncOperationInfo> funcOperationInfoList) { + try { + return BaseResult.success(hmSysModConfigService.addFuncOperationType(funcOperationInfoList),"涓哄綋鍓嶆ā鍧楁坊鍔犳搷浣滅被鍨嬫垚鍔�"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "涓哄綋鍓嶆ā鍧楁坊鍔犳搷浣滅被鍨嬫椂鍑虹幇閿欒锛屽師鍥狅細"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } @@ -159,16 +179,50 @@ /** * 娣诲姞鎿嶄綔绫诲瀷 - * @param funcOperationInfoList + * @param operateInfo * @return */ @PostMapping("/addOperationType") - public BaseResult addOperationType(@RequestBody List<FuncOperationInfo> funcOperationInfoList) { + public BaseResult addOperationType(@RequestBody OperateInfo operateInfo) { try { - return BaseResult.success(hmSysModConfigService.addOperationType(funcOperationInfoList),"鎿嶄綔绫诲瀷娣诲姞鎴愬姛"); + return BaseResult.success(hmSysModConfigService.addOperationType(operateInfo),"娣诲姞鎿嶄綔绫诲瀷鎴愬姛"); }catch (Exception e){ e.printStackTrace(); String errorMsg = "鍒犻櫎妯″潡鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 淇敼鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + @PutMapping("/updateOperationType") + public BaseResult updateOperationType(@RequestBody OperateInfo operateInfo) { + try { + return BaseResult.success(hmSysModConfigService.updateOperationType(operateInfo),"淇敼鎿嶄綔绫诲瀷鎴愬姛"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "淇敼鎿嶄綔绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 鍒犻櫎鎿嶄綔绫诲瀷 + * @param operateInfo + * @return + */ + @DeleteMapping("/delOperationType") + public BaseResult delOperationType(@RequestBody OperateInfo operateInfo) { + try { + return BaseResult.success(hmSysModConfigService.delOperationType(operateInfo),"鍒犻櫎鎿嶄綔绫诲瀷鎴愬姛"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "鍒犻櫎鎿嶄綔绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } @@ -274,4 +328,111 @@ } } + /** + *鏌ヨ绯荤粺閰嶇疆鏍� + * @return + */ + @GetMapping("/getAppConfigCategoryInfo") + public BaseResult getAppConfigCategoryInfo() { + try { + return BaseResult.dataList(hmSysModConfigService.getAppConfigCategoryInfo()); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "鏌ヨ绯荤粺閰嶇疆鍒楄〃鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + *鏍规嵁鍒嗙被ID杩斿洖鍏ㄩ儴鐨� AppConfigDetail 瀵硅薄 + * @return + */ + @GetMapping("/getAppConfigDetailsByID") + public BaseResult getAppConfigDetailsByID(String clsId) { + try { + return BaseResult.dataList(hmSysModConfigService.getAppConfigDetailsByID(clsId)); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "鏌ヨ閰嶇疆椤瑰垪琛ㄦ椂鍑虹幇閿欒锛屽師鍥狅細"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 娣诲姞鎿嶄綔绫诲瀷 + * @param appConfigDetailInfoVO + * @return + */ + @PostMapping("/addAppConf") + public BaseResult addAppConf(@RequestBody AppConfigDetailInfoVO appConfigDetailInfoVO) { + try { + boolean res = hmSysModConfigService.addAppConf(appConfigDetailInfoVO.getAppConfigDetailInfo(), appConfigDetailInfoVO.isConfCategorys()); + return res ? BaseResult.success("娣诲姞鎿嶄綔绫诲瀷鎴愬姛"):BaseResult.fail("娣诲姞鎿嶄綔绫诲瀷澶辫触锛�"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "娣诲姞鎿嶄綔绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 淇敼鎿嶄綔绫诲瀷 + * @param appConfigDetailInfoVO + * @return + */ + @PutMapping("/updateAppConf") + public BaseResult updateAppConf(@RequestBody AppConfigDetailInfoVO appConfigDetailInfoVO) { + try { + boolean res = hmSysModConfigService.updateAppConf(appConfigDetailInfoVO.getAppConfigDetailInfo(),appConfigDetailInfoVO.isConfCategorys()); + return res ? BaseResult.success("淇敼鎿嶄綔绫诲瀷鎴愬姛"):BaseResult.fail("淇敼鎿嶄綔绫诲瀷澶辫触锛�"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "淇敼鎿嶄綔绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 鍒犻櫎鎿嶄綔绫诲瀷 + * @param ids + * @param isConfCategorys + * @return + */ + @DeleteMapping("/delAppConf") + public BaseResult delAppConf(String[] ids,boolean isConfCategorys) { + try { + return hmSysModConfigService.delAppConf(ids,isConfCategorys) ? BaseResult.success("鍒犻櫎鎿嶄綔绫诲瀷鎴愬姛"):BaseResult.fail("鍒犻櫎鎿嶄綔绫诲瀷澶辫触锛�"); + }catch (Exception e){ + e.printStackTrace(); + String errorMsg = "鍒犻櫎鎿嶄綔绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�"+ VciBaseUtil.getExceptionMessage(e); + logger.error(errorMsg); + throw new VciBaseException(errorMsg); + } + } + + /** + * 瀵煎嚭绯荤粺閰嶇疆(閰嶇疆椤瑰垎绫绘垨閰嶇疆椤�) + * @return + */ + @PostMapping("/exportSysConf") + public void exportSysConf(@RequestBody ExpExcelConditionVO expExcelConditionVO, HttpServletResponse response) { + try { + String excelPath = hmSysModConfigService.exportSysConf(expExcelConditionVO,response); + ControllerUtil.writeFileToResponse(response,excelPath); + } catch (Exception e) { + String msg = "瀵煎嚭绯荤粺閰嶇疆鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + try { + //鍑洪敊鏃� + e.printStackTrace(); + ControllerUtil.writeDataToResponse(response,"error_" + Func.format(new Date(),"yyyy-MM-dd HHmmss.sss") + ".txt", StringUtils.isNotBlank(msg)?msg.getBytes():new byte[0],null); + } catch (IOException ioException) { + ioException.printStackTrace(); + } + } + } + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java index 77fd212..080e08e 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java @@ -1311,8 +1311,8 @@ String attrPath = attributeService.exportAttributes("btmattr", attributes.stream().collect(Collectors.joining(",")),true); //绉诲姩灞炴�у埌閾炬帴绫诲瀷鏂囦欢澶归噷闈㈠幓 - cn.hutool.core.io.FileUtil.move(new File(attrPath), new File(defaultTempFolder),true); - cn.hutool.core.io.FileUtil.del(attrPath.substring(0,attrPath.lastIndexOf("\\"))); + FileUtil.move(new File(attrPath), new File(defaultTempFolder),true); + FileUtil.del(attrPath.substring(0,attrPath.lastIndexOf("\\"))); }catch (IOException e) { throw new RuntimeException(e); } -- Gitblit v1.9.3