package jnpf.attendance.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import jnpf.attendance.service.AttendanceHolidaySettingService;
import jnpf.base.ActionResult;
import jnpf.base.vo.PageListVO;
import jnpf.model.attendance.dto.AttendanceHolidaySettingDto;
import jnpf.model.attendance.dto.EnableUpdateDto;
import jnpf.model.attendance.vo.AttendanceHolidaySettingVo;
import jnpf.util.PageUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
*
* 考勤配置-假日设置 前端控制器
*
*
* @author ahua
* @since 2023-11-29
*/
@RestController
@RequestMapping("/holiday/setting")
public class AttendanceHolidaySettingController {
@Autowired
private AttendanceHolidaySettingService attendanceHolidaySettingService;
/**
* 分页查询节假日设置信息。
*
* @param groupId 考勤组ID
* @param name 节假日名称(可选)
* @param paidSalaryEnable 是否计入薪酬标识(可选)
* @param currentPage 当前页码
* @param pageSize 每页大小
* @return 分页的节假日设置视图对象列表
*/
@GetMapping
public ActionResult> page(@RequestParam String groupId,
@RequestParam(required = false) String name,
@RequestParam(required = false) Integer paidSalaryEnable,
@RequestParam Integer currentPage,
@RequestParam Integer pageSize){
PageDTO page1 = attendanceHolidaySettingService.page(groupId, name, paidSalaryEnable, currentPage, pageSize);
return ActionResult.page(page1.getRecords(), PageUtil.page(page1));
}
/**
* 根据ID获取单个节假日设置信息。
*
* @param id 节假日设置ID
* @return 节假日设置视图对象
*/
@GetMapping("{id}")
public ActionResult getOne(@PathVariable String id){
return ActionResult.success(attendanceHolidaySettingService.getOne(id));
}
/**
* 删除指定的节假日设置信息。
*
* @param id 节假日设置ID
* @return 处理结果视图对象
*/
@DeleteMapping("{id}")
public ActionResult del(@PathVariable String id){
attendanceHolidaySettingService.del(id);
return ActionResult.success();
}
/**
* 保存节假日设置信息。
*
* @param dto 节假日设置数据传输对象
* @return 处理结果视图对象
*/
@PostMapping
public ActionResult save(@RequestBody AttendanceHolidaySettingDto dto){
attendanceHolidaySettingService.save(dto);
return ActionResult.success();
}
/**
* 更改节假日设置信息的启用状态。
*
* @param enableUpdateDto 启用状态更新数据传输对象
* @return 处理结果视图对象
*/
@PutMapping("updateStatus")
public ActionResult changeStatus(@RequestBody EnableUpdateDto enableUpdateDto){
attendanceHolidaySettingService.changeStatus(enableUpdateDto.getId(), enableUpdateDto.getEnable());
return ActionResult.success();
}
}