diff --git a/gather-app/src/main/java/com/ruoyi/business/controller/BusinessTripApprovalController.java b/gather-app/src/main/java/com/ruoyi/business/controller/BusinessTripApprovalController.java new file mode 100644 index 0000000..2fe70ff --- /dev/null +++ b/gather-app/src/main/java/com/ruoyi/business/controller/BusinessTripApprovalController.java @@ -0,0 +1,108 @@ +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.BusinessTripApproval; +import com.ruoyi.database.domain.dto.ApprovaltDto; +import com.ruoyi.database.service.BusinessTripApprovalService; +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 BusinessTripApprovalController + * @Author lijingtong + * @Date 2025-05-29 + */ + +@RestController +@RequestMapping("/BusinessTripApproval") +@RequiredArgsConstructor +@Api(tags = "出差审批单") +public class BusinessTripApprovalController extends BaseController { + private final BusinessTripApprovalService businessTripApprovalService; + + @GetMapping("/list") + @ApiOperation("查询出差审批单") + public TableDataInfo list(BusinessTripApproval businessTripApproval) { + startPage(); + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + QueryWrapper qw = new QueryWrapper<>(businessTripApproval); + qw.orderByDesc("create_time"); + String fTime = businessTripApproval.getFTime(); + String eTime = businessTripApproval.getETime(); +// String 的字符串转成LoaclDateTime格式 + LocalDateTime.parse(fTime); + List list = businessTripApprovalService.list(qw); + long size = list.size(); + return getDataTableEnhance(list,size); + } + + @ApiOperation("新增或修改出差审批单 传id为修改 不传id为新增") + @PostMapping("/add") + public AjaxResult add(@RequestBody BusinessTripApproval businessTripApproval) { + SysUser user = getLoginUser().getUser(); + if (businessTripApproval.getId() == null) { + businessTripApproval.setCreateBy(user.getNickName()); + businessTripApproval.setState(0); + boolean result = businessTripApprovalService.save(businessTripApproval); + if (!result) { + return AjaxResult.error("新增出差审批单失败"); + } + return AjaxResult.success(result); + }else { + businessTripApproval.setUpdateBy(user.getNickName()); + boolean result = businessTripApprovalService.updateById(businessTripApproval); + if (!result) { + return AjaxResult.error("修改出差审批单失败"); + } + return AjaxResult.success(result); + } + } + + @ApiOperation("删除出差审批单") + @DeleteMapping("/{id}") + public AjaxResult delete(@PathVariable Long id) { + boolean result = businessTripApprovalService.removeById(id); + if (!result) { + return AjaxResult.error("删除出差审批单失败"); + } + return AjaxResult.success(result); + } + + + @ApiOperation("查询审批流程") + @GetMapping("/state/{id}") + public AjaxResult state(@PathVariable Long id) { + BusinessTripApproval businessTripApproval = businessTripApprovalService.getById(id); + if (businessTripApproval == null) { + return AjaxResult.error("查询审批流程失败"); + } + return AjaxResult.success(businessTripApproval.getState()); + } + + + @ApiOperation("审批") + @PostMapping("/approval") + public AjaxResult approval(@RequestBody ApprovaltDto dto) { + Long id = dto.getId(); + Integer state = dto.getState(); + BusinessTripApproval businessTripApproval = businessTripApprovalService.getById(id); + businessTripApproval.setState(state); + boolean result = businessTripApprovalService.updateById(businessTripApproval); + if (!result) { + return AjaxResult.error("审批公务用车出县申请失败"); + } + return AjaxResult.success("审批公务用车出县申请成功"); + } + + +} diff --git a/gather-app/src/main/java/com/ruoyi/business/controller/VehicleRequestController.java b/gather-app/src/main/java/com/ruoyi/business/controller/VehicleRequestController.java index 3b031e8..3516a76 100644 --- a/gather-app/src/main/java/com/ruoyi/business/controller/VehicleRequestController.java +++ b/gather-app/src/main/java/com/ruoyi/business/controller/VehicleRequestController.java @@ -6,7 +6,7 @@ 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.VehicleRequest; -import com.ruoyi.database.domain.dto.VehicleRequesApprovaltDto; +import com.ruoyi.database.domain.dto.ApprovaltDto; import com.ruoyi.database.service.VehicleRequestService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -92,7 +92,7 @@ public class VehicleRequestController extends BaseController { @ApiOperation("审批公务用车出县申请") @PostMapping("/approval") - public AjaxResult approval(@RequestBody VehicleRequesApprovaltDto dto) { + public AjaxResult approval(@RequestBody ApprovaltDto dto) { Long id = dto.getId(); Integer state = dto.getState(); VehicleRequest vehicleRequest = vehicleRequestService.getById(id); diff --git a/gather-app/src/main/java/com/ruoyi/database/domain/BusinessTripApproval.java b/gather-app/src/main/java/com/ruoyi/database/domain/BusinessTripApproval.java index d67ee94..f2159b9 100644 --- a/gather-app/src/main/java/com/ruoyi/database/domain/BusinessTripApproval.java +++ b/gather-app/src/main/java/com/ruoyi/database/domain/BusinessTripApproval.java @@ -1,9 +1,6 @@ package com.ruoyi.database.domain; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -22,15 +19,19 @@ public class BusinessTripApproval { private Long id; @ApiModelProperty("出差人员姓名") + @TableField(condition = SqlCondition.LIKE) private String name; @ApiModelProperty("部门") + @TableField(condition = SqlCondition.LIKE) private String department; @ApiModelProperty("出差事由") + @TableField(condition = SqlCondition.LIKE) private String reason; @ApiModelProperty("出差目的地") + @TableField(condition = SqlCondition.LIKE) private String destination; @ApiModelProperty("出差开始日期") @@ -42,11 +43,15 @@ public class BusinessTripApproval { private LocalDate endDate; @ApiModelProperty("拟乘交通工具(0-飞机/1-火车/2-汽车/3-轮船/4-其他)") + @TableField(condition = SqlCondition.EQUAL) private String transport; @ApiModelProperty("是否自带公务车辆(0-否 1-是)") private Integer hasOfficialCar; + @ApiModelProperty("审批流程 0-未审批 1-部门审批通过 2-部门审批不通过 3-警务保障部门审批通过 4-警务保障部门审批不通过 5-局领导审批通过 6-局领导审批不通过") + private Integer state; + @ApiModelProperty("单位负责人意见") private String deptLeaderOpinion; diff --git a/gather-app/src/main/java/com/ruoyi/database/domain/dto/VehicleRequesApprovaltDto.java b/gather-app/src/main/java/com/ruoyi/database/domain/dto/ApprovaltDto.java similarity index 74% rename from gather-app/src/main/java/com/ruoyi/database/domain/dto/VehicleRequesApprovaltDto.java rename to gather-app/src/main/java/com/ruoyi/database/domain/dto/ApprovaltDto.java index 628d13d..1332095 100644 --- a/gather-app/src/main/java/com/ruoyi/database/domain/dto/VehicleRequesApprovaltDto.java +++ b/gather-app/src/main/java/com/ruoyi/database/domain/dto/ApprovaltDto.java @@ -4,7 +4,7 @@ package com.ruoyi.database.domain.dto; import lombok.Data; @Data -public class VehicleRequesApprovaltDto { +public class ApprovaltDto { private Long id; private Integer state; diff --git a/gather-app/src/main/java/com/ruoyi/database/mapper/BusinessTripApprovalMapper.java b/gather-app/src/main/java/com/ruoyi/database/mapper/BusinessTripApprovalMapper.java new file mode 100644 index 0000000..f5fe74e --- /dev/null +++ b/gather-app/src/main/java/com/ruoyi/database/mapper/BusinessTripApprovalMapper.java @@ -0,0 +1,14 @@ +package com.ruoyi.database.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.database.domain.BusinessTripApproval; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Description BusinessTripApprovalMapper + * @Author lijingtong + * @Date 2025-05-29 + */ +@Mapper +public interface BusinessTripApprovalMapper extends BaseMapper { +} diff --git a/gather-app/src/main/java/com/ruoyi/database/service/BusinessTripApprovalService.java b/gather-app/src/main/java/com/ruoyi/database/service/BusinessTripApprovalService.java new file mode 100644 index 0000000..dd17b72 --- /dev/null +++ b/gather-app/src/main/java/com/ruoyi/database/service/BusinessTripApprovalService.java @@ -0,0 +1,12 @@ +package com.ruoyi.database.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.database.domain.BusinessTripApproval; + +/** + * @Description BusinessTripApprovalService + * @Author lijingtong + * @Date 2025-05-29 + */ +public interface BusinessTripApprovalService extends IService { +} diff --git a/gather-app/src/main/java/com/ruoyi/database/service/impl/BusinessTripApprovalServiceImpl.java b/gather-app/src/main/java/com/ruoyi/database/service/impl/BusinessTripApprovalServiceImpl.java new file mode 100644 index 0000000..ac027c3 --- /dev/null +++ b/gather-app/src/main/java/com/ruoyi/database/service/impl/BusinessTripApprovalServiceImpl.java @@ -0,0 +1,16 @@ +package com.ruoyi.database.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.database.domain.BusinessTripApproval; +import com.ruoyi.database.mapper.BusinessTripApprovalMapper; +import com.ruoyi.database.service.BusinessTripApprovalService; +import org.springframework.stereotype.Service; + +/** + * @Description BusinessTripApprovalServiceImpl + * @Author lijingtong + * @Date 2025-05-29 + */ +@Service +public class BusinessTripApprovalServiceImpl extends ServiceImpl implements BusinessTripApprovalService { +}