From 87a395a6024278594a0a80d25a24ba4ca5993513 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期六, 18 三月 2023 17:42:10 +0800
Subject: [PATCH] 统计修改

---
 ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java |  110 +++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 98 insertions(+), 12 deletions(-)

diff --git a/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java b/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java
index 9e13d2f..8485e5f 100644
--- a/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java
+++ b/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java
@@ -1,24 +1,32 @@
 package com.ycl.controller.depart;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.annotation.LogSave;
 import com.ycl.api.BasePageDTO;
 import com.ycl.api.BasePageVO;
 import com.ycl.api.CommonResult;
 import com.ycl.controller.BaseController;
+import com.ycl.dto.UmsDepartDto;
 import com.ycl.entity.depart.UmsDepart;
 import com.ycl.service.depart.UmsDepartService;
 import com.ycl.service.user.UmsDepartManageService;
+import com.ycl.utils.EasyExcelUtils;
 import com.ycl.utils.auth.UserAuthUtil;
 import com.ycl.vo.depart.DepartVO;
+import com.ycl.vo.depart.UmsDepartVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
-import java.util.Arrays;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 import java.util.List;
 
 /**
@@ -43,6 +51,7 @@
 
     @ApiOperation("娣诲姞閮ㄩ棬")
     @PostMapping(value = "/create")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "娣诲姞閮ㄩ棬")
     public CommonResult<Void> create(@Validated @RequestBody DepartVO.AddDepartVO addDepartVO) {
         departService.create(addDepartVO);
         return CommonResult.success(null);
@@ -50,6 +59,7 @@
 
     @ApiOperation("缂栬緫閮ㄩ棬")
     @PostMapping(value = "/update")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "缂栬緫閮ㄩ棬")
     public CommonResult<Void> create(@Validated @RequestBody DepartVO.UpdateDepartVO params) {
         departService.update(params);
         return CommonResult.success(null);
@@ -57,25 +67,40 @@
 
     @ApiOperation("鍒犻櫎")
     @PostMapping(value = "/delete")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "鍒犻櫎閮ㄩ棬")
     public CommonResult<Void> delete(@Validated @RequestBody DepartVO.IdDepartVO params) {
         departService.delete(params.getId());
         return CommonResult.success(null);
     }
 
     /**
-     * @Description  batch deletion departments
-     * @Param [ids]
      * @return com.ycl.api.CommonResult<java.lang.Void>
+     * @Description batch deletion departments
+     * @Param [ids]
      **/
-    @ApiOperation("鍒犻櫎")
-    @PostMapping(value = "/batch_deletion)")
-    public CommonResult<Void> delete(@RequestParam String[] ids) {
-        departService.removeBatchByIds(Arrays.asList(ids));
-        return CommonResult.success(null);
+    @ApiOperation("鎵瑰鐞�-鍒犻櫎")
+    @PostMapping(value = "/batch_deletion")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "鎵归噺鍒犻櫎閮ㄩ棬")
+    public CommonResult delete(@RequestParam List<Long> ids) {
+        if (ids.isEmpty()) {
+            return CommonResult.failed("bad request parameter");
+        }
+        return CommonResult.success(departService.removeBatchByIds(ids));
+    }
+
+    @ApiOperation("鎵瑰鐞�-寮�鍚垨鑰呯鐢ㄩ儴闂�")
+    @PutMapping(value = "/batch_status")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "鎵归噺寮�鍚垨鑰呯鐢ㄩ儴闂�")
+    public CommonResult updateBatch(@RequestBody List<UmsDepart> umsDepartList) {
+        if (umsDepartList.isEmpty()) {
+            return CommonResult.failed("bad request parameter");
+        }
+        return CommonResult.success(departService.updateBatchById(umsDepartList));
     }
 
     @ApiOperation("璇︽儏")
     @PostMapping(value = "/detail")
+    @LogSave(operationType = "閮ㄩ棬绠$悊", contain = "鏌ョ湅閮ㄩ棬")
     public CommonResult<UmsDepart> detail(@Validated @RequestBody DepartVO.IdDepartVO params) {
         UmsDepart sccgDepart = departService.loadDepartById(params.getId());
         return CommonResult.success(sccgDepart);
@@ -97,16 +122,77 @@
 
     @ApiOperation("鏌ヨ鍏ㄩ儴閮ㄩ棬")
     @GetMapping(value = "/page")
-    public CommonResult<IPage<UmsDepart>> page(DepartVO.PageDepartVO params) {
-        IPage<UmsDepart> page = departService.pageDepart(params);
+    public CommonResult<IPage<UmsDepartVO>> page(@RequestParam("currentPage") Integer currentPage, @RequestParam("pageSize") Integer pageSize,
+                                                 @RequestParam(value = "departName", required = false) String departName) {
+        IPage<UmsDepartVO> page = new Page<>(currentPage, pageSize);
+        departService.pageDepart(departName, page);
         return CommonResult.success(page);
+    }
+
+    @ApiOperation("閮ㄩ棬瀵煎嚭")
+    @PostMapping("/export")
+    public void exportDpt(HttpServletResponse response) {
+        List<UmsDepartDto> umsDepartDtos = departService.departExp();
+        String sheetName = "閮ㄩ棬瀵煎嚭";
+        EasyExcelUtils.export(response, sheetName, UmsDepartDto.class, umsDepartDtos);
+    }
+
+    @ApiOperation("閮ㄩ棬瀵煎叆")
+    @PostMapping("/import")
+    public CommonResult importDpt(MultipartFile file) throws IOException {
+        EasyExcelUtils.importDepartFile(file);
+        return CommonResult.success(true, "瀵煎叆鎴愬姛");
     }
 
     @ApiOperation("鏌ヨ鎴戠殑閮ㄩ棬")
     @GetMapping(value = "/belongDepart")
     public CommonResult<BasePageDTO> belongDepart(BasePageVO params) {
-        BasePageDTO basePageDTO= umsAdminDepartService.belongDepart(fetchOperator(request).getOperatorId(), params.getCurrent(), params.getPageSize());
+        BasePageDTO basePageDTO = umsAdminDepartService.belongDepart(fetchOperator(request).getOperatorId(), params.getCurrent(), params.getPageSize());
         return CommonResult.success(basePageDTO);
     }
-}
 
+    @ApiOperation("鐢ㄦ埛淇敼瑙掕壊")
+    @PutMapping(value = "/user_update_Role")
+    public CommonResult userUpdateRole(@RequestParam Long id,
+                                       @RequestParam List<Long> roles) {
+        umsAdminDepartService.userUpdateRoles(id, roles);
+        return CommonResult.success("update success");
+    }
+
+    @ApiOperation("鐢ㄦ埛淇敼閮ㄩ棬")
+    @PutMapping(value = "/user_update_depart")
+    public CommonResult userUpdateDepart(@RequestParam Long userId,
+                                         @RequestParam Long departId) {
+        umsAdminDepartService.userUpdateDepart(userId, departId);
+        return CommonResult.success("update success");
+    }
+
+    @ApiOperation("鏌ヨ涓嶅湪閮ㄩ棬鐨勫墿浣欎汉鍛�")
+    @GetMapping("/query_surplus_user")
+    public CommonResult searchSurplusUser() {
+        return CommonResult.success(departService.selectSurplusUser());
+    }
+
+    @ApiOperation("鏌ヨ涓嶅湪閮ㄩ棬鐨勫墿浣欎汉鍛樺拰宸插湪閮ㄩ棬鐨勪汉")
+    @GetMapping("/query_surplus_exist_user")
+    public CommonResult searchSurplusUser(@RequestParam Long id) {
+        return CommonResult.success(departService.selectSurplusUserAndExistUser(id));
+    }
+
+    @ApiOperation("鏌ヨ椤剁骇閮ㄩ棬")
+    @GetMapping(value = "/query_father")
+    public CommonResult search() {
+        Integer fatherId = 0;
+        return CommonResult.success(departService
+                .list(new LambdaQueryWrapper<UmsDepart>()
+                        .eq(UmsDepart::getParentId, fatherId)));
+    }
+
+    @ApiOperation("鏌ヨ閮ㄩ棬浜岀骇")
+    @GetMapping(value = "/query_father_children")
+    public CommonResult search(@RequestParam Integer fatherId) {
+        return CommonResult.success(departService
+                .list(new LambdaQueryWrapper<UmsDepart>()
+                        .eq(UmsDepart::getParentId, fatherId)));
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0