package com.xzx.gc.user.controller;
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.date.DateUtil;
|
import com.xzx.gc.common.Result;
|
import com.xzx.gc.common.constant.CommonEnum;
|
import com.xzx.gc.common.constant.Constants;
|
import com.xzx.gc.entity.UserApplyInfo;
|
import com.xzx.gc.model.user.UserApplyAddDTO;
|
import com.xzx.gc.model.user.UserApplyFindDTO;
|
import com.xzx.gc.user.service.UserApplyInfoService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.List;
|
|
|
@Api(tags = "申请管理")
|
@RestController
|
@Validated
|
public class UserApplyInfoController {
|
|
@Autowired
|
private UserApplyInfoService userApplyInfoService;
|
|
@ApiOperation(value = "请假申请")
|
@PostMapping(value = "/userApply/leave/add")
|
public Result userApplyAdd(@RequestBody UserApplyAddDTO userApplyAddDTO){
|
UserApplyInfo userApplyInfo=new UserApplyInfo();
|
BeanUtil.copyProperties(userApplyAddDTO,userApplyInfo);
|
//自动审核
|
userApplyInfo.setAuditTime(DateUtil.now());
|
userApplyInfo.setStatus(Convert.toShort(CommonEnum.已审核.getValue()));
|
userApplyInfo.setAuditUserId(Constants.DEFAULT_ID);
|
userApplyInfoService.add(userApplyInfo);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "查询最近的一次请假记录")
|
@PostMapping(value = "/userApply/leave/findNearset")
|
public Result<UserApplyInfo> findNearset(@RequestBody UserApplyFindDTO userApplyFindDTO){
|
userApplyFindDTO.setStatus(CommonEnum.已审核.getValue());
|
List<UserApplyInfo> byUserIdAndStatus = userApplyInfoService.findByUserIdAndStatus(userApplyFindDTO);
|
if(CollUtil.isNotEmpty(byUserIdAndStatus)){
|
return Result.success(byUserIdAndStatus.get(0));
|
}
|
return Result.success();
|
}
|
}
|