From d5ebac1efe04615795c939fa6d6032b233bc4e79 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 18 七月 2024 17:34:48 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java | 240 +++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 183 insertions(+), 57 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java index a8e5f54..375ec71 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java @@ -1,19 +1,28 @@ package com.vci.frameworkcore.controller; -import com.vci.common.exception.VciExceptionTool; +import com.vci.dto.SmUserDTO; import com.vci.corba.common.PLException; import com.vci.frameworkcore.compatibility.SmUserQueryServiceI; -import com.vci.frameworkcore.model.dto.SmUserDTO; -import com.vci.frameworkcore.pagemodel.SmUserVO; -import com.vci.starter.web.annotation.controller.VciUnCheckRight; +import com.vci.constant.FrameWorkLangCodeConstant; +import com.vci.pagemodel.SmUserVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.*; +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 lombok.extern.slf4j.Slf4j; +import com.vci.web.util.Func; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Controller; 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.util.Date; import java.util.List; /** @@ -23,7 +32,6 @@ */ @RestController @RequestMapping("/userQueryController") -@Slf4j public class SmUserQueryController { /** @@ -31,6 +39,11 @@ */ @Autowired private SmUserQueryServiceI userQueryService; + + /** + * 鏃ュ織 + */ + private Logger logger = LoggerFactory.getLogger(getClass()); /** * 鐢ㄦ埛鐨勫垪琛ㄥ弬鐓э紝 @@ -65,39 +78,123 @@ } /** - * 浣跨敤閮ㄩ棬鏉ヨ幏鍙栫敤鎴风殑鍙傜収鍒楄〃 + * 閮ㄩ棬绠$悊缁熻鎸夐挳锛屾煡璇㈡帴鍙� + * @param pkDepartment + * @param queryObject + * @return 鍖呭惈瀛愰儴闂ㄤ笅鐨勭敤鎴� + * @throws VciBaseException + */ + @RequestMapping(value = "/countSmUserByDeptOid",method = RequestMethod.GET) + public BaseResult<List<SmUserVO>> countSmUserByDeptOid(String pkDepartment,BaseQueryObject queryObject) throws VciBaseException{ + //VciBaseUtil.alertNotNull(pkDepartment,"閮ㄩ棬涓婚敭");鍏佽涓虹┖鍥犱负浼氬嚭鐜扮粺璁℃墍鏈夐儴闂ㄨ繖涓妭鐐圭殑鎯呭喌 + try { + if(queryObject == null){ + queryObject = new BaseQueryObject(); + } + List<SmUserVO> userVODataGrid = userQueryService.countSmUserByDeptOid(pkDepartment, queryObject.getConditionMap()); + return BaseResult.dataList(userVODataGrid); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "閫氳繃閮ㄩ棬涓婚敭鑾峰彇鍦ㄨ閮ㄩ棬涓嬬殑锛岀敤鎴峰弬鐓у垪琛ㄦ椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } + } + + /** + * 浣跨敤閮ㄩ棬涓婚敭鑾峰彇锛屽湪璇ラ儴闂ㄤ笅鐨勭敤鎴风敤鎴峰弬鐓у垪琛� * @param pkDepartment 閮ㄩ棬鐨勪富閿紝涓嶈兘涓虹┖ * @param queryObject 鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑,鍗冲厑璁镐娇鐢⊿mUserVO閲岀殑鎵�鏈夊睘鎬т綔涓烘煡璇㈡潯浠讹紝涔熷彲浠ヤ娇鐢╬kRole.xxx锛宲kDepartment.xxx,pkDuty.xxx杩欐牱鏉ユ煡璇� * @return 鏅�氱敤鎴凤紙涓嶅寘鍚笁鍛橈紝涔熶笉鍖呭惈鍋滅敤鐨勶級鐨勬樉绀哄璞″垪琛ㄦ暟鎹紝璇疯幏鍙栧叾涓殑data灞炴�� * @throws VciBaseException 閮ㄩ棬涓婚敭涓虹┖銆佹煡璇㈠嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ - @RequestMapping(value = "/refDataGridByPkDepartment",method = RequestMethod.GET) - public BaseResult<SmUserVO> refDataGridByPkDepartment(String pkDepartment,BaseQueryObject queryObject) throws VciBaseException{ - if(queryObject == null){ - queryObject = new BaseQueryObject(); + @RequestMapping(value = "/listUserByDeptOid",method = RequestMethod.GET) + public BaseResult<List<SmUserVO>> listUserByDeptOid(String pkDepartment,BaseQueryObject queryObject) throws VciBaseException{ + VciBaseUtil.alertNotNull(pkDepartment,"閮ㄩ棬涓婚敭"); + try { + if(queryObject == null){ + queryObject = new BaseQueryObject(); + } + List<SmUserVO> userVODataGrid = userQueryService.listUserByDeptOid(pkDepartment, queryObject.getConditionMap()); + return BaseResult.dataList(userVODataGrid); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "閫氳繃閮ㄩ棬涓婚敭鑾峰彇鍦ㄨ閮ㄩ棬涓嬬殑锛岀敤鎴峰弬鐓у垪琛ㄦ椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } - DataGrid<SmUserVO> userVODataGrid = userQueryService.gridUserByDeptOid(pkDepartment, queryObject.getConditionMap(), queryObject.getPageHelper()); - return BaseResult.dataGrid(userVODataGrid); - //濡傛灉鏄�佺殑椤圭洰锛屽簲璇ュ湪gridUserByDeptOid涓婃坊鍔爐ry锛宑atch锛岀劧鍚巆atch閲屽簲璇ヤ娇鐢ㄤ笅闈㈢殑浠g爜 - //BaseResult.fail("杩欓噷杩斿洖鍓嶇鐨勯敊璇俊鎭�"); } /** - * 浣跨敤瑙掕壊鏉ヨ幏鍙栫敤鎴风殑鍙傜収鍒楄〃 - * @param pkRole 瑙掕壊鐨勪富閿紝涓嶈兘涓虹┖ + * 浣跨敤閮ㄩ棬涓婚敭鑾峰彇锛屼笉鍦ㄨ閮ㄩ棬涓嬬殑鐢ㄦ埛鐢ㄦ埛鍙傜収鍒楄〃 + * @param pkDepartment 閮ㄩ棬鐨勪富閿紝涓嶈兘涓虹┖ * @param queryObject 鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑,鍗冲厑璁镐娇鐢⊿mUserVO閲岀殑鎵�鏈夊睘鎬т綔涓烘煡璇㈡潯浠讹紝涔熷彲浠ヤ娇鐢╬kRole.xxx锛宲kDepartment.xxx,pkDuty.xxx杩欐牱鏉ユ煡璇� - * @return 鏅�氱敤鎴凤紙涓嶅寘鍚笁鍛橈紝涔熶笉鍖呭惈鍋滅敤鐨勶級鐨勬樉绀哄璞″垪琛ㄦ暟鎹紝璇疯幏鍙栧叾涓殑data灞炴�� - * @throws VciBaseException 瑙掕壊鐨勪富閿负绌恒�佹煡璇㈠嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 + * @return 鏍规嵁褰撳墠鐧诲綍鐨勭敤鎴峰喅瀹氭煡閭d簺鐢ㄦ埛鍑烘潵锛岀殑鏄剧ず瀵硅薄鍒楄〃鏁版嵁锛岃鑾峰彇鍏朵腑鐨刣ata灞炴�� + * @throws VciBaseException 閮ㄩ棬涓婚敭涓虹┖銆佹煡璇㈠嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ - @RequestMapping(value = "/refDataGridByPkRole",method = RequestMethod.GET) - public BaseResult<SmUserVO> refDataGridByPkRole(String pkRole,BaseQueryObject queryObject) throws VciBaseException{ - if(queryObject == null){ - queryObject = new BaseQueryObject(); + @RequestMapping(value = "/listUserUnInDeptOid",method = RequestMethod.GET) + public BaseResult<List<SmUserVO>> listUserUnInDeptOid(String pkDepartment,BaseQueryObject queryObject) throws VciBaseException{ + VciBaseUtil.alertNotNull(pkDepartment,"閮ㄩ棬涓婚敭"); + try { + if(queryObject == null){ + queryObject = new BaseQueryObject(); + } + List<SmUserVO> userVODataGrid = userQueryService.listUserUnInDeptOid(pkDepartment, queryObject.getConditionMap()); + return BaseResult.dataList(userVODataGrid); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "閫氳繃閮ㄩ棬涓婚敭鑾峰彇涓嶅湪璇ラ儴闂ㄤ笅鐨勶紝鐢ㄦ埛鍙傜収鍒楄〃鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } - DataGrid<SmUserVO> userVODataGrid = userQueryService.gridUserByRoleOid(pkRole, queryObject.getConditionMap(), queryObject.getPageHelper()); - return BaseResult.dataGrid(userVODataGrid); - //濡傛灉鏄�佺殑椤圭洰锛屽簲璇ュ湪gridUserByRoleOid涓婃坊鍔爐ry锛宑atch锛岀劧鍚巆atch閲屽簲璇ヤ娇鐢ㄤ笅闈㈢殑浠g爜 - //BaseResult.fail("杩欓噷杩斿洖鍓嶇鐨勯敊璇俊鎭�"); + } + + /** + * 浣跨敤瑙掕壊鑾峰彇鍏宠仈鐨勭敤鎴峰弬鐓у垪琛細琚仠鐢ㄧ殑鐢ㄦ埛涔熶細鏌ュ嚭鏉� + * @param pkRole 瑙掕壊鐨勪富閿紝涓嶈兘涓虹┖ + * @param queryObject 鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑 + * @return + * @throws VciBaseException + */ + @RequestMapping(value = "/listUserByRoleOid",method = RequestMethod.GET) + public BaseResult<List<SmUserVO>> listUserByRoleOid(String pkRole,BaseQueryObject queryObject) throws VciBaseException{ + VciBaseUtil.alertNotNull(pkRole,"瑙掕壊涓婚敭"); + try { + if(queryObject == null){ + queryObject = new BaseQueryObject(); + } + List<SmUserVO> smUserVOList = userQueryService.listUserByRoleOid(pkRole, queryObject.getConditionMap()); + return BaseResult.dataList(smUserVOList); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "閫氳繃瑙掕壊鏉ヨ幏鍙栫敤鎴风殑鍙傜収鍒楄〃鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } + } + + /** + * 浣跨敤瑙掕壊鑾峰彇涓嶅湪鏌愪釜瑙掕壊涓嬬殑鐢ㄦ埛鍙傜収鍒楄〃 + * @param pkRole 瑙掕壊鐨勪富閿紝涓嶈兘涓虹┖ + * @param queryObject 鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑 + * @return + * @throws VciBaseException + */ + @RequestMapping(value = "/listUserUnInRoleOid",method = RequestMethod.GET) + public BaseResult<List<SmUserVO>> listUserUnInRoleOid(String pkRole,BaseQueryObject queryObject) throws VciBaseException{ + VciBaseUtil.alertNotNull(pkRole,"瑙掕壊涓婚敭"); + try { + if(queryObject == null){ + queryObject = new BaseQueryObject(); + } + List<SmUserVO> smUserVOList = userQueryService.listUserUnInRoleOid(pkRole, queryObject.getConditionMap()); + return BaseResult.dataList(smUserVOList); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "鑾峰彇涓嶅湪褰撳墠瑙掕壊涓嬬殑锛岀敤鎴峰弬鐓у垪琛ㄦ椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } } /** @@ -107,9 +204,15 @@ * @param confirmPassword 纭瀵嗙爜 */ @RequestMapping(value = "/changePassword",method = RequestMethod.POST) - public BaseResult changePassword(String userOid, String password, String confirmPassword) { - userQueryService.changePassword(userOid, password, confirmPassword); - return BaseResult.success("淇敼瀵嗙爜鎴愬姛"); + public BaseResult changePassword(String userOid,String oldPassword, String password, String confirmPassword) throws PLException { + try { + return userQueryService.changePassword(userOid, oldPassword, password, confirmPassword) ? BaseResult.success("鐢ㄦ埛淇敼鎴愬姛锛�"):BaseResult.fail("鐢ㄦ埛淇敼澶辫触锛�"); + }catch (Exception e){ + e.printStackTrace(); + String exceptionMessage = "淇敼瀵嗙爜鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); + } } /** @@ -119,16 +222,15 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/getDataGridUsers",method = RequestMethod.GET) - @VciUnCheckRight public BaseResult<SmUserVO> getDataGridUsers(BaseQueryObject queryObject) throws VciBaseException { try { DataGrid<SmUserVO> userVODataGrid = userQueryService.getDataGridUsers(queryObject.getConditionMap(),queryObject.getPageHelper()); return BaseResult.dataGrid(userVODataGrid); }catch (Exception e) { e.printStackTrace(); - String exceptionMessage = VciBaseUtil.getExceptionMessage(e); - log.error("鐢ㄦ埛绠$悊鍒楄〃鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); - return BaseResult.fail("鐢ㄦ埛绠$悊鍒楄〃鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + e.getMessage()); + String exceptionMessage = "鐢ㄦ埛绠$悊鍒楄〃鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } @@ -138,15 +240,14 @@ * @return */ @RequestMapping(value = "/addUser",method = RequestMethod.POST) - @VciUnCheckRight public BaseResult addUser(@RequestBody SmUserDTO smUserDTO){ try { return userQueryService.addUser(smUserDTO) ? BaseResult.success("鐢ㄦ埛娣诲姞鎴愬姛锛�"):BaseResult.fail("鐢ㄦ埛娣诲姞澶辫触锛�"); }catch (Exception e){ e.printStackTrace(); - String exceptionMessage = VciBaseUtil.getExceptionMessage(e); - log.error("娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); - return BaseResult.fail("娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); + String exceptionMessage = "娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } @@ -156,15 +257,14 @@ * @return */ @RequestMapping(value = "/updateUser",method = RequestMethod.PUT) - @VciUnCheckRight public BaseResult updateUser(@RequestBody SmUserDTO smUserDTO){ try { - return BaseResult.success(userQueryService.updateUser(smUserDTO) ? "鐢ㄦ埛淇敼鎴愬姛锛�":"鐢ㄦ埛淇敼澶辫触锛�"); + return userQueryService.updateUser(smUserDTO) ? BaseResult.success("鐢ㄦ埛淇敼鎴愬姛锛�"):BaseResult.fail("鐢ㄦ埛淇敼澶辫触锛�"); }catch (Exception e){ e.printStackTrace(); - String exceptionMessage = VciBaseUtil.getExceptionMessage(e); - log.error("淇敼鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); - return BaseResult.fail("淇敼鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); + String exceptionMessage = "淇敼鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } @@ -174,15 +274,14 @@ * @return */ @RequestMapping(value = "/deleteUser",method = RequestMethod.DELETE) - @VciUnCheckRight public BaseResult deleteUser(String[] ids){ try { return userQueryService.deleteUser(ids) ? BaseResult.success("鍒犻櫎鐢ㄦ埛鎴愬姛锛�"):BaseResult.fail("鍒犻櫎鐢ㄦ埛澶辫触锛�"); }catch (Exception e){ e.printStackTrace(); - String exceptionMessage = VciBaseUtil.getExceptionMessage(e); - log.error("娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); - return BaseResult.fail("娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + exceptionMessage); + String exceptionMessage = "娣诲姞鐢ㄦ埛鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } @@ -193,33 +292,60 @@ * @return */ @RequestMapping(value = "/stopUsers",method = RequestMethod.POST) - @VciUnCheckRight public BaseResult stopUsers(String[] ids,boolean flag){ try { userQueryService.stopUsers(ids,flag); return BaseResult.success("鐢ㄦ埛銆愬仠鐢�/鍚敤銆戞垚鍔燂紒"); }catch (Exception e){ e.printStackTrace(); - String exceptionMessage = VciBaseUtil.getExceptionMessage(e); - log.error("鐢ㄦ埛銆愬仠鐢�/鍚敤銆戞椂鍑虹幇閿欒锛屽師鍥狅細" + exceptionMessage); - return BaseResult.fail("鐢ㄦ埛銆愬仠鐢�/鍚敤銆戞椂鍑虹幇閿欒锛屽師鍥狅細" + exceptionMessage); + String exceptionMessage = "鐢ㄦ埛銆愬仠鐢�/鍚敤銆戞椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e); + logger.error(exceptionMessage); + return BaseResult.fail(exceptionMessage); } } /** * 涓嬭浇浜哄憳瀵煎叆妯℃澘 + * @param downloadFileName + * @param response */ - @RequestMapping(value = "/downloadImportTemplate",method = RequestMethod.POST) - public void downloadImportTemplate(){ - + @RequestMapping(value = "/downloadImportTemplate",method = RequestMethod.GET) + public void downloadImportTemplate(String downloadFileName, HttpServletResponse response){ + try { + String excelPath = userQueryService.downloadImportTemplate(downloadFileName); + ControllerUtil.writeFileToResponse(response,excelPath); + } catch (Exception e) { + String msg = "涓嬭浇鐢ㄦ埛瀵煎叆妯℃澘鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + LangBaseUtil.getErrorMsg(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(); + } + } } /** * 浜哄憳瀵煎叆 + * @param file + * @return */ @RequestMapping(value = "/importUser",method = RequestMethod.POST) - public void importUser(){ - + public BaseResult importUser(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 userQueryService.importUser(file1); + } else { + return BaseResult.fail(FrameWorkLangCodeConstant.IMPORT_FAIL, new String[]{"鏃犲鍏ョ殑鏂囦欢"}); + } + }catch (Throwable e) { + throw new VciBaseException(e.getMessage(),new String[0],e); + }finally { + file1.delete(); + } } } -- Gitblit v1.9.3