AttendanceController.java
4.04 KB
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
package com.ruoyi.controller;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.global.Result;
import com.ruoyi.domain.RuleAttendanceMain;
import com.ruoyi.pojo.dto.SchedulingDto;
import com.ruoyi.pojo.dto.SchedulingSettingDto;
import com.ruoyi.pojo.vo.*;
import com.ruoyi.service.AttendanceService;
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 java.util.List;
/**
* 考勤表controller
*
* @author 20412
*/
@RestController
@RequestMapping("/attendance")
@Api(tags = "考勤管理")
public class AttendanceController extends BaseController {
@Autowired
private AttendanceService attendanceService;
/**
* 获取指定人员信息
*/
@ApiOperation("获取人员信息")
@GetMapping("/peoples")
public Result<?> getPeopleInfo(@RequestParam(value = "id", required = false) Long id) {
return Result.OK(attendanceService.getDriverInfo(id));
}
/**
* 获取排班
*/
@ApiOperation("获取排班")
@GetMapping("/scheduling/list")
public TableDataInfo getSchedulingList(@ModelAttribute SchedulingRequestVo vo) {
List<SchedulingResponseVo> list = attendanceService.getSchedulingList(vo);
return getDataTable(list);
}
/**
* 根据班次获取模板
*/
@ApiOperation("根据班次获取模板")
@GetMapping("/template/{id}")
public Result<?> getTemplate(@PathVariable("id") Long id) {
return Result.OK(attendanceService.getTemplate(id));
}
/**
* 新增排班设置
*/
@ApiOperation("排班设置")
@PostMapping("/saveSchedulingSetting")
public Result<?> saveSchedulingSetting(@RequestBody @Validated SchedulingSettingDto dto) {
attendanceService.saveSchedulingSetting(dto);
return Result.OK("新增成功");
}
/**
* 修改排班设置
*/
@ApiOperation("排班设置")
@PutMapping("/updateSchedulingSetting")
public Result<?> updateSchedulingSetting(@RequestBody @Validated SchedulingDto dto) {
attendanceService.updateSchedulingSetting(dto);
return Result.OK("新增成功");
}
/**
* 删除排班设置
*/
@ApiOperation("排班设置")
@DeleteMapping("/deleteSchedulingSetting/{settingId}")
public Result<?> deleteSchedulingSetting(@PathVariable("settingId") Integer settingId) {
attendanceService.deleteSchedulingSetting(settingId);
return Result.OK("删除成功");
}
/**
* 获取考情表
*/
@ApiOperation("获取考情表")
@GetMapping("/list/attendance")
public TableDataInfo getAttendance(@ModelAttribute RuleAttendanceMainRequestVo vo) {
List<RuleAttendanceMain> list = attendanceService.queryAttendanceMain(vo);
return getDataTable(list);
}
@ApiOperation("修改考情表")
@PutMapping("/update/attendance")
public Result<?> updateAttendance(@RequestBody @Validated UpdateAttendanceVo vo) {
try {
attendanceService.updateAttendance(vo);
return Result.OK("排班修改成功");
} catch (Exception e) {
throw new RuntimeException("排班修改失败,请联系管理员" + e.getMessage());
}
}
@ApiOperation("删除考勤表")
@PostMapping("/delete/attendance")
public Result<?> deleteAttendance(@RequestBody DeleteAttendanceVo vo) {
try {
attendanceService.deleteAttendance(vo);
return Result.OK("删除排班成功");
} catch (Exception e) {
throw new RuntimeException("删除排班失败,请联系管理员" + e.getMessage());
}
}
@ApiOperation("获取排班表人员信息")
@GetMapping("/list/people")
public Result<?> getPeopleList(@ModelAttribute PeopleRequestVo vo){
return Result.OK(attendanceService.getPeopleList(vo));
}
}