huangzhen
2023-09-15 ea09629d8857e0afa329858f72cf1c93e25b813c
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
138
139
140
141
142
143
144
package com.gkhy.exam.coalmine.controller;
 
 
 
import com.gkhy.exam.coalmine.model.dto.req.ExaminerManageAddReqDTO;
import com.gkhy.exam.coalmine.model.dto.req.ExaminerManageUpdateReqDTO;
import com.gkhy.exam.coalmine.model.dto.req.ExaminerManageUpdateStatusReqDTO;
import com.gkhy.exam.coalmine.model.dto.resp.GetExaminerRespDTO;
import com.gkhy.exam.coalmine.service.EduResourcesManagerService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
 
import java.time.LocalDateTime;
import java.util.List;
 
import static com.ruoyi.common.core.domain.AjaxResult.success;
 
/**
 * @author hz
 * @since 2023-09-11 14:26:20
 */
@Api(tags = "考评员管理")
@RestController
@RequestMapping("/examinerManage")
public class ExaminerManageController extends BaseController {
    /**
     * 服务对象
     */
    @Resource
    private EduResourcesManagerService eduResourcesManagerService;
 
    /**
     * 分页查询所有数据
     */
    @ApiOperation(value = "分页获取考评员管理",httpMethod = "GET")
    @GetMapping("/page")
    public TableDataInfo selectAll() {
        startPage();
        List<GetExaminerRespDTO> list = eduResourcesManagerService.selectAll();
        return getDataTable(list);
    }
 
    /**
     * 通过主键查询单条数据
     */
    @ApiOperation(value = "根据id获取考评员管理",httpMethod = "GET")
    @ApiImplicitParam(name = "id",dataTypeClass = Long.class,value = "考评员id",required = true)
    @GetMapping("{id}")
    public AjaxResult selectOne(@PathVariable @NotNull(message = "id不能为空") Long id) {
        return this.eduResourcesManagerService.getExaminerById(id);
    }
 
    /**
     * 修改状态
     */
    @PostMapping("/updateStatus")
    @ApiOperation(value = "开启停用状态",httpMethod = "POST")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id",dataTypeClass = Long.class, value = "id",required = true),
            @ApiImplicitParam(name = "status", dataTypeClass = String.class,value = "状态不能为空:0-正常,1-停用",required = true)
    })
    public AjaxResult updateStatus(@Validated @RequestBody ExaminerManageUpdateStatusReqDTO reqDTO) {
        return this.eduResourcesManagerService.updateExaminerStatus(reqDTO);
    }
 
    /**
     * 新增数据
     */
    @PostMapping("/add")
    @ApiOperation(value = "新增考评员",httpMethod = "POST")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "name",dataTypeClass = String.class, value = "姓名",required = true),
            @ApiImplicitParam(name = "sex", dataTypeClass = String.class,value = "性别"),
            @ApiImplicitParam(name = "code", dataTypeClass = String.class,value = "身份证",required = true),
            @ApiImplicitParam(name = "mobilePhone", dataTypeClass = String.class,value = "手机号",required = true),
            @ApiImplicitParam(name = "photoAttachment", dataTypeClass = Long.class,value = "证件照id"),
            @ApiImplicitParam(name = "qaAttachment", dataTypeClass = Long.class,value = "资质照id"),
            @ApiImplicitParam(name = "jobTitle", dataTypeClass = String.class,value = "职称"),
            @ApiImplicitParam(name = "eduLevel", dataTypeClass = String.class,value = "最高学历",required = true),
            @ApiImplicitParam(name = "expiredTime", dataTypeClass = LocalDateTime.class,value = "过期时间",required = true),
            @ApiImplicitParam(name = "isCm", dataTypeClass = Byte.class,value = "是否为煤矿:0为非,1是",required = true),
            @ApiImplicitParam(name = "status", dataTypeClass = String.class,value = "状态不能为空:0-正常,1-停用",required = true),
            @ApiImplicitParam(name = "description", dataTypeClass = String.class,value = "描述"),
            @ApiImplicitParam(name = "operateTypes", dataTypeClass = List.class,value = "工种详情")
    })
    public AjaxResult insert(@Validated @RequestBody ExaminerManageAddReqDTO reqDTO) {
        return this.eduResourcesManagerService.saveExaminer(reqDTO);
    }
 
    /**
     * 修改数据
     */
    @ApiOperation(value = "修改考评员数据",httpMethod = "POST")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id",dataTypeClass = Long.class, value = "id",required = true),
            @ApiImplicitParam(name = "name",dataTypeClass = String.class, value = "姓名",required = true),
            @ApiImplicitParam(name = "sex", dataTypeClass = String.class,value = "性别"),
            @ApiImplicitParam(name = "code", dataTypeClass = String.class,value = "身份证",required = true),
            @ApiImplicitParam(name = "mobilePhone", dataTypeClass = String.class,value = "手机号",required = true),
            @ApiImplicitParam(name = "photoAttachment", dataTypeClass = Long.class,value = "证件照id"),
            @ApiImplicitParam(name = "qaAttachment", dataTypeClass = Long.class,value = "资质照id"),
            @ApiImplicitParam(name = "jobTitle", dataTypeClass = String.class,value = "职称"),
            @ApiImplicitParam(name = "eduLevel", dataTypeClass = String.class,value = "最高学历",required = true),
            @ApiImplicitParam(name = "expiredTime", dataTypeClass = LocalDateTime.class,value = "过期时间",required = true),
            @ApiImplicitParam(name = "isCm", dataTypeClass = Byte.class,value = "是否为煤矿:0为非,1是",required = true),
            @ApiImplicitParam(name = "status", dataTypeClass = String.class,value = "状态不能为空:0-正常,1-停用",required = true),
            @ApiImplicitParam(name = "description", dataTypeClass = String.class,value = "描述"),
            @ApiImplicitParam(name = "operateTypes", dataTypeClass = List.class,value = "工种详情")
    })
    @PostMapping("/update")
    public AjaxResult update(@Validated @RequestBody ExaminerManageUpdateReqDTO reqDTO) {
        return this.eduResourcesManagerService.updateExaminerById(reqDTO);
    }
 
    /**
     * 删除数据
     */
    @ApiOperation(value = "根据id删除考评员",httpMethod = "GET")
    @ApiImplicitParam(name = "id",dataTypeClass = Long.class,value = "考评员id",required = true)
    @GetMapping("/del")
    public AjaxResult delete(@PathVariable @NotNull(message = "id不能为空") Long id) {
        return this.eduResourcesManagerService.removeExaminerById(id);
    }
 
    /**
     * 根据id删除与之关联的工种信息
     */
    @ApiOperation(value = "根据id删除与之关联的工种信息",httpMethod = "GET")
    @ApiImplicitParam(name = "id",dataTypeClass = Long.class,value = "关联的工种id",required = true)
    @GetMapping("/operateType/del")
    public AjaxResult deleteExaminerBindOperateType(@PathVariable @NotNull(message = "id不能为空") Long id) {
        return this.eduResourcesManagerService.deleteExaminerBindOperateType(id);
    }
}