feat(wms): 新增考勤比对功能
- 创建 AttendanceCheckBo 数据传输对象用于考勤比对参数传递 - 定义 IWmsAttendanceCheckService 接口及其实现类 - 创建 WmsAttendanceCheck 实体类存储考勤比对结果数据 - 开发 WmsAttendanceCheckController 提供考勤比对接口 - 实现考勤比对核心逻辑,支持上下班时间段考勤检查 - 集成打卡记录查询和考勤规则应用功能 - 添加考勤状态判断和扣款计算逻辑 - 实现连续旷工天数统计功能 - 创建考勤比对结果的增删改查接口 - 配置 MyBatis 映射文件和 Excel 导出功能
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
package com.klp.controller;
|
||||
|
||||
import com.klp.common.annotation.Log;
|
||||
import com.klp.common.core.controller.BaseController;
|
||||
import com.klp.common.core.domain.PageQuery;
|
||||
import com.klp.common.core.domain.R;
|
||||
import com.klp.common.core.page.TableDataInfo;
|
||||
import com.klp.common.enums.BusinessType;
|
||||
import com.klp.domain.bo.AttendanceCheckBo;
|
||||
import com.klp.domain.bo.WmsAttendanceCheckBo;
|
||||
import com.klp.domain.vo.WmsAttendanceCheckVo;
|
||||
import com.klp.service.IWmsAttendanceCheckService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/wms/attendanceCheck")
|
||||
public class WmsAttendanceCheckController extends BaseController {
|
||||
|
||||
private final IWmsAttendanceCheckService iWmsAttendanceCheckService;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<WmsAttendanceCheckVo> list(WmsAttendanceCheckBo bo, PageQuery pageQuery) {
|
||||
return iWmsAttendanceCheckService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{checkId}")
|
||||
public R<WmsAttendanceCheckVo> getInfo(@PathVariable Long checkId) {
|
||||
return R.ok(iWmsAttendanceCheckService.queryById(checkId));
|
||||
}
|
||||
|
||||
@Log(title = "考勤比对", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{checkIds}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] checkIds) {
|
||||
return toAjax(iWmsAttendanceCheckService.deleteWithValidByIds(Arrays.asList(checkIds), true));
|
||||
}
|
||||
|
||||
@Log(title = "考勤比对", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/check")
|
||||
public R<Void> checkAttendance(@Validated @RequestBody AttendanceCheckBo bo) {
|
||||
iWmsAttendanceCheckService.checkAttendance(bo);
|
||||
return R.ok();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user