Commit 02cd9be3 authored by 鲍德's avatar 鲍德

风险巡查用户请假功能

parent bc41b68f
......@@ -3,8 +3,15 @@ package com.censoft.censoftrongtong.controller;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysUserService;
import lombok.AllArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
......@@ -29,21 +36,48 @@ import com.ruoyi.common.core.page.TableDataInfo;
* @date 2023-12-05
*/
@RestController
@AllArgsConstructor
@RequestMapping(value = {"/risk/currentRiskHoliday","/app-api/risk/currentRiskHoliday"})
public class CurrentRiskUserHolidayController extends BaseController
{
@Autowired
private ICurrentRiskUserHolidayService currentRiskUserHolidayService;
private ISysUserService sysUserService;
/**
* 查询现状风险巡查用户请假列表
*/
@PreAuthorize("@ss.hasPermi('risk:currentRiskHoliday:list')")
@GetMapping("/list")
public TableDataInfo list(CurrentRiskUserHoliday currentRiskUserHoliday)
{
startPage();
List<CurrentRiskUserHoliday> list = currentRiskUserHolidayService.selectCurrentRiskUserHolidayList(currentRiskUserHoliday);
QueryWrapper<CurrentRiskUserHoliday> queryWrapper = new QueryWrapper<>();
if("0".equals(currentRiskUserHoliday.getType())){
//申请人
queryWrapper.eq("apply_user_id",getUserId());
}else{
//审批人
queryWrapper.in("apply_user_id",currentRiskUserHolidayService.memberUserIds(getUserId()));
}
if(!StringUtils.isEmpty(currentRiskUserHoliday.getStatus())){
queryWrapper.eq("status",currentRiskUserHoliday.getStatus());
}
queryWrapper.orderByAsc(" status");
queryWrapper.orderByDesc("holiday_time");
List<CurrentRiskUserHoliday> list = currentRiskUserHolidayService.list(queryWrapper);
if(!CollectionUtils.isEmpty(list)){
list.forEach(holiday ->{
if("0".equals(currentRiskUserHoliday.getType())){
holiday.setApplyUserName(getUsername());
}else{
SysUser sysUser = sysUserService.selectUserById(holiday.getApplyUserId());
holiday.setApplyUserName(sysUser.getNickName());
}
if(holiday.getApproveUserId() != null){
SysUser sysUser = sysUserService.selectUserById(holiday.getApproveUserId());
holiday.setApproveUserName(sysUser.getNickName());
}
});
}
return getDataTable(list);
}
......@@ -82,11 +116,11 @@ public class CurrentRiskUserHolidayController extends BaseController
currentRiskUserHoliday.setApplyUserId(getUserId());
currentRiskUserHoliday.setApplyTime(new Date());
currentRiskUserHoliday.setStatus("0");
//查询上级项目经理
//TODO 查询上级项目经理 改为已知晓,不做逻辑处理
currentRiskUserHolidayService.insertCurrentRiskUserHoliday(currentRiskUserHoliday);
}else{
currentRiskUserHoliday.setApproveTime(new Date());
currentRiskUserHoliday.setApproveUserId(getUserId());
currentRiskUserHolidayService.updateCurrentRiskUserHoliday(currentRiskUserHoliday);
}
return AjaxResult.success();
......
package com.censoft.censoftrongtong.controller;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.censoft.censoftrongtong.domain.CurrentRiskUserPatrol;
import com.censoft.censoftrongtong.domain.RiskExistingListPatrolVO;
import com.censoft.censoftrongtong.domain.req.CurrentRiskUserPatrolDetailUpdateStatusReqVO;
import com.censoft.censoftrongtong.service.ICurrentRiskUserPatrolService;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
......@@ -30,11 +38,14 @@ import com.ruoyi.common.core.page.TableDataInfo;
* @date 2023-12-05
*/
@RestController
@AllArgsConstructor
@RequestMapping(value = {"/risk/currentRiskPatrolDetail","/app-api/risk/currentRiskPatrolDetail"})
public class CurrentRiskUserPatrolDetailController extends BaseController
{
@Autowired
private ICurrentRiskUserPatrolDetailService currentRiskUserPatrolDetailService;
private ICurrentRiskUserPatrolService currentRiskUserPatrolDetail;
/**
* 查询现状风险用户巡查明细列表
......@@ -61,6 +72,32 @@ public class CurrentRiskUserPatrolDetailController extends BaseController
return getDataTable(list);
}
@ApiModelProperty("更改状态")
@PostMapping("/updateStatus")
public AjaxResult updateStatus(@RequestBody CurrentRiskUserPatrolDetailUpdateStatusReqVO reqVO)
{
//更新巡查信息为已巡查
CurrentRiskUserPatrol currentRiskUserPatrol = currentRiskUserPatrolDetail.selectCurrentRiskUserPatrolById(Long.valueOf(reqVO.getPatrolId()));
//状态 0 未巡查 1 已巡查 2 已请假 3 已过期
currentRiskUserPatrol.setStatus("1");
currentRiskUserPatrolDetail.updateCurrentRiskUserPatrol(currentRiskUserPatrol);
//更新巡查明细信息
List<CurrentRiskUserPatrolDetail> details = new ArrayList<>();
List<Map<String,Object>> list = reqVO.getList();
if(CollectionUtils.isEmpty(list)){
return AjaxResult.success();
}
list.forEach(map ->{
CurrentRiskUserPatrolDetail detail = new CurrentRiskUserPatrolDetail();
detail.setId(Long.parseLong(String.valueOf(map.get("patrolDetailId"))));
detail.setStatus(String.valueOf(map.get("patrolStatus")));
details.add(detail);
});
currentRiskUserPatrolDetailService.updateBatchById(details);
return AjaxResult.success();
}
/**
* 导出现状风险用户巡查明细列表
*/
......
package com.censoft.censoftrongtong.domain;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntityClean;
import lombok.Data;
......@@ -64,4 +66,13 @@ public class CurrentRiskUserHoliday extends BaseEntityClean
/** 删除标志(0代表存在 1代表删除) */
private String delFlag;
@TableField(exist = false)
private String type;
@TableField(exist = false)
private String applyUserName;
@TableField(exist = false)
private String approveUserName;
}
......@@ -3,7 +3,7 @@ package com.censoft.censoftrongtong.domain;
import lombok.Data;
@Data
public class RiskExistingListPatrolVO extends RiskExistingList{
public class RiskExistingListPatrolVO extends RiskPlanExistingList{
private String patrolDetailId;
......
package com.censoft.censoftrongtong.domain.req;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* @author baoxiaode
*/
@Data
public class CurrentRiskUserPatrolDetailUpdateStatusReqVO {
@ApiModelProperty
private List<Map<String,Object>> list;
@ApiModelProperty("巡查id")
private String patrolId;
}
......@@ -3,6 +3,7 @@ package com.censoft.censoftrongtong.mapper;
import java.util.List;
import com.censoft.censoftrongtong.domain.CurrentRiskUserHoliday;
import com.github.yulichang.base.MPJBaseMapper;
import org.apache.ibatis.annotations.Param;
/**
* 现状风险巡查用户请假Mapper接口
......@@ -59,4 +60,6 @@ public interface CurrentRiskUserHolidayMapper extends MPJBaseMapper<CurrentRisk
* @return 结果
*/
public int deleteCurrentRiskUserHolidayByIds(Long[] ids);
List<Long> memberUserIds(@Param("userId") Long userId);
}
......@@ -3,6 +3,8 @@ package com.censoft.censoftrongtong.service;
import java.util.List;
import com.censoft.censoftrongtong.domain.CurrentRiskUserHoliday;
import com.github.yulichang.base.MPJBaseService;
import org.apache.ibatis.annotations.Param;
/**
* 现状风险巡查用户请假Service接口
*
......@@ -58,4 +60,6 @@ public interface ICurrentRiskUserHolidayService extends MPJBaseService<CurrentR
* @return 结果
*/
public int deleteCurrentRiskUserHolidayById(Long id);
List<Long> memberUserIds(@Param("userId") Long userId);
}
......@@ -93,4 +93,9 @@ public class CurrentRiskUserHolidayServiceImpl extends MPJBaseServiceImpl<Curren
{
return currentRiskUserHolidayMapper.deleteCurrentRiskUserHolidayById(id);
}
@Override
public List<Long> memberUserIds(Long userId) {
return currentRiskUserHolidayMapper.memberUserIds(userId);
}
}
......@@ -117,4 +117,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{id}
</foreach>
</delete>
<select id="memberUserIds" parameterType="java.lang.Long" resultType="java.lang.Long">
SELECT
user_id
FROM
project_user_post
WHERE
project_id IN ( SELECT project_id FROM project_user_post
WHERE post_id = ( SELECT post_id FROM sys_post WHERE post_code = 'inspection_project_manager' ) AND user_id = #{userId} )
AND post_id = (SELECT post_id FROM sys_post WHERE post_code = 'inspection_project_member')
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment