From 7b3d5fb08fdbd2ce574c3b9ab666c8c7082be728 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期五, 06 九月 2024 15:38:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java | 84 +++++++++++++++++++++++++++++++++++------- 1 files changed, 70 insertions(+), 14 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java index b86ab56..6471de0 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java @@ -1,17 +1,20 @@ package com.vci.web.controller; +import com.vci.constant.FrameWorkLangCodeConstant; import com.vci.corba.common.PLException; import com.vci.dto.ClonePortalVIDTOList; import com.vci.dto.DeletePortalVIDTOList; -import com.vci.dto.OsBtmTypeDTO; import com.vci.dto.PortalVIDTO; import com.vci.pagemodel.KeyValue; import com.vci.pagemodel.PortalVIVO; -import com.vci.starter.web.annotation.controller.VciUnCheckRight; import com.vci.starter.web.annotation.log.VciBusinessLog; +import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.BaseQueryObject; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; +import com.vci.starter.web.util.ControllerUtil; +import com.vci.starter.web.util.LangBaseUtil; +import com.vci.starter.web.util.LocalFileUtil; import com.vci.starter.web.util.VciBaseUtil; import com.vci.web.enumpck.ItemDblEnum; import com.vci.web.enumpck.ItemTypeEnum; @@ -21,14 +24,19 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; - +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.util.List; /** - * 鍏紡鎺у埗鍣� + * 琛ㄥ崟/琛ㄦ牸鎺у埗鍣� * @author weidy * @date 2022-2-11 */ +@VciBusinessLog(modelName="琛ㄥ崟/琛ㄦ牸鎺у埗鍣�",notStore=true) @RestController @RequestMapping("/portalVIController") public class WebPortalVIController { @@ -56,17 +64,18 @@ /** *鏍规嵁琛ㄥ崟id鑾峰彇鍏蜂綋鏁版嵁 * @param id + * @param viType * @return */ @GetMapping( "/getPortalVIById") @VciBusinessLog(operateName = "鑾峰彇琛ㄥ崟/琛ㄦ牸鏁版嵁") - public BaseResult getPortalVIById(@RequestBody String id,@RequestBody String viType){ + public BaseResult getPortalVIById(@RequestParam("id") String id,@RequestParam("viType") String viType){ try{ PortalVIVO portalVIVO= portalVIServiceI.getPortalVIById(id,viType); return BaseResult.success(portalVIVO); }catch (Throwable e){ e.printStackTrace(); - String exceptionMessage = "鍒涘缓涓氬姟绫诲瀷鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + String exceptionMessage = "鑾峰彇琛ㄥ崟/琛ㄦ牸鏁版嵁鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); logger.error(exceptionMessage); return BaseResult.fail(exceptionMessage); } @@ -87,7 +96,7 @@ } /** - * 涓氬姟绫诲瀷鍒犻櫎 + * 琛ㄥ崟/table鍒犻櫎 * btmTypeDTO 涓氬姟绫诲瀷瀵硅薄 * @return 鍒犻櫎缁撴灉 */ @@ -104,30 +113,33 @@ } } /** - * 涓氬姟绫诲瀷鍒犻櫎 + * 琛ㄥ崟/table鍒犻櫎 * btmTypeDTO 涓氬姟绫诲瀷瀵硅薄 * @return 鍒犻櫎缁撴灉 */ @DeleteMapping("/deleteByIds") @VciBusinessLog(operateName = "鍒犻櫎琛ㄥ崟/琛ㄦ牸") - public BaseResult deleteByIds(@RequestBody String ids){ + public BaseResult deleteByIds(@RequestParam("ids") String ids){ try { return portalVIServiceI.delete(ids) ? BaseResult.success("鍒犻櫎鎴愬姛锛�"):BaseResult.fail("鍒犻櫎澶辫触锛�"); } catch (PLException e) { e.printStackTrace(); - String exceptionMessage = "鍒犻櫎琛ㄥ崟鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + String exceptionMessage = VciBaseUtil.getExceptionMessage(e); logger.error(exceptionMessage); return BaseResult.fail(exceptionMessage); } } + /** - * + * 琛ㄥ崟/table鍏嬮殕 + * @param portalVIDTOList clong瀵硅薄 + * @return */ @PostMapping("/clone") - @VciBusinessLog(operateName = "鍒犻櫎琛ㄥ崟/琛ㄦ牸") + @VciBusinessLog(operateName = "鍏嬮殕琛ㄥ崟/琛ㄦ牸") public BaseResult clone(@RequestBody ClonePortalVIDTOList portalVIDTOList){ try { - return portalVIServiceI.clone(portalVIDTOList) ? BaseResult.success("鍒犻櫎鎴愬姛锛�"):BaseResult.fail("鍒犻櫎澶辫触锛�"); + return portalVIServiceI.clone(portalVIDTOList) ? BaseResult.success("鍏嬮殕鎴愬姛锛�"):BaseResult.fail("鍏嬮殕澶辫触锛�"); } catch (Throwable e) { e.printStackTrace(); String exceptionMessage = "鍒犻櫎琛ㄥ崟鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); @@ -136,6 +148,50 @@ } } + + /** + * 瀵煎嚭鏁版嵁搴撶殑琛ㄤ俊鎭埌excel + * @param response 鍝嶅簲瀵硅薄 + * @param ids 涓氬姟绫诲瀷鐨勭紪鍙凤紝鐢ㄩ�楀彿鍒嗗壊 + */ + @PostMapping("/exportExcel") + @VciBusinessLog(operateName = "瀵煎嚭琛ㄥ崟/琛ㄦ牸鍒癳xcel涓�") + public void exportExcel(String ids,HttpServletResponse response){ + String excelFileName = portalVIServiceI.exportToExcel(VciBaseUtil.str2List(ids)); + try { + ControllerUtil.writeFileToResponse(response,excelFileName); + } catch (IOException e) { + try { + ControllerUtil.writeDataToResponse(response, LangBaseUtil.getErrorMsg(e).getBytes(StandardCharsets.UTF_8),null); + } catch (IOException ex) { + ex.printStackTrace(); + } + } + } + + /** + * 瀵煎嚭鏁版嵁搴撶殑琛ㄤ俊鎭埌excel + * @param file 涓婁紶鐨勬枃浠� + */ + @PostMapping("/importData") + @VciBusinessLog(operateName = "瀵煎叆琛ㄥ崟/琛ㄦ牸") + public BaseResult importData(MultipartFile file){ + String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + LocalFileUtil.getFileNameForIE(file.getOriginalFilename()); + File file1 = new File(excelFileName); + try { + file.transferTo(new File(excelFileName)); + if (file != null) { + return portalVIServiceI.importData(file1); + } else { + return BaseResult.fail(FrameWorkLangCodeConstant.IMPORT_FAIL, new String[]{"鏃犲鍏ョ殑鏂囦欢"}); + } + }catch (Throwable e) { + throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e); + }finally { + file1.delete(); + } + } + /** * 鑾峰彇灞炴�у瓧娈电被鍨� */ @@ -148,7 +204,7 @@ * 鑾峰彇瓒呴摼鎺ュ脊鍑烘柟娉� */ @GetMapping("/getItemDblList") - @VciBusinessLog(operateName = "灞炴�у瓧娈电被鍨�") + @VciBusinessLog(operateName = "瓒呴摼鎺ョ被鍨�") public BaseResult<List<KeyValue>> getItemDblList(){ return BaseResult.dataList(ItemDblEnum.getEnumAll()); } -- Gitblit v1.9.3