springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/DepartmentController.java
@@ -1,6 +1,7 @@ package com.panzhihua.westcommittee.api; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.interfaces.OperLog; import com.panzhihua.common.model.vos.R; @@ -17,9 +18,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Date; import java.util.List; import java.util.Set; import java.util.*; import java.util.stream.Collectors; /** @@ -100,25 +99,41 @@ @GetMapping("/getList") @ApiOperation(value = "获取单位列表", tags = {"西区纪委后台-单位管理"}) @OperLog(operModul = "西区纪委后台",operType = 0, businessType = "获取单位列表") public R<List<Department>> getList(String name){ List<Department> list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq(Department::getTier, 4)); Set<String> collect3 = list4.stream().map(Department::getStreetId).collect(Collectors.toSet()); List<Department> list3 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq(Department::getTier, 3) .or().in(collect3.size() > 0, Department::getStreet, collect3)); Set<String> collect2 = list3.stream().map(Department::getDistrictsCode).collect(Collectors.toSet()); List<Department> list2 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq(Department::getTier, 2) .or().in(collect2.size() > 0, Department::getDistrictsCode, collect2)); for (Department department : list2) { List<Department> departmentList2 = list3.stream().filter(s -> s.getDistrictsCode().equals(department.getDistrictsCode())).collect(Collectors.toList()); for (Department department1 : departmentList2) { List<Department> departmentList3 = list4.stream().filter(s -> s.getStreetId().equals(department1.getStreetId())).collect(Collectors.toList()); department1.setChild(departmentList3); public R<List<Department>> getList(String name,Integer level,String code,int type){ if(level==null){ List<Department> list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name)); return R.ok(list4); }else { List<Department> list4=new ArrayList<>(); if(level==2 && type==1){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 2)); }else if(level==2 && type==2){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge( Department::getTier, 2)); }else if(level==3 && type==1){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 3)); }else if(level==3 && type==2){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge( Department::getTier, 3)); }else if(level==4 && type==1){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).eq( Department::getTier, 4)); }else if(level==4 && type==2){ list4 = departmentService.list(new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).ge(Department::getTier, 4)); } department.setChild(departmentList2); return R.ok(list4); } return R.ok(list2); } @GetMapping("/getDeptList") @ApiOperation(value = "获取单位列表1", tags = {"西区纪委后台-单位管理"}) @OperLog(operModul = "西区纪委后台",operType = 0, businessType = "获取单位列表") public R<Page<Department>> getDeptList(String name,int pageNum,int pageSize){ Page<Department> list4 = departmentService.page(new Page<Department>(pageNum,pageSize),new LambdaQueryWrapper<Department>().like(StringUtils.isNotEmpty(name), Department::getName, name).or().eq(StringUtils.isNotEmpty(name),Department::getId,name)); for (Department department : list4.getRecords()) { int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, department.getId())); department.setUserCount(count); } return R.ok(list4); } @@ -128,10 +143,6 @@ long count = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getName, department.getName())); if(0 < count){ return R.fail("单位名称重复。"); } long count1 = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getDeptId, department.getDeptId())); if(0 < count1){ return R.fail("单位ID重复。"); } departmentService.save(department); return R.ok(); @@ -145,11 +156,6 @@ .ne(Department::getId, department.getId())); if(0 < count){ return R.fail("单位名称重复。"); } long count1 = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getDeptId, department.getDeptId()) .ne(Department::getId, department.getId())); if(0 < count1){ return R.fail("单位ID重复。"); } departmentService.updateById(department); return R.ok(); @@ -173,7 +179,7 @@ public R updateStatus(@RequestBody UpdateStatusDeptDto dto){ Department department = departmentService.getById(dto.getId()); department.setStatus(dto.getStatus()); department.setRemark(dto.getRemark()); department.setReason(dto.getReason()); if(dto.getStatus()==2){ SystemUserVo loginUserInfoWest = getLoginUserInfoWest(); department.setOperId(loginUserInfoWest.getId()); springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/api/SystemUserController.java
@@ -119,14 +119,6 @@ if(collect.size() > 0){ LambdaQueryWrapper<SystemMenu> queryWrapper = new LambdaQueryWrapper<SystemMenu>().in(SystemMenu::getId, collect); switch (systemUser.getAccountLevel()){ case 2: queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del", "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del", "/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save", "/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add", "/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management", "/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del")); break; case 3: queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del", "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del", @@ -213,18 +205,7 @@ @ApiOperation(value = "添加人员", tags = {"西区纪委管理后台-人员管理"}) @SysLog(operatorCategory = "添加账号",operId = 4) public R add(@RequestBody SystemUser systemUser){ Integer id = this.getLoginUserInfoWest().getId(); SystemUser user = systemUserService.getById(id); if(2 == user.getAccountLevel() && 1 == systemUser.getAccountLevel()){ return R.fail("不能添加市级账号"); } if(3 == user.getAccountLevel() && 3 < systemUser.getAccountLevel()){ return R.fail("不能添加区县和市级账号"); } if(4 == user.getAccountLevel() && 4 < systemUser.getAccountLevel()){ return R.fail("不能添加街道、区县和市级账号"); } long count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getPhone, systemUser.getPhone()).ne(SystemUser::getStatus, 3)); if(0 < count){ return R.fail("手机号重复。"); @@ -241,8 +222,6 @@ systemUser.setAccountLevel(department.getTier()); systemUser.setStatus(1); systemUser.setCreateTime(LocalDateTime.now()); // 2.0.1 默认管理员 systemUser.setIsAdmin(1); systemUserService.save(systemUser); return R.ok(); } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/controller/ComplaintController.java
@@ -25,8 +25,11 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import static cn.hutool.core.util.ObjectUtil.isNull; /** * <p> @@ -193,6 +196,12 @@ @GetMapping("/getAllocationList") @ApiOperation(value = "获取分配派单位列表") public R<List<DispatchVO>> getAllocationList() { return R.ok(complaintService.getAllocationList(getLoginUserInfo())); } @GetMapping("/getDeptUserList") @ApiOperation(value = "获取当前单位用户列表") public R<Page<SysUserVO>> getDeptUserList(BasePage page) { @@ -203,13 +212,8 @@ @PostMapping("/assignComplain") @ApiOperation(value = "分配诉求") @ApiImplicitParams({ @ApiImplicitParam(name = "complainId", value = "诉求id", required = true), @ApiImplicitParam(name = "deptId", value = "单位id", required = true), @ApiImplicitParam(name = "remark", value = "说明", required = true), }) public R<?> assignComplain(@RequestParam Long complainId,@RequestParam Integer deptId,@RequestParam String remark) { complaintService.assignComplain(getLoginUserInfo(),complainId,deptId,remark); public R<?> assignComplain(@Valid@RequestBody AssignComplainDto dto) { complaintService.assignComplain(getLoginUserInfo(),dto.getComplainId(),dto.getDeptId(),dto.getRemark()); return R.ok(); } @@ -241,10 +245,31 @@ complaintService.updateById(complaint); // 不满意 重新生成诉求 if(complaintComment.getRate()==0){ // 获取当前日期(年月日) String datePrefix = new SimpleDateFormat("yyyyMMdd").format(new Date()); // 查询当前日期的最大流水号 Complaint lastComplaint = complaintService.getOne(new LambdaQueryWrapper<Complaint>() .likeRight(Complaint::getSerialNumber, datePrefix) // 查询以当前日期开头的流水号 .orderByDesc(Complaint::getSerialNumber) .last("limit 1")); String serialNumber; if (isNull(lastComplaint)) { // 如果当天没有记录,从 0001 开始 serialNumber = datePrefix + "0001"; } else { // 获取当前日期的最大流水号,并递增 String lastSerialNumber = lastComplaint.getSerialNumber(); int num = Integer.parseInt(lastSerialNumber.substring(lastSerialNumber.length() - 4)); // 提取后4位数字 serialNumber = datePrefix + String.format("%04d", num + 1); // 递增并格式化为4位 } Complaint complaint1 = new Complaint(); BeanUtils.copyProperties(complaint,complaint1); complaint1.setStatus(0); complaint1.setSerialNumber(serialNumber); complaint1.setAssignStatus(0); complaint1.setCreateTime(new Date()); complaint1.setId(null); complaint1.setCompletionTime(null); complaint1.setCompletionUserId(null); @@ -255,6 +280,7 @@ complaint1.setCompletionDescription(null); complaint1.setCompletionVideos(null); complaint1.setCompletionOtherDescription(null); complaint1.setRemark(null); complaintService.save(complaint1); } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/dto/AssignComplainDto.java
New file @@ -0,0 +1,21 @@ package com.panzhihua.westcommittee.model.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.web.bind.annotation.RequestParam; import javax.validation.constraints.NotNull; @Data @ApiModel("诉求分配dto") public class AssignComplainDto { @ApiModelProperty("诉求id") @NotNull private Long complainId; @ApiModelProperty("部门id") @NotNull private Integer deptId; @ApiModelProperty("备注") private String remark; } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/dto/ComplaintReporAuditDTO.java
@@ -16,4 +16,7 @@ @ApiModelProperty(value = "通过需要指派单位") private Integer deptId; @ApiModelProperty(value = "通过需要指派单位备注") private String remark; } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/dto/UpdateStatusDeptDto.java
@@ -14,5 +14,5 @@ @NotNull(message = "状态不能为空") private Integer status; @ApiModelProperty("备注") private String remark; private String reason; } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/entity/Complaint.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -46,6 +47,7 @@ @ApiModelProperty(value = "问题发生时间") @TableField("time") @NotNull(message = "时间不能为空") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date time; @ApiModelProperty(value = "问题类型") @@ -136,6 +138,7 @@ @ApiModelProperty(value = "创建时间") @TableField("create_time") @JsonFormat (pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; @ApiModelProperty(value = "修改人") springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/entity/Department.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -56,6 +57,7 @@ @TableField("community_id") @ApiModelProperty("社区id") @JsonFormat(shape = JsonFormat.Shape.STRING) private Long communityId; @TableField("districts_code") @@ -71,9 +73,6 @@ private String remark; @TableField("dept_id") @ApiModelProperty("单位ID") private String deptId; private Date createTime; @TableField("oper_name") @@ -85,8 +84,12 @@ @TableField("update_time") private Date updateTime; private String reason; @TableField(exist = false) private Integer userCount; @TableField(exist = false) private List<Department> child; springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/vo/ComplaintVO.java
@@ -86,7 +86,7 @@ private Integer listControlsButtonStatus; @ApiModelProperty(value = "评价按钮状态(0=显示,1=隐藏)") private Integer evaluateButtonStatus; private Integer evaluateButtonStatus=1; @ApiModelProperty(value = "语音文件集合") private List<String> voiceFileList; springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/model/vo/DispatchVO.java
@@ -5,10 +5,10 @@ import lombok.Data; @Data @ApiModel("下派单位") @ApiModel("单位") public class DispatchVO { @ApiModelProperty(value = "下派单位id") @ApiModelProperty(value = "单位id") private String id; @ApiModelProperty(value = "下派单位名称") @ApiModelProperty(value = "单位名称") private String name; } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/IComplaintService.java
@@ -236,4 +236,6 @@ */ void assignComplain(LoginUserInfoVO loginUserInfo, Long complainId, Integer userId,String remark); List<DispatchVO> getAllocationList(LoginUserInfoVO loginUserInfo); } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/ComplaintServiceImpl.java
@@ -297,6 +297,7 @@ // 是管理员 看所有的 page = baseMapper.selectComplaintPage3(page, query, accountLevel, targetId); }else { // 不是管理员 看到指派给我的单位的诉求 page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); } @@ -320,6 +321,31 @@ } } for (ComplaintVO record : page.getRecords()) { int count = complaintCommentService.count(new LambdaQueryWrapper<ComplaintComment>().eq(ComplaintComment::getComplaintId, record.getId())); if (count > 0) { record.setEvaluateButtonStatus(1); } else { if (systemUser != null) { if (record.getStatus() == 3 && systemUser.getAccountLevel() == record.getNowLevel()) { record.setEvaluateButtonStatus(0); } else if (record.getCreateBy().equals(loginUserInfoVO.getUserId()) && record.getStatus() == 3) { record.setEvaluateButtonStatus(0); } else { record.setEvaluateButtonStatus(1); } } else { if (record.getStatus() == 3 && loginUserInfoVO.getUserId().equals(record.getCreateBy())) { record.setEvaluateButtonStatus(0); } else { record.setEvaluateButtonStatus(1); } } } } return page; } @@ -595,8 +621,9 @@ // 更新状态 此时status是表中的状态 未做变动 // 如果是区级 if(systemUser!=null) { ComplaintAuditRecord one = complaintAuditRecordService.getOne(new LambdaQueryWrapper<ComplaintAuditRecord>().eq(ComplaintAuditRecord::getComplaintId, id).eq(ComplaintAuditRecord::getLatestFlag, 1).last("limit 1")); if (systemUser.getAccountLevel() == 2) { if(detail.getNowLevel()==2 && detail.getAssignStatus()==0){ if (detail.getNowLevel() == 2 && detail.getAssignStatus() == 0 && one != null && one.getAuditStatus() == 1) { detail.setStatus(-1); } if (systemUser.getSystemRoleId() == 0) { @@ -605,9 +632,13 @@ detail.setStatus(0); } } if (detail.getFirstStatus() == 0) { detail.setStatus(-2); } } if (systemUser.getAccountLevel() == 3) { if(detail.getNowLevel()==3 && detail.getAssignStatus()==0){ if (detail.getNowLevel() == 3 && detail.getAssignStatus() == 0 && one != null && one.getAuditStatus() == 1) { detail.setStatus(-1); } if (systemUser.getSystemRoleId() == 0) { @@ -616,9 +647,12 @@ detail.setStatus(0); } } if (detail.getFirstStatus() == 0) { detail.setStatus(-2); } } if (systemUser.getAccountLevel() == 4) { if(detail.getNowLevel()==4 && detail.getAssignStatus()==0){ if (detail.getNowLevel() == 4 && detail.getAssignStatus() == 0 && one != null && one.getAuditStatus() == 1) { detail.setStatus(-1); } if (systemUser.getSystemRoleId() == 0) { @@ -626,6 +660,9 @@ if (detail.getNowLevel() != 4 && detail.getStatus() != 3 && detail.getStatus() != 8) { detail.setStatus(0); } } if (detail.getFirstStatus() == 0) { detail.setStatus(-2); } } }else { @@ -664,12 +701,11 @@ int count = complaintCommentService.count(new LambdaQueryWrapper<ComplaintComment>().eq(ComplaintComment::getComplaintId, detail.getId()).eq(ComplaintComment::getDelFlag, 0)); if(detail.getStatus() == 3 && 0 == count){ if(systemUserByPhone.isPresent()){ Integer isAdmin = systemUser.getIsAdmin(); if(accountLevel.compareTo(detail.getReportType()) == 0 && ((accountLevel != 5 && 1 == isAdmin) || accountLevel == 5)){ if (accountLevel.compareTo(detail.getNowLevel()) == 0) { detail.setEvaluateButtonStatus(0); } }else{ if(detail.getReportType() == 5){ if (detail.getCreateBy().equals(loginUserInfoVO.getUserId())) { detail.setEvaluateButtonStatus(0); } } @@ -916,7 +952,7 @@ .eq(ComplaintAuditRecord::getComplaintId, dto.getComplaintId()) .eq(ComplaintAuditRecord::getAuditType, 2) .eq(ComplaintAuditRecord::getLatestFlag, false) .orderByDesc(ComplaintAuditRecord::getSort) .orderByDesc(ComplaintAuditRecord::getSort).last("limit 1") ); if (Objects.nonNull(lastRecord)) { // 复制上一条记录 @@ -928,6 +964,12 @@ newRecord.setUpdateTime(new Date()); complaintAuditRecordService.save(newRecord); } // 返回原来的层级 Complaint complaint = this.getById(dto.getComplaintId()); complaint.setNowLevel(complaint.getLastLevel()); complaint.setSuperiorId(complaint.getLastSuperiorId()); this.updateById(complaint); } @Override @@ -1056,8 +1098,6 @@ } if (complaintReporAuditDTO.getAuditResult().equals(1)) { complaintAuditRecord.setAuditStatus(1); complaintAuditRecord.setAuditorId(loginUserInfoVO.getUserId()); @@ -1075,6 +1115,7 @@ complaint.setAssignStatus(1); complaint.setLastSuperiorId(complaint.getSuperiorId()); complaint.setLastLevel(complaint.getNowLevel()); complaint.setRemark(complaintReporAuditDTO.getRemark()); this.updateById(complaint); @@ -1204,20 +1245,19 @@ public void delayAudit(ComplaintDelayAuditDTO dto, LoginUserInfoVO loginUserInfoVO) { IdentityInformation identityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfoVO); SystemUser systemUser = identityInformation.getSystemUser(); SystemUserLevel systemUserLevel = identityInformation.getSystemUserLevel(); if (identityInformation.getIdentity() != 2) { throw new ServiceException("无权审核"); } int accountLevel = systemUserLevel.getLevel(); // 改为基本类型 int accountLevel = systemUser.getAccountLevel(); // 改为基本类型 Long superiorId; // 使用基本类型比较并补充默认分支 if (accountLevel == ReportTypeEnum.COMMUNITY.getCode()) { superiorId = systemUserLevel.getCommunityId(); superiorId = systemUser.getCommunityId(); } else if (accountLevel == ReportTypeEnum.STREET.getCode()) { superiorId = Long.parseLong(systemUserLevel.getStreetId()); superiorId = Long.parseLong(systemUser.getStreetId()); } else if (accountLevel == ReportTypeEnum.DISTRICT.getCode()) { superiorId = Long.parseLong(systemUserLevel.getDistrictsCode()); superiorId = Long.parseLong(systemUser.getDistrictsCode()); } else if (accountLevel == ReportTypeEnum.CITY.getCode()) { superiorId = 510400L; } else { @@ -1303,6 +1343,26 @@ } else { // 处理未预期的账号等级 throw new ServiceException("未知的账号等级"); } return dispatchVOList; } @Override public List<DispatchVO> getAllocationList(LoginUserInfoVO loginUserInfo) { IdentityInformation identityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfo); List<DispatchVO> dispatchVOList = new ArrayList<>(); SystemUser adminUser = identityInformation.getSystemUser(); if (adminUser.getSystemRoleId() != 1) { throw new ServiceException("无权查看"); } Integer oneDepartmentId = adminUser.getOneDepartmentId(); Department byId = departmentService.getById(oneDepartmentId); List<Department> list1 = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, byId.getTier())); for (Department department : list1) { DispatchVO dispatchVO = new DispatchVO(); dispatchVO.setId(department.getId().toString()); dispatchVO.setName(department.getName()); dispatchVOList.add(dispatchVO); } return dispatchVOList; } @@ -1899,13 +1959,16 @@ } @Override public void assignComplain(LoginUserInfoVO loginUserInfo, Long complainId, Integer userId,String remark) { IdentityInformation currentIdentityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfo); if (currentIdentityInformation.getIdentity().equals(2)) { SystemUser systemUser = currentIdentityInformation.getSystemUser(); Complaint complaint = baseMapper.selectById(complainId); if (systemUser.getSystemRoleId() != 1 || !complaint.getNowLevel().equals(systemUser.getAccountLevel())) { throw new ServiceException("你没有分配权限"); } // 已分配状态 complaint.setAssignPersonId(userId); complaint.setFirstStatus(1); @@ -1917,5 +1980,7 @@ } } } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemMenuServiceImpl.java
@@ -16,16 +16,16 @@ @Service public class SystemMenuServiceImpl extends ServiceImpl<SystemMenuMapper, SystemMenu> implements ISystemMenuService { @Override public List<SystemMenu> getSystemMenuList() { List<SystemMenu> list = this.list(); List<SystemMenu> collect = list.stream().filter(s->s.getParentId() == 0).collect(Collectors.toList()); List<SystemMenu> collect = list.stream().filter(s->s.getParentId() == 0 && s.getId()==1).collect(Collectors.toList()); for (SystemMenu systemMenu : collect) { build(systemMenu, list); } return collect; } public void build(SystemMenu systemMenu, List<SystemMenu> list) { List<SystemMenu> collect = list.stream().filter(s->s.getParentId().intValue() == systemMenu.getId()).collect(Collectors.toList()); springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java
@@ -126,10 +126,13 @@ regionTree = baseMapper.getRegion("510400"); baseMapper.getStreet("510400"); regionTree.forEach(district -> { district.setTier(2); List<RegionVO> streets = baseMapper.getStreet(district.getId()); district.setChildren(streets); streets.forEach(street -> { street.setTier(3); List<RegionVO> communities = baseMapper.getCommunity(street.getId()); communities.forEach(e->e.setTier(4)); street.setChildren(communities); }); }); @@ -137,7 +140,9 @@ case 2: regionTree = baseMapper.getStreet(systemUser.getDistrictsCode()); regionTree.forEach(regionVO->{ regionVO.setTier(3); List<RegionVO> communities = baseMapper.getCommunity(regionVO.getId()); communities.forEach(e->e.setTier(4)); regionVO.setChildren(communities); }); break; @@ -146,13 +151,16 @@ RegionVO streetVO = new RegionVO(); streetVO.setId(street.getStreetId()); streetVO.setName(street.getName()); streetVO.setTier(3); List<RegionVO> communities = baseMapper.getCommunity(systemUser.getStreetId()); communities.forEach(e->e.setTier(4)); streetVO.setChildren(communities); regionTree = Lists.newArrayList(streetVO); break; case 4: ComAct byId = comActService.getById(systemUser.getCommunityId()); RegionVO regionVO = new RegionVO(); regionVO.setTier(4); regionVO.setId(byId.getCommunityId().toString()); regionVO.setName(byId.getName()); regionTree = Lists.newArrayList(regionVO); springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/warpper/SystemUserList.java
@@ -17,14 +17,10 @@ private String phone; @ApiModelProperty(value = "所属角色") private Integer systemRoleId; @ApiModelProperty(value = "账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号) 优先账号所属层级-》选择的组织结构tier ") private Integer accountLevel; @ApiModelProperty(value = "页码", required = true) private Integer pageNum; @ApiModelProperty(value = "每页数量", required = true) private Integer pageSize; @ApiModelProperty(value = "1当前组织架构 2当前及下级", required = true) private Integer type; @ApiModelProperty(value = "组织架构编码 2传当前指定的区县regionCode 3传街道streetId 4传communityId") private String code; @ApiModelProperty(value = "单位id") private Integer deptId; } springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/resources/mapper/ComplaintMapper.xml
@@ -820,12 +820,13 @@ CASE WHEN sc.first_status = 1 and sc.status != 3 and sc.status != 8 and sc.first_status=1 THEN 0 WHEN sc.first_status = 1 and sc.status = 8 THEN 3 WHEN sc.first_status = 0 THEN -2 WHEN sc.first_status = 0 and sc.assign_status = 0 THEN -2 WHEN sc.assign_status = 0 and sc.first_status = 1 THEN -1 ELSE sc.status END AS status, CASE WHEN sc.status = 8 THEN 1 ELSE 0 WHEN sc.status = 3 THEN 0 ELSE 1 END AS evaluateButtonStatus, sc.report_type, sc.superior_id, @@ -882,7 +883,7 @@ sc.images, sc.videos, case WHEN sc.now_level = 2 and sc.assign_status =0 THEN -1 WHEN sc.now_level = 2 and sc.assign_status =0 and (scar.audit_status=1 or scar.audit_status is null) THEN -1 WHEN sc.now_level = 2 and sc.status = 0 and scar.audit_type = 1 AND scar.audit_status = 0 THEN 7 WHEN sc.now_level = 2 and sc.status = 0 and scar.audit_type = 2 AND scar.audit_status = 0 THEN 5 WHEN sc.now_level = 2 and sc.status = 0 and scar.audit_status = 2 and scar.audit_type = 2 THEN 6 @@ -954,6 +955,7 @@ WHEN (sc.now_level = 3 or sc.last_level = 3) and sc.status = 0 and scar.audit_status = 2 and scar.audit_type = 2 THEN 6 WHEN sc.`status` =8 THEN 3 WHEN sc.`status` =3 THEN 3 WHEN sc.now_level = 3 and sc.assign_status =0 and (scar.audit_status=1 or scar.audit_status is null) THEN -1 ELSE 0 END AS status, CASE @@ -1089,6 +1091,7 @@ WHEN (sc.now_level = 4 or sc.last_level = 4) and sc.status = 0 and scar.audit_status = 2 and scar.audit_type = 2 THEN 6 WHEN sc.`status` =8 THEN 3 WHEN sc.`status` =3 THEN 3 WHEN sc.assign_status = 0 THEN -1 ELSE 0 END AS status, CASE springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/resources/mapper/SystemUserMapper.xml
@@ -28,43 +28,10 @@ <if test="null != query.systemRoleId"> and a.system_role_id = #{query.systemRoleId} </if> <if test="null != query.deptId"> and a.one_department_id = #{query.deptId} </if> <if test="null != query.accountLevel and 2 == query.accountLevel and query.type==2 and query.code != null and query.code !='' "> and a.account_level >= #{query.accountLevel} and h.districts_code = #{query.code} </if> <if test="null != query.accountLevel and 2 == query.accountLevel and query.type==2 and query.code == null"> and a.account_level >= #{query.accountLevel} </if> <if test="null != query.accountLevel and 2 == query.accountLevel and query.type==1 and query.code != null and query.code !=''"> and a.account_level = #{query.accountLevel} and h.districts_code = #{query.code} </if> <if test="null != query.accountLevel and 2 == query.accountLevel and query.type==1 and query.code == null "> and a.account_level = #{query.accountLevel} </if> <if test="null != query.accountLevel and 3 == query.accountLevel and query.type==2 and query.code != null and query.code !=''"> and a.account_level >= #{query.accountLevel} and h.street_id = #{query.code} </if> <if test="null != query.accountLevel and 3 == query.accountLevel and query.type==2 and query.code == null"> and h.account_level >= #{query.accountLevel} </if> <if test="null != query.accountLevel and 3 == query.accountLevel and query.type==1 and query.code != null and query.code !=''"> and h.account_level = #{query.accountLevel} and h.street_id = #{query.code} </if> <if test="null != query.accountLevel and 3 == query.accountLevel and query.type==1 and query.code == null"> and a.account_level = #{query.accountLevel} </if> <if test="null != query.accountLevel and 4 == query.accountLevel and query.type==2 and query.code != null and query.code !=''"> and a.account_level >= #{query.accountLevel} and h.community_id = #{query.code} </if> <if test="null != query.accountLevel and 4 == query.accountLevel and query.type==2 and query.code == null"> and a.account_level >= #{query.accountLevel} </if> <if test="null != query.accountLevel and 4 == query.accountLevel and query.type==1 and query.code != null and query.code !=''"> and a.account_level = #{query.accountLevel} and h.community_id = #{query.code} </if> <if test="null != query.accountLevel and 4 == query.accountLevel and query.type==1 and query.code == null"> and a.account_level = #{query.accountLevel} </if> order by a.create_time desc </select>