mg
2022-10-13 09d16543f899f54b8d96671a355a53a5740b1937
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
package com.ycl.controller.depart;
 
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
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.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 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 javax.annotation.Resource;
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")
    @LogSave(operationType = "部门管理",contain = "添加部门")
    public CommonResult<Void> create(@Validated @RequestBody DepartVO.AddDepartVO addDepartVO) {
        departService.create(addDepartVO);
        return CommonResult.success(null);
    }
 
    @ApiOperation("编辑部门")
    @PostMapping(value = "/update")
    @LogSave(operationType = "部门管理",contain = "编辑部门")
    public CommonResult<Void> create(@Validated @RequestBody DepartVO.UpdateDepartVO params) {
        departService.update(params);
        return CommonResult.success(null);
    }
 
    @ApiOperation("删除")
    @PostMapping(value = "/delete")
    @LogSave(operationType = "部门管理",contain = "删除部门")
    public CommonResult<Void> delete(@Validated @RequestBody DepartVO.IdDepartVO params) {
        departService.delete(params.getId());
        return CommonResult.success(null);
    }
 
    /**
     * @return com.ycl.api.CommonResult<java.lang.Void>
     * @Description batch deletion departments
     * @Param [ids]
     **/
    @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("详情")
    @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);
    }
 
    @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<UmsDepartVO>> page(DepartVO.PageDepartVO params) {
        IPage<UmsDepartVO> 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);
    }
 
    @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)));
    }
}