From d2008fc35a45ff00b0f37939a13b792ab12e8c6f Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 21 十一月 2024 10:25:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/OrgDepartmentQueryController.java | 157 ++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 139 insertions(+), 18 deletions(-)
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/OrgDepartmentQueryController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/OrgDepartmentQueryController.java
index da185df..5b3a1bb 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/OrgDepartmentQueryController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/OrgDepartmentQueryController.java
@@ -1,19 +1,31 @@
package com.vci.frameworkcore.controller;
-import com.vci.corba.common.PLException;
+import com.vci.dto.OrgDepartmentDTO;
import com.vci.frameworkcore.compatibility.OrgDeptQueryServiceI;
-import com.vci.frameworkcore.pagemodel.OrgDepartmentVO;
+import com.vci.constant.FrameWorkLangCodeConstant;
+import com.vci.pagemodel.OrgDepartmentVO;
+import com.vci.starter.web.annotation.controller.VciUnCheckRight;
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.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
+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 +35,6 @@
*/
@RestController
@RequestMapping("/departmentQueryController")
-@Slf4j
public class OrgDepartmentQueryController {
/**
@@ -33,23 +44,33 @@
private OrgDeptQueryServiceI deptQueryService;
/**
- * 閮ㄩ棬鐨勬爲褰㈠弬鐓�
+ * 鏃ュ織
+ */
+ private Logger logger = LoggerFactory.getLogger(getClass());
+
+ /**
+ * 閮ㄩ棬鐨勬爲褰㈠弬鐓э紝閮ㄩ棬绠$悊涔熺敤鐨勮繖涓煡璇㈡帴鍙�
* @param treeQueryObject 鏍戝舰鏁版嵁鐨勬煡璇㈠璞★紝鍖呮嫭鏌ヨ鏉′欢锛屼笂绾т富閿紝鏄惁澶氶�夌瓑锛岋紙extandParamsMap涓坊鍔�"showAllDepartmentNode"涓�"true"鏃�,骞朵笖parentOid涓虹┖锛岃繑鍥炵粨鏋滀腑浼氬寘鍚�滄墍鏈夐儴闂ㄢ�濊繖涓妭鐐癸級
* @return 閮ㄩ棬鐨勬爲褰㈠弬鐓э紝宸茬粡杞崲浜嗕笂涓嬬骇鍏崇郴
* @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父
*/
@RequestMapping(value = "/refTree",method = RequestMethod.GET)
public BaseResult<Tree> refTree(TreeQueryObject treeQueryObject) throws VciBaseException{
- List<Tree> deptTreeList = deptQueryService.refTreeDept(treeQueryObject);
- return BaseResult.tree(deptTreeList);
- //鑰佺殑椤圭洰渚濈劧鏄坊鍔爐ry catch锛屾柟娉曢噷涓嶆姏鍑哄紓甯�
- //BaseResult.fail("杩欓噷杩斿洖鍓嶇鐨勯敊璇俊鎭�");
+ try {
+ List<Tree> deptTreeList = deptQueryService.refTreeDept(treeQueryObject);
+ return BaseResult.tree(deptTreeList);
+ }catch (Exception e) {
+ e.printStackTrace();
+ String exceptionMessage = "閮ㄩ棬鏍戞煡璇㈡椂鍑虹幇閿欒锛屽師鍥狅細" + VciBaseUtil.getExceptionMessage(e);
+ logger.error(exceptionMessage);
+ return BaseResult.fail(exceptionMessage);
+ }
}
/**
- * 閮ㄩ棬鏌ヨ锛屽甫鍒嗛〉
+ * 閮ㄩ棬鍒楄〃鏌ヨ锛屽甫鍒嗛〉
* @param queryObject
- * @return
+ * @return 杩斿洖鐨刲ist涓嶆槸tree缁撴瀯鐨�
*/
@RequestMapping(value = "/refDataGrid",method = RequestMethod.GET)
public BaseResult<OrgDepartmentVO> refDataGrid(BaseQueryObject queryObject){
@@ -58,20 +79,120 @@
}
/**
- * 淇濆瓨閮ㄩ棬瑙掕壊鍏宠仈淇℃伅锛屽甫鏌ラ噸鍔熻兘
+ * 淇濆瓨閮ㄩ棬鐢ㄦ埛鍏宠仈淇℃伅锛屽钩鍙拌嚜甯︽煡閲嶅姛鑳�
* @param userOIds 鐢ㄦ埛id
* @param deptId 閮ㄩ棬oid
* @return
*/
@RequestMapping(value = "/saveUsersDepts",method = RequestMethod.POST)
public BaseResult saveUsersDepts(String[] userOIds, String deptId){
+ //涓嶈兘鍚屾椂涓虹┖
+ if(Func.isEmpty(userOIds) && Func.isBlank(deptId)){
+ return BaseResult.fail("鍙傛暟銆愮敤鎴蜂富閿�戝拰銆愰儴闂ㄤ富閿�戯紝涓嶈兘鍚屾椂涓虹┖!");
+ }
try {
- return deptQueryService.saveUsersDept(userOIds,deptId) ? BaseResult.success("瑙掕壊鍒嗛厤鎴愬姛锛�"):BaseResult.fail("瑙掕壊鍒嗛厤澶辫触锛�");
+ return deptQueryService.saveUsersDept(userOIds,deptId) ? 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);
+ }
+ }
+
+ /**
+ * 鏂板鍗曟潯閮ㄩ棬
+ * @param orgDepartmentDTO
+ * @return
+ */
+ @RequestMapping(value = "/addDept",method = RequestMethod.POST)
+ public BaseResult addDept(@RequestBody OrgDepartmentDTO orgDepartmentDTO){
+ try {
+ return deptQueryService.addDept(orgDepartmentDTO) ? BaseResult.success("閮ㄩ棬娣诲姞鎴愬姛锛�"):BaseResult.fail("閮ㄩ棬娣诲姞澶辫触锛�");
+ }catch (Exception e){
+ e.printStackTrace();
+ String exceptionMessage = "娣诲姞閮ㄩ棬鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+ logger.error(exceptionMessage);
+ return BaseResult.fail(exceptionMessage);
+ }
+ }
+
+ /**
+ * 淇敼閮ㄩ棬淇℃伅
+ * @param orgDepartmentDTO
+ * @return
+ */
+ @RequestMapping(value = "/updateDept",method = RequestMethod.PUT)
+ public BaseResult updateRole(@RequestBody OrgDepartmentDTO orgDepartmentDTO){
+ try {
+ return deptQueryService.updateDept(orgDepartmentDTO) ? BaseResult.success("閮ㄩ棬淇敼鎴愬姛锛�"):BaseResult.fail("閮ㄩ棬淇敼澶辫触锛�");
+ }catch (Exception e){
+ e.printStackTrace();
+ String exceptionMessage = "淇敼閮ㄩ棬鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+ logger.error(exceptionMessage);
+ return BaseResult.fail(exceptionMessage);
+ }
+ }
+
+ /**
+ * 鍒犻櫎閮ㄩ棬
+ * @param ids 瑕佸垹闄ょ殑閮ㄩ棬涓婚敭
+ * @return
+ */
+ @RequestMapping(value = "/deleteDept",method = RequestMethod.DELETE)
+ public BaseResult deleteDept(String[] ids){
+ try {
+ return deptQueryService.deleteDept(ids) ? BaseResult.success("鍒犻櫎閮ㄩ棬鎴愬姛锛�"):BaseResult.fail("鍒犻櫎閮ㄩ棬澶辫触锛�");
+ }catch (Exception e){
+ e.printStackTrace();
+ String exceptionMessage = "娣诲姞閮ㄩ棬鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+ logger.error(exceptionMessage);
+ return BaseResult.fail(exceptionMessage);
+ }
+ }
+
+ /**
+ * 涓嬭浇浜哄憳瀵煎叆妯℃澘
+ * @param downloadFileName
+ * @param response
+ */
+ @RequestMapping(value = "/downloadImportTemplate",method = RequestMethod.GET)
+ public void downloadImportTemplate(String downloadFileName, HttpServletResponse response){
+ try {
+ String excelPath = deptQueryService.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 = "/importDept",method = RequestMethod.POST)
+ @VciUnCheckRight
+ 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 deptQueryService.importDept(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