Files
klp-oa/klp-wms/src/main/java/com/klp/controller/WmsAttendanceCheckController.java
Joshi c5c478b1e9 feat(attendance): 添加考勤检查数据更新功能
- 在 IWmsAttendanceCheckService 中新增 updateByBo 方法
- 扩展 WmsAttendanceCheckBo 类继承 BaseEntity 并添加多个考勤字段
- 添加考勤状态、迟到早退分钟数、扣款金额等相关属性
- 在控制器中实现 PUT 请求的编辑接口
- 添加 EditGroup 验证组支持
- 实现服务层 updateByBo 方法进行数据库更新操作
2026-05-15 13:13:34 +08:00

67 lines
2.6 KiB
Java

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.core.validate.EditGroup;
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.PutMapping;
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();
}
@Log(title = "考勤比对", businessType = BusinessType.UPDATE)
@PutMapping
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WmsAttendanceCheckBo bo) {
return toAjax(iWmsAttendanceCheckService.updateByBo(bo));
}
}