diff --git a/gather-app/src/main/java/com/ruoyi/business/controller/NonWorkingDayDrinkingReportController.java b/gather-app/src/main/java/com/ruoyi/business/controller/NonWorkingDayDrinkingReportController.java index 96f354b..c0cd2d7 100644 --- a/gather-app/src/main/java/com/ruoyi/business/controller/NonWorkingDayDrinkingReportController.java +++ b/gather-app/src/main/java/com/ruoyi/business/controller/NonWorkingDayDrinkingReportController.java @@ -115,6 +115,7 @@ public class NonWorkingDayDrinkingReportController extends BaseController { // 单位领导 nonWorkingDayDrinkingReport.setUserType(1); } else if (leaderLeader.contains(user.getNickName())) { +// 局党委和分管局成员 nonWorkingDayDrinkingReport.setUserType(2); } else { // 普通民警 diff --git a/gather-app/src/main/java/com/ruoyi/business/controller/PoliceLeaveApprovalController.java b/gather-app/src/main/java/com/ruoyi/business/controller/PoliceLeaveApprovalController.java index 4476efc..1bb0c1a 100644 --- a/gather-app/src/main/java/com/ruoyi/business/controller/PoliceLeaveApprovalController.java +++ b/gather-app/src/main/java/com/ruoyi/business/controller/PoliceLeaveApprovalController.java @@ -3,11 +3,14 @@ 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.SysDept; 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 com.ruoyi.system.service.ISysDeptService; +import com.ruoyi.system.service.ISysUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -16,6 +19,7 @@ import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.List; +import java.util.stream.Collectors; /** * @Description PoliceLeaveApprovalController @@ -29,11 +33,23 @@ import java.util.List; public class PoliceLeaveApprovalController extends BaseController { private final PoliceLeaveApprovalService policeLeaveApprovalService; + private final ISysDeptService deptService; + private final ISysUserService userService; @RequestMapping("/list") @ApiOperation("查询") public TableDataInfo list(PoliceLeaveApproval policeLeaveApproval) { + SysUser user = getLoginUser().getUser(); + List sysDepts = deptService.selectAllDeptList(); +// 局领导 + List users = userService.getList("131000"); +// 部门领导 + List leader = sysDepts.stream().map(SysDept::getLeader).collect(Collectors.toList()); +// 局党委和分管局成员 + List leaderLeader = sysDepts.stream().map(SysDept::getLeaderLeader).distinct().collect(Collectors.toList()); + startPage(); + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String fTime = policeLeaveApproval.getFTime(); String eTime = policeLeaveApproval.getETime(); @@ -41,29 +57,73 @@ public class PoliceLeaveApprovalController extends BaseController { LocalDateTime time1 = LocalDateTime.parse(eTime, dtf); QueryWrapper queryWrapper = new QueryWrapper<>(policeLeaveApproval); queryWrapper.orderByDesc("create_time"); - if (fTime != null && fTime != null) { + if (fTime != null && fTime != null) { queryWrapper.between("create_time", time, time1); } + if (leader.contains(user.getNickName())) { +// 部门领导和政治处侍昌鑫看普通民警 + queryWrapper.eq("user_type", 0); + queryWrapper.eq("state", 0); + } else if ("侍昌鑫".equals(user.getNickName())) { + queryWrapper.in("user_type", 0,1); + queryWrapper.eq("state", 0); + } else if ("admin".equals(user.getUserName())) { +// 管理员看所有 + }else if ("刘成志".equals(user.getNickName()) || "陈列".equals(user.getNickName())){ +// 主要局领导 + queryWrapper.eq("state", 3); + } else if (leaderLeader.contains(user.getNickName())) { +// 分管局 + queryWrapper.eq("user_type", 1); + }else if (users.contains(user.getNickName()) ) { +// 局领导 + queryWrapper.eq("user_type", 1); + + }else { +// 自己看自己 + queryWrapper.eq("user_id", user.getUserId()); + } List list = policeLeaveApprovalService.list(new QueryWrapper<>(policeLeaveApproval)); long size = list.size(); - return getDataTableEnhance(list,size); + return getDataTableEnhance(list, size); } + @ApiOperation("新增或修改民警请(休)假审批表 传id为修改 不传id为新增") @PostMapping("/add") - public AjaxResult add(@RequestBody PoliceLeaveApproval policeLeaveApproval){ + public AjaxResult add(@RequestBody PoliceLeaveApproval policeLeaveApproval) { + List sysDepts = deptService.selectAllDeptList(); +// 部门领导 + List leader = sysDepts.stream().map(SysDept::getLeader).collect(Collectors.toList()); +// 局党委和分管局成员 + List leaderLeader = sysDepts.stream().map(SysDept::getLeaderLeader).distinct().collect(Collectors.toList()); + SysUser user = getLoginUser().getUser(); if (policeLeaveApproval.getId() == null) { policeLeaveApproval.setName(user.getNickName()); policeLeaveApproval.setIdCard(user.getIdCard()); policeLeaveApproval.setPhone(user.getPhonenumber()); + policeLeaveApproval.setState(0); policeLeaveApproval.setDeptName(user.getDept().getDeptName()); policeLeaveApproval.setCreateBy(user.getNickName()); + policeLeaveApproval.setUserId(user.getUserId()); + policeLeaveApproval.setDeptId(user.getDeptId()); + + if (leader.contains(user.getNickName())) { +// 单位领导 + policeLeaveApproval.setUserType(1); + } else if (leaderLeader.contains(user.getNickName())) { +// 局党委和分管局成员 + policeLeaveApproval.setUserType(2); + } else { +// 普通民警 + policeLeaveApproval.setUserType(0); + } boolean result = policeLeaveApprovalService.save(policeLeaveApproval); if (!result) { return AjaxResult.error("新增民警请(休)假审批表失败"); } return AjaxResult.success(result); - }else { + } else { policeLeaveApproval.setUpdateBy(user.getNickName()); boolean result = policeLeaveApprovalService.updateById(policeLeaveApproval); if (!result) { diff --git a/gather-app/src/main/java/com/ruoyi/database/domain/PoliceLeaveApproval.java b/gather-app/src/main/java/com/ruoyi/database/domain/PoliceLeaveApproval.java index 4806601..ca90763 100644 --- a/gather-app/src/main/java/com/ruoyi/database/domain/PoliceLeaveApproval.java +++ b/gather-app/src/main/java/com/ruoyi/database/domain/PoliceLeaveApproval.java @@ -22,6 +22,9 @@ public class PoliceLeaveApproval { @ApiModelProperty("姓名") private String name; + @ApiModelProperty("用户id") + private Long userId; + @ApiModelProperty("身份证号码") private String idCard; @@ -32,9 +35,15 @@ public class PoliceLeaveApproval { @ApiModelProperty("联系电话") private String phone; + @ApiModelProperty("用户类型 0-普通民警 1-部门领导 2-分管局成员") + private Integer userType; + @ApiModelProperty("所在单位") private String deptName; + @ApiModelProperty("单位id") + private Long deptId; + @ApiModelProperty("请假天数") private String days; @@ -52,7 +61,7 @@ public class PoliceLeaveApproval { private LocalDateTime endDate; - @ApiModelProperty("审批流程 0-未审批 1-部门审批通过 2-部门审批不通过 3-警务保障部门审批通过 4-警务保障部门审批不通过 5-局领导审批通过 6-局领导审批不通过") + @ApiModelProperty("审批流程 0-未审批 1-部门审批通过 2-部门审批不通过 3-政治处审批通过 4-政治处审批不通过 5-局领导审批通过 6-局领导审批不通过") @TableField(condition = SqlCondition.EQUAL) private Integer state; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java index bfa8e67..8ac4498 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java @@ -1,8 +1,9 @@ package com.ruoyi.system.service; -import java.util.List; import com.ruoyi.common.core.domain.entity.SysUser; +import java.util.List; + /** * 用户 业务层 *