feat: 公务出差申请
This commit is contained in:
parent
839e2a4143
commit
51304c6d83
|
@ -0,0 +1,119 @@
|
||||||
|
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.page.TableDataInfo;
|
||||||
|
import com.ruoyi.database.domain.PublicBusinessTrip;
|
||||||
|
import com.ruoyi.database.service.PublicBusinessTripService;
|
||||||
|
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 PublicBusinessTripController
|
||||||
|
* @Author lijingtong
|
||||||
|
* @Date 2025-05-28
|
||||||
|
*/
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@RequestMapping("/business/publicBusinessTrip")
|
||||||
|
@Api(tags = "公务出差申请")
|
||||||
|
public class PublicBusinessTripController extends BaseController {
|
||||||
|
|
||||||
|
private final PublicBusinessTripService publicBusinessTripService;
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping("/getList")
|
||||||
|
@ApiOperation("查询公务出差申请")
|
||||||
|
public TableDataInfo getList(PublicBusinessTrip publicBusinessTrip) {
|
||||||
|
startPage();
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||||
|
QueryWrapper<PublicBusinessTrip> queryWrapper = new QueryWrapper<>(publicBusinessTrip);
|
||||||
|
queryWrapper.orderByDesc("create_time");
|
||||||
|
String fTime = publicBusinessTrip.getFTime();
|
||||||
|
String eTime = publicBusinessTrip.getETime();
|
||||||
|
// 把时间转成LocalDateTime格式
|
||||||
|
LocalDateTime fromTime = LocalDateTime.parse(fTime, formatter);
|
||||||
|
LocalDateTime endTime = LocalDateTime.parse(eTime, formatter);
|
||||||
|
queryWrapper.orderByDesc("create_time");
|
||||||
|
if (fTime != null && fTime != null) {
|
||||||
|
queryWrapper.between("create_time", fromTime, endTime);
|
||||||
|
}
|
||||||
|
List<PublicBusinessTrip> list = publicBusinessTripService.list();
|
||||||
|
long size = list.size();
|
||||||
|
return getDataTableEnhance(list, size);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("新增或修改公务出差申请 传id为修改 不传id为新增")
|
||||||
|
@PostMapping("/addOrUpdate")
|
||||||
|
public AjaxResult add(@RequestBody PublicBusinessTrip publicBusinessTrip) {
|
||||||
|
if (publicBusinessTrip.getId() == null) {
|
||||||
|
publicBusinessTrip.setCreateBy(getUsername());
|
||||||
|
publicBusinessTrip.setCreateTime(LocalDateTime.now());
|
||||||
|
publicBusinessTrip.setUpdateBy(getUsername());
|
||||||
|
publicBusinessTrip.setUpdateTime(LocalDateTime.now());
|
||||||
|
boolean result = publicBusinessTripService.save(publicBusinessTrip);
|
||||||
|
if (result) {
|
||||||
|
return AjaxResult.success("新增成功");
|
||||||
|
}
|
||||||
|
return AjaxResult.error("新增失败");
|
||||||
|
} else {
|
||||||
|
publicBusinessTrip.setUpdateBy(getUsername());
|
||||||
|
boolean result = publicBusinessTripService.updateById(publicBusinessTrip);
|
||||||
|
if (!result) {
|
||||||
|
return AjaxResult.error("修改公务出差申请失败");
|
||||||
|
}
|
||||||
|
return AjaxResult.success(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("删除公务出差申请")
|
||||||
|
@DeleteMapping("/delete/{id}")
|
||||||
|
public AjaxResult delete(@PathVariable Long id) {
|
||||||
|
boolean result = publicBusinessTripService.removeById(id);
|
||||||
|
if (result) {
|
||||||
|
return AjaxResult.success("删除成功");
|
||||||
|
}
|
||||||
|
return AjaxResult.error("删除失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("查询公务出差申请详情")
|
||||||
|
@GetMapping("/detail/{id}")
|
||||||
|
public AjaxResult detail(@PathVariable Long id) {
|
||||||
|
PublicBusinessTrip publicBusinessTrip = publicBusinessTripService.getById(id);
|
||||||
|
if (publicBusinessTrip == null) {
|
||||||
|
return AjaxResult.error("查询失败");
|
||||||
|
}
|
||||||
|
return AjaxResult.success(publicBusinessTrip);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("审批公务出差申请")
|
||||||
|
@PostMapping("/approval")
|
||||||
|
public AjaxResult approval(@RequestBody PublicBusinessTrip publicBusinessTrip) {
|
||||||
|
Integer state = publicBusinessTrip.getState();
|
||||||
|
publicBusinessTrip.setState(state);
|
||||||
|
boolean result = publicBusinessTripService.updateById(publicBusinessTrip);
|
||||||
|
if (!result) {
|
||||||
|
return AjaxResult.error("审批公务出差申请失败");
|
||||||
|
}
|
||||||
|
return AjaxResult.success("审批公务出差申请成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("批量删除公务出差申请")
|
||||||
|
@DeleteMapping("/batchDelete")
|
||||||
|
public AjaxResult batchDelete(@RequestBody List<Long> ids) {
|
||||||
|
boolean result = publicBusinessTripService.removeByIds(ids);
|
||||||
|
if (!result) {
|
||||||
|
return AjaxResult.error("批量删除公务出差申请失败");
|
||||||
|
}
|
||||||
|
return AjaxResult.success("批量删除公务出差申请成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,101 @@
|
||||||
|
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.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class PublicBusinessTrip {
|
||||||
|
|
||||||
|
|
||||||
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty("申请单位")
|
||||||
|
private Long deptId;
|
||||||
|
|
||||||
|
@ApiModelProperty("申请单位名称")
|
||||||
|
private String deptName; // 修正类型为String
|
||||||
|
|
||||||
|
@ApiModelProperty("申请人姓名")
|
||||||
|
private String applicantName;
|
||||||
|
|
||||||
|
@ApiModelProperty("警号")
|
||||||
|
private String policeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系方式")
|
||||||
|
private String contactWay;
|
||||||
|
|
||||||
|
@ApiModelProperty("申请日期")
|
||||||
|
@JsonFormat(pattern = "yyyy年MM月dd日")
|
||||||
|
private LocalDateTime applicationDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("出差开始时间")
|
||||||
|
@JsonFormat(pattern = "yyyy年MM月dd日 HH:mm")
|
||||||
|
private LocalDateTime startDateTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("出差结束时间")
|
||||||
|
@JsonFormat(pattern = "yyyy年MM月dd日 HH:mm")
|
||||||
|
private LocalDateTime endDateTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("目的地")
|
||||||
|
private String destination;
|
||||||
|
|
||||||
|
@ApiModelProperty("事由")
|
||||||
|
private String taskReason;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线规划")
|
||||||
|
private String routePlan;
|
||||||
|
|
||||||
|
@ApiModelProperty("携带物品")
|
||||||
|
private String carriedItems;
|
||||||
|
|
||||||
|
@ApiModelProperty("涉密文件密级")
|
||||||
|
private String classifiedFiles;
|
||||||
|
|
||||||
|
@ApiModelProperty("份数")
|
||||||
|
private Integer number;
|
||||||
|
|
||||||
|
@ApiModelProperty("文件编号")
|
||||||
|
private String fileCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("随行人员")
|
||||||
|
private String accompanyingPersonnel;
|
||||||
|
|
||||||
|
@ApiModelProperty("交通费用")
|
||||||
|
private Double transportationCost;
|
||||||
|
|
||||||
|
@ApiModelProperty("住宿费用")
|
||||||
|
private Double accommodationCost;
|
||||||
|
|
||||||
|
@ApiModelProperty("伙食补助")
|
||||||
|
private Double mealSubsidy;
|
||||||
|
|
||||||
|
@ApiModelProperty("审批状态 0-未审批 1-部门审批通过 2-部门审批不通过 3-警务保障部门审批通过 4-警务保障部门审批不通过 5-局领导审批通过 6-局领导审批不通过")
|
||||||
|
private Integer state;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty("修改时间")
|
||||||
|
private LocalDateTime updateTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("修改人")
|
||||||
|
private String updateBy;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String fTime; // 临时字段:开始时间字符串
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String eTime; // 临时字段:结束时间字符串
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
package com.ruoyi.database.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.ruoyi.database.domain.PublicBusinessTrip;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description PublicBusinessTripMapper
|
||||||
|
* @Author lijingtong
|
||||||
|
* @Date 2025-05-28
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface PublicBusinessTripMapper extends BaseMapper<PublicBusinessTrip> {
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.ruoyi.database.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.ruoyi.database.domain.PublicBusinessTrip;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description PublicBusinessTripService
|
||||||
|
* @Author lijingtong
|
||||||
|
* @Date 2025-05-28
|
||||||
|
*/
|
||||||
|
public interface PublicBusinessTripService extends IService<PublicBusinessTrip> {
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.ruoyi.database.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.ruoyi.database.domain.PublicBusinessTrip;
|
||||||
|
import com.ruoyi.database.mapper.PublicBusinessTripMapper;
|
||||||
|
import com.ruoyi.database.service.PublicBusinessTripService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description PublicBusinessTripServiceImpl
|
||||||
|
* @Author lijingtong
|
||||||
|
* @Date 2025-05-28
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class PublicBusinessTripServiceImpl extends ServiceImpl<PublicBusinessTripMapper, PublicBusinessTrip> implements PublicBusinessTripService {
|
||||||
|
}
|
Loading…
Reference in New Issue