package com.ruoyi.business.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.database.domain.PoliceLeaveApproval; import com.ruoyi.database.domain.dto.ApprovaltDto; import com.ruoyi.database.service.PoliceLeaveApprovalService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.List; /** * @Description PoliceLeaveApprovalController * @Author lijingtong * @Date 2025-05-29 */ @RestController @RequiredArgsConstructor @Api(tags = "民警请(休)假审批表") @RequestMapping("/PoliceLeaveApproval") public class PoliceLeaveApprovalController extends BaseController { private final PoliceLeaveApprovalService policeLeaveApprovalService; @RequestMapping("/list") @ApiOperation("查询") public TableDataInfo list(PoliceLeaveApproval policeLeaveApproval) { startPage(); DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String fTime = policeLeaveApproval.getFTime(); String eTime = policeLeaveApproval.getETime(); LocalDateTime time = LocalDateTime.parse(fTime, dtf); LocalDateTime time1 = LocalDateTime.parse(eTime, dtf); QueryWrapper queryWrapper = new QueryWrapper<>(policeLeaveApproval); queryWrapper.orderByDesc("create_time"); if (fTime != null && fTime != null) { queryWrapper.between("create_time", time, time1); } List list = policeLeaveApprovalService.list(new QueryWrapper<>(policeLeaveApproval)); long size = list.size(); return getDataTableEnhance(list,size); } @ApiOperation("新增或修改民警请(休)假审批表 传id为修改 不传id为新增") @PostMapping("/add") public AjaxResult add(@RequestBody PoliceLeaveApproval policeLeaveApproval){ SysUser user = getLoginUser().getUser(); if (policeLeaveApproval.getId() == null) { policeLeaveApproval.setCreateBy(user.getNickName()); boolean result = policeLeaveApprovalService.save(policeLeaveApproval); if (!result) { return AjaxResult.error("新增民警请(休)假审批表失败"); } return AjaxResult.success(result); }else { policeLeaveApproval.setUpdateBy(user.getNickName()); boolean result = policeLeaveApprovalService.updateById(policeLeaveApproval); if (!result) { return AjaxResult.error("修改民警请(休)假审批表失败"); } return AjaxResult.success(result); } } @ApiOperation("删除民警请(休)假审批表") @DeleteMapping("/{id}") public AjaxResult delete(@PathVariable Long id) { boolean result = policeLeaveApprovalService.removeById(id); if (!result) { return AjaxResult.error("删除民警请(休)假审批表失败"); } return AjaxResult.success(result); } @ApiOperation("查询流程") @GetMapping("/state/{id}") public AjaxResult state(@PathVariable Long id) { PoliceLeaveApproval policeLeaveApproval = policeLeaveApprovalService.getById(id); if (policeLeaveApproval == null) { return AjaxResult.error("查询approval流程失败"); } return AjaxResult.success(policeLeaveApproval); } @ApiOperation("审批") @PostMapping("/approval") public AjaxResult approval(@RequestBody ApprovaltDto dto) { Long id = dto.getId(); Integer state = dto.getState(); PoliceLeaveApproval policeLeaveApproval = policeLeaveApprovalService.getById(id); policeLeaveApproval.setState(state); boolean result = policeLeaveApprovalService.updateById(policeLeaveApproval); if (!result) { return AjaxResult.error("审批请(休)假失败"); } return AjaxResult.success("审批请(休)假成功"); } }