|
|
|
@ -54,6 +54,7 @@ public class PoliceLeaveApprovalController extends BaseController {
|
|
|
|
|
List<SysDept> sysDepts = deptService.selectAllDeptList();
|
|
|
|
|
// 局领导
|
|
|
|
|
List<SysUser> users = userService.getList("131000");
|
|
|
|
|
List<String> leaders = users.stream().map(SysUser::getUserName).collect(Collectors.toList());
|
|
|
|
|
// 部门领导
|
|
|
|
|
List<String> leader = sysDepts.stream().map(SysDept::getLeader).collect(Collectors.toList());
|
|
|
|
|
// 局党委和分管局成员
|
|
|
|
@ -74,23 +75,20 @@ public class PoliceLeaveApprovalController extends BaseController {
|
|
|
|
|
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);
|
|
|
|
|
queryWrapper.eq("dept_id", user.getDept());
|
|
|
|
|
} else if ("096484".equals(user.getUserName())) { //政治处侍昌鑫
|
|
|
|
|
queryWrapper.in("user_type", 0, 1);
|
|
|
|
|
} else if ("admin".equals(user.getUserName())) {
|
|
|
|
|
// 管理员看所有
|
|
|
|
|
}else if ("刘成志".equals(user.getNickName()) || "陈列".equals(user.getNickName())){
|
|
|
|
|
// 主要局领导
|
|
|
|
|
queryWrapper.eq("state", 3);
|
|
|
|
|
} else if ("096001".equals(user.getUserName()) || "096002".equals(user.getUserName())) {
|
|
|
|
|
// 主要刘成志和陈列
|
|
|
|
|
queryWrapper.eq("zzc_state", 1);
|
|
|
|
|
queryWrapper.eq("user_type", 2);
|
|
|
|
|
} else if (leaderLeader.contains(user.getNickName())) {
|
|
|
|
|
// 分管局
|
|
|
|
|
queryWrapper.eq("user_type", 1);
|
|
|
|
|
}else if (users.contains(user.getNickName()) ) {
|
|
|
|
|
// 局领导
|
|
|
|
|
queryWrapper.eq("user_type", 1);
|
|
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
} else {
|
|
|
|
|
// 自己看自己
|
|
|
|
|
queryWrapper.eq("user_id", user.getUserId());
|
|
|
|
|
}
|
|
|
|
@ -114,11 +112,15 @@ public class PoliceLeaveApprovalController extends BaseController {
|
|
|
|
|
policeLeaveApproval.setIdCard(user.getIdCard());
|
|
|
|
|
policeLeaveApproval.setPhone(user.getPhonenumber());
|
|
|
|
|
policeLeaveApproval.setState(0);
|
|
|
|
|
policeLeaveApproval.setCreateTime(new Date().getTime());
|
|
|
|
|
policeLeaveApproval.setDeptName(user.getDept().getDeptName());
|
|
|
|
|
policeLeaveApproval.setCreateBy(user.getNickName());
|
|
|
|
|
policeLeaveApproval.setUserId(user.getUserId());
|
|
|
|
|
policeLeaveApproval.setDeptId(user.getDeptId());
|
|
|
|
|
policeLeaveApproval.setApplyNo(s);
|
|
|
|
|
policeLeaveApproval.setDeptState(0);
|
|
|
|
|
policeLeaveApproval.setZzcState(0);
|
|
|
|
|
policeLeaveApproval.setLeaderState(0);
|
|
|
|
|
UUID uuid = UUID.randomUUID();
|
|
|
|
|
String uuids = uuid.toString();
|
|
|
|
|
policeLeaveApproval.setUuid(uuids);
|
|
|
|
@ -130,6 +132,7 @@ public class PoliceLeaveApprovalController extends BaseController {
|
|
|
|
|
approvalProcess.setSubmitterId(user.getUserId());
|
|
|
|
|
approvalProcess.setSubmitTime(new Date().getTime());
|
|
|
|
|
approvalProcess.setMatterType(3);
|
|
|
|
|
approvalProcess.setCreateTime(new Date().getTime());
|
|
|
|
|
approvalProcess.setApprovalStatus(0);
|
|
|
|
|
approvalProcess.setReadStatus(0);
|
|
|
|
|
approvalProcess.setLeaveType(policeLeaveApproval.getLeaveType());
|
|
|
|
@ -187,29 +190,117 @@ public class PoliceLeaveApprovalController extends BaseController {
|
|
|
|
|
@ApiOperation("审批")
|
|
|
|
|
@PostMapping("/approval")
|
|
|
|
|
public AjaxResult approval(@RequestBody ApprovaltDto dto) {
|
|
|
|
|
|
|
|
|
|
List<SysDept> sysDepts = deptService.selectAllDeptList();
|
|
|
|
|
// 部门领导
|
|
|
|
|
List<String> leader = sysDepts.stream().map(SysDept::getLeader).collect(Collectors.toList());
|
|
|
|
|
// 局党委和分管局成员
|
|
|
|
|
List<String> leaderLeader = sysDepts.stream().map(SysDept::getLeaderLeader).distinct().collect(Collectors.toList());
|
|
|
|
|
|
|
|
|
|
Long id = dto.getId();
|
|
|
|
|
SysUser user = getLoginUser().getUser();
|
|
|
|
|
Integer state = dto.getState();
|
|
|
|
|
PoliceLeaveApproval policeLeaveApproval = policeLeaveApprovalService.getById(id);
|
|
|
|
|
policeLeaveApproval.setState(state);
|
|
|
|
|
if (leader.contains(user.getNickName())) {
|
|
|
|
|
// 部门领导和政治处侍昌鑫看普通民警
|
|
|
|
|
policeLeaveApproval.setDeptState(state);
|
|
|
|
|
if (state == 2) {
|
|
|
|
|
policeLeaveApproval.setState(2);
|
|
|
|
|
}
|
|
|
|
|
gwglLog gwglLog = new gwglLog();
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setDeptId(policeLeaveApproval.getDeptId());
|
|
|
|
|
gwglLog.setDeptName(policeLeaveApproval.getDeptName());
|
|
|
|
|
gwglLog.setUserId(policeLeaveApproval.getUserId());
|
|
|
|
|
gwglLog.setUserName(policeLeaveApproval.getName());
|
|
|
|
|
gwglLog.setCreateTime(policeLeaveApproval.getCreateTime());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setResult(state);
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setType(1);
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setChecker(user.getNickName());
|
|
|
|
|
gwglLog.setCheckTime(System.currentTimeMillis());
|
|
|
|
|
gwglLog.setCheckState(state);
|
|
|
|
|
boolean result1 = gwglLogService.save(gwglLog);
|
|
|
|
|
} else if ("096484".equals(user.getUserName())) {
|
|
|
|
|
//政治处侍昌鑫
|
|
|
|
|
policeLeaveApproval.setZzcState(state);
|
|
|
|
|
if (state == 2) {
|
|
|
|
|
policeLeaveApproval.setState(2);
|
|
|
|
|
}
|
|
|
|
|
gwglLog gwglLog = new gwglLog();
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setDeptId(policeLeaveApproval.getDeptId());
|
|
|
|
|
gwglLog.setDeptName(policeLeaveApproval.getDeptName());
|
|
|
|
|
gwglLog.setUserId(policeLeaveApproval.getUserId());
|
|
|
|
|
gwglLog.setUserName(policeLeaveApproval.getName());
|
|
|
|
|
gwglLog.setCreateTime(policeLeaveApproval.getCreateTime());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setResult(state);
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setType(policeLeaveApproval.getLeaveType());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setChecker(user.getNickName());
|
|
|
|
|
gwglLog.setCheckTime(System.currentTimeMillis());
|
|
|
|
|
gwglLog.setCheckState(state);
|
|
|
|
|
boolean result1 = gwglLogService.save(gwglLog);
|
|
|
|
|
} else if ("admin".equals(user.getUserName())) {
|
|
|
|
|
// 管理员看所有
|
|
|
|
|
policeLeaveApproval.setDeptState(state);
|
|
|
|
|
if (state == 2) {
|
|
|
|
|
policeLeaveApproval.setState(2);
|
|
|
|
|
}
|
|
|
|
|
gwglLog gwglLog = new gwglLog();
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setDeptId(policeLeaveApproval.getDeptId());
|
|
|
|
|
gwglLog.setDeptName(policeLeaveApproval.getDeptName());
|
|
|
|
|
gwglLog.setUserId(policeLeaveApproval.getUserId());
|
|
|
|
|
gwglLog.setUserName(policeLeaveApproval.getName());
|
|
|
|
|
gwglLog.setCreateTime(policeLeaveApproval.getCreateTime());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setResult(state);
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setType(policeLeaveApproval.getLeaveType());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setChecker(user.getNickName());
|
|
|
|
|
gwglLog.setCheckTime(System.currentTimeMillis());
|
|
|
|
|
gwglLog.setCheckState(state);
|
|
|
|
|
boolean result1 = gwglLogService.save(gwglLog);
|
|
|
|
|
|
|
|
|
|
} else if ("096001".equals(user.getUserName()) || "096002".equals(user.getUserName())) {
|
|
|
|
|
// 刘成志和陈列
|
|
|
|
|
if (state == 2) {
|
|
|
|
|
policeLeaveApproval.setState(2);
|
|
|
|
|
}
|
|
|
|
|
policeLeaveApproval.setLeaderState(state);
|
|
|
|
|
gwglLog gwglLog = new gwglLog();
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setDeptId(policeLeaveApproval.getDeptId());
|
|
|
|
|
gwglLog.setDeptName(policeLeaveApproval.getDeptName());
|
|
|
|
|
gwglLog.setUserId(policeLeaveApproval.getUserId());
|
|
|
|
|
gwglLog.setUserName(policeLeaveApproval.getName());
|
|
|
|
|
gwglLog.setCreateTime(policeLeaveApproval.getCreateTime());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setResult(state);
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setType(policeLeaveApproval.getLeaveType());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setChecker(user.getNickName());
|
|
|
|
|
gwglLog.setCheckTime(System.currentTimeMillis());
|
|
|
|
|
gwglLog.setCheckState(state);
|
|
|
|
|
boolean result1 = gwglLogService.save(gwglLog);
|
|
|
|
|
boolean result = approvalsProcessService.lambdaUpdate()
|
|
|
|
|
.eq(ApprovalProcess::getUuid, policeLeaveApproval.getUuid())
|
|
|
|
|
.set(ApprovalProcess::getApprovalStatus, state)
|
|
|
|
|
.update();
|
|
|
|
|
if (!result && !result1) {
|
|
|
|
|
return AjaxResult.success("审批请(休)假失败");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
boolean result = policeLeaveApprovalService.updateById(policeLeaveApproval);
|
|
|
|
|
gwglLog gwglLog = new gwglLog();
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setDeptId(policeLeaveApproval.getDeptId());
|
|
|
|
|
gwglLog.setDeptName(policeLeaveApproval.getDeptName());
|
|
|
|
|
gwglLog.setUserId(policeLeaveApproval.getUserId());
|
|
|
|
|
gwglLog.setUserName(policeLeaveApproval.getName());
|
|
|
|
|
gwglLog.setCreateTime(policeLeaveApproval.getCreateTime());
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setResult(state);
|
|
|
|
|
gwglLog.setApplyNo(policeLeaveApproval.getApplyNo());
|
|
|
|
|
gwglLog.setType(1);
|
|
|
|
|
gwglLog.setReason(policeLeaveApproval.getReason());
|
|
|
|
|
gwglLog.setChecker(user.getNickName());
|
|
|
|
|
gwglLog.setCheckTime(System.currentTimeMillis());
|
|
|
|
|
gwglLog.setCheckState(state);
|
|
|
|
|
boolean result1 = gwglLogService.save(gwglLog);
|
|
|
|
|
if (!result || !result1) {
|
|
|
|
|
|
|
|
|
|
if (!result) {
|
|
|
|
|
return AjaxResult.error("审批非工作日饮酒报备单失败");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|