SignInController.java
4.68 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
131
132
133
134
135
136
137
138
139
140
141
142
package com.ruoyi.in.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.file.FileUploadException;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.in.domain.SignIn;
import com.ruoyi.in.service.ISignInService;
import com.ruoyi.in.service.SignInServiceV1;
import com.ruoyi.pojo.response.SignInResponseVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.RandomUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
/**
* 签到Controller
*
* @author guzijian
* @date 2023-07-05
*/
@Slf4j
@RestController
@RequestMapping("/in/in")
@Api(tags = "签到管理")
public class SignInController extends BaseController {
@Autowired
private ISignInService signInService;
@Autowired
private SignInServiceV1 signInServiceV1;
/**
* 查询签到列表
*/
// @PreAuthorize("@ss.hasPermi('in:in:list')")
@GetMapping("/list")
@ApiOperation("查询签到列表")
public TableDataInfo list(SignInResponseVo signIn) {
startPage();
List<SignInResponseVo> list = signInService.selectSignInList(signIn);
return getDataTable(list);
}
/**
* 导出签到列表
*/
// @PreAuthorize("@ss.hasPermi('in:in:export')")
// @Log(title = "签到", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ApiOperation("导出签到列表")
public void export(HttpServletResponse response, SignInResponseVo signIn) {
List<SignInResponseVo> list = signInService.selectSignInList(signIn);
ExcelUtil<SignInResponseVo> util = new ExcelUtil<SignInResponseVo>(SignInResponseVo.class);
util.exportExcel(response, list, "签到数据");
}
/**
* 获取签到详细信息
*/
// @PreAuthorize("@ss.hasPermi('in:in:query')")
@GetMapping(value = "/{id}")
@ApiOperation("获取签到详细信息")
public AjaxResult getInfo(@PathVariable("id") Long id) {
return success(signInService.selectSignInById(id));
}
/**
* 补签
*/
// @PreAuthorize("@ss.hasPermi('in:in:signature')")
@Log(title = "补签", businessType = BusinessType.INSERT)
@PutMapping("/supplementarySignature")
@ApiOperation("补签(通过后台管理页面)")
public AjaxResult supplementarySignature(@ApiParam @RequestBody SignIn signIn) {
return signInService.supplementarySignature(signIn);
}
/**
* 新增签到
*
* @param signIn
* @return
* @throws FileUploadException
*/
@PostMapping("/newAdd")
@ApiOperation("新增签到(设备传入)")
public AjaxResult addSignIn(@ApiParam @RequestBody @Validated SignIn signIn) throws FileUploadException, IOException {
Integer num = RandomUtils.nextInt(0, 9);
if (num < 3) {
log.info("[{}] sing method 走新的签到方式 :[{}] ", num, signIn);
return signInServiceV1.addsignInV1(signIn);
} else {
log.info("[{}] sing method old sign :[{}]", num, signIn);
return signInService.addSignIn(signIn);
}
}
// /**
// * 修改签到
// */
//// @PreAuthorize("@ss.hasPermi('in:in:edit')")
// @Log(title = "签到", businessType = BusinessType.UPDATE)
// @PutMapping
// @ApiOperation("修改签到")
// public AjaxResult edit(@RequestBody SignIn signIn) {
// return toAjax(signInService.updateSignIn(signIn));
// }
/**
* 删除签到
*/
// @PreAuthorize("@ss.hasPermi('in:in:remove')")
// @Log(title = "签到", businessType = BusinessType.DELETE)
// @DeleteMapping("/{ids}")
// @ApiOperation("删除签到")
// public AjaxResult remove(@PathVariable Long[] ids) {
// return toAjax(signInService.deleteSignInByIds(ids));
// }
@GetMapping("/repair")
public AjaxResult repairSignRecord(HttpServletRequest request) {
return AjaxResult.success(signInService.repairSignRecord(request));
}
@GetMapping("/repairAll/{date}")
public AjaxResult repairAllSignRecord(HttpServletRequest request, @PathVariable("date") String date) {
return AjaxResult.success(signInService.repairAllSignRecord(request, date));
}
}