From d0ae279ff3b83358d1c07f4481a041c4ad335026 Mon Sep 17 00:00:00 2001 From: dangsn <dangsn@chicecm.com> Date: 星期二, 03 十二月 2024 11:57:38 +0800 Subject: [PATCH] 提取业务系统使用的功能,独立出一个单独的模块 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java | 157 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 148 insertions(+), 9 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 8e9cf64..cd18e44 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,28 +1,51 @@ 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.PortalVIDTO; import com.vci.pagemodel.KeyValue; import com.vci.pagemodel.PortalVIVO; 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; +import com.vci.enumpck.UI.ItemTypeEnum; import com.vci.web.service.OsPortalVIServiceI; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +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 { + /** + * 鏃ュ織 + */ + private Logger logger = LoggerFactory.getLogger(getClass()); + + @Autowired private OsPortalVIServiceI portalVIServiceI; /** * 琛ㄥ崟鍒楄〃 @@ -31,27 +54,143 @@ * @param baseQueryObject 鏌ヨ鏉′欢 * @return 鍒楄〃鐨勫唴瀹� */ - @GetMapping( "/referDataGrid") + @GetMapping( "/gridPortalVIDatas") @VciBusinessLog(operateName = "琛ㄥ崟/琛ㄦ牸鍒楄〃") - public DataGrid<PortalVIVO> referDataGrid(BaseQueryObject baseQueryObject){ + public DataGrid<PortalVIVO> gridPortalVIDatas(BaseQueryObject baseQueryObject){ return portalVIServiceI.gridPortalVIVOs(baseQueryObject); } + + /** + *鏍规嵁琛ㄥ崟id鑾峰彇鍏蜂綋鏁版嵁 + * @param id + * @param viType + * @return + */ + @GetMapping( "/getPortalVIById") + @VciBusinessLog(operateName = "鑾峰彇琛ㄥ崟/琛ㄦ牸鏁版嵁") + 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); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } + } /** * 琛ㄥ崟/table淇濆瓨 * @param portalVIDTO * @return */ @PostMapping("/savePortalVI") - @VciBusinessLog(operateName = "娣诲姞琛ㄥ崟/琛ㄦ牸") + @VciBusinessLog(operateName = "淇濆瓨琛ㄥ崟/琛ㄦ牸") public BaseResult savePortalVI(@RequestBody PortalVIDTO portalVIDTO){ if(StringUtils.isNotBlank(portalVIDTO.getId())){ - return portalVIServiceI.edit(portalVIDTO); + return portalVIServiceI.editSave(portalVIDTO); }else{ - return portalVIServiceI.add(portalVIDTO); + return portalVIServiceI.addSave(portalVIDTO); + } + } + /** + * 琛ㄥ崟/table鍒犻櫎 + * btmTypeDTO 涓氬姟绫诲瀷瀵硅薄 + * @return 鍒犻櫎缁撴灉 + */ + @DeleteMapping("/delete") + @VciBusinessLog(operateName = "鍒犻櫎琛ㄥ崟/琛ㄦ牸") + public BaseResult delete(@RequestBody DeletePortalVIDTOList deletePortalVIDTOList){ + try { + return portalVIServiceI.delete(deletePortalVIDTOList) ? BaseResult.success("鍒犻櫎鎴愬姛锛�"):BaseResult.fail("鍒犻櫎澶辫触锛�"); + } catch (PLException e) { + e.printStackTrace(); + String exceptionMessage = "鍒犻櫎琛ㄥ崟鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } + } + /** + * 琛ㄥ崟/table鍒犻櫎 + * btmTypeDTO 涓氬姟绫诲瀷瀵硅薄 + * @return 鍒犻櫎缁撴灉 + */ + @DeleteMapping("/deleteByIds") + @VciBusinessLog(operateName = "鍒犻櫎琛ㄥ崟/琛ㄦ牸") + 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); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } + } + + /** + * 琛ㄥ崟/table鍏嬮殕 + * @param portalVIDTOList clong瀵硅薄 + * @return + */ + @PostMapping("/clone") + @VciBusinessLog(operateName = "鍏嬮殕琛ㄥ崟/琛ㄦ牸") + public BaseResult clone(@RequestBody ClonePortalVIDTOList portalVIDTOList){ + try { + return portalVIServiceI.clone(portalVIDTOList) ? BaseResult.success("鍏嬮殕鎴愬姛锛�"):BaseResult.fail("鍏嬮殕澶辫触锛�"); + } catch (Throwable e) { + e.printStackTrace(); + String exceptionMessage = "鍏嬮殕琛ㄥ崟/琛ㄦ牸鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } + + /** + * 瀵煎嚭鏁版嵁搴撶殑琛ㄤ俊鎭埌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(); + } + } + /** * 鑾峰彇灞炴�у瓧娈电被鍨� */ @@ -64,7 +203,7 @@ * 鑾峰彇瓒呴摼鎺ュ脊鍑烘柟娉� */ @GetMapping("/getItemDblList") - @VciBusinessLog(operateName = "灞炴�у瓧娈电被鍨�") + @VciBusinessLog(operateName = "瓒呴摼鎺ョ被鍨�") public BaseResult<List<KeyValue>> getItemDblList(){ return BaseResult.dataList(ItemDblEnum.getEnumAll()); } -- Gitblit v1.9.3