mg
2022-10-02 8d0e312443876371e2be7ae9a2cb70e4f73bb2cd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
package com.ycl.controller.depart;
 
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ycl.api.BasePageDTO;
import com.ycl.api.BasePageVO;
import com.ycl.api.CommonResult;
import com.ycl.controller.BaseController;
import com.ycl.entity.depart.UmsDepart;
import com.ycl.service.depart.UmsDepartService;
import com.ycl.service.user.UmsDepartManageService;
import com.ycl.utils.auth.UserAuthUtil;
import com.ycl.vo.depart.DepartVO;
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 javax.annotation.Resource;
import java.util.Arrays;
import java.util.List;
 
/**
 * <p>
 * 部门表 前端控制器
 * </p>
 *
 * @author lyq
 * @since 2022-09-07
 */
@RestController
@Api(tags = "部门管理模块")
@RequestMapping("/depart")
public class DepartController extends BaseController {
 
    @Autowired
    private UmsDepartService departService;
    @Resource
    private UmsDepartManageService umsAdminDepartService;
    @Resource
    private UserAuthUtil userAuthUtil;
 
    @ApiOperation("添加部门")
    @PostMapping(value = "/create")
    public CommonResult<Void> create(@Validated @RequestBody DepartVO.AddDepartVO addDepartVO) {
        departService.create(addDepartVO);
        return CommonResult.success(null);
    }
 
    @ApiOperation("编辑部门")
    @PostMapping(value = "/update")
    public CommonResult<Void> create(@Validated @RequestBody DepartVO.UpdateDepartVO params) {
        departService.update(params);
        return CommonResult.success(null);
    }
 
    @ApiOperation("删除")
    @PostMapping(value = "/delete")
    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>
     **/
    @ApiOperation("批处理-删除")
    @PostMapping(value = "/batch_deletion")
    public CommonResult delete(@RequestParam List<Long> ids) {
        if (ids.isEmpty()){
            return CommonResult.failed("bad request parameter");
        }
        return CommonResult.success(departService.removeBatchByIds(ids));
    }
 
    @ApiOperation("详情")
    @PostMapping(value = "/detail")
    public CommonResult<UmsDepart> detail(@Validated @RequestBody DepartVO.IdDepartVO params) {
        UmsDepart sccgDepart = departService.loadDepartById(params.getId());
        return CommonResult.success(sccgDepart);
    }
 
    @ApiOperation("树结构")
    @GetMapping(value = "/tree")
    public CommonResult<List<UmsDepart>> tree() {
        List<UmsDepart> tree = departService.tree();
        return CommonResult.success(tree);
    }
 
    @ApiOperation("修改部门状态")
    @PostMapping(value = "/status")
    public CommonResult<Void> status(@Validated @RequestBody DepartVO.StatusDepartVO params) {
        departService.updateStatus(params);
        return CommonResult.success(null);
    }
 
    @ApiOperation("查询全部部门")
    @GetMapping(value = "/page")
    public CommonResult<IPage<UmsDepart>> page(DepartVO.PageDepartVO params) {
        IPage<UmsDepart> page = departService.pageDepart(params);
        return CommonResult.success(page);
    }
 
    @ApiOperation("查询我的部门")
    @GetMapping(value = "/belongDepart")
    public CommonResult<BasePageDTO> belongDepart(BasePageVO params) {
        BasePageDTO basePageDTO= umsAdminDepartService.belongDepart(fetchOperator(request).getOperatorId(), params.getCurrent(), params.getPageSize());
        return CommonResult.success(basePageDTO);
    }
}