| | |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | @RequiredArgsConstructor(onConstructor_ ={@Lazy}) |
| | | @RequiredArgsConstructor(onConstructor_ = {@Lazy}) |
| | | public class ComplaintServiceImpl extends ServiceImpl<ComplaintMapper, Complaint> implements IComplaintService { |
| | | private final ISystemUserService systemUserService; |
| | | private final IComplaintFlowService complaintFlowService; |
| | |
| | | complaint.setReportUserName(partyMember.getName()); |
| | | complaint.setReportUserPhone(partyMember.getPhone()); |
| | | |
| | | accountLevel=4; |
| | | accountLevel = 4; |
| | | complaint.setSuperiorId(systemUser.getCommunityId()); |
| | | break; |
| | | } |
| | |
| | | complaint.setPartyMemberId(partyMember.getId()); |
| | | complaint.setReportUserName(partyMember.getName()); |
| | | complaint.setReportUserPhone(partyMember.getPhone()); |
| | | complaint.setSuperiorId( partyMember.getCommunityId()); |
| | | complaint.setSuperiorId(partyMember.getCommunityId()); |
| | | |
| | | // 添加处理人 |
| | | // SystemUser one = systemUserService.getOne(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getAccountLevel, 4).eq(SystemUser::getIsDeptAdmin, 1).eq(SystemUser::getCommunityId, partyMember.getCommunityId()).ne(SystemUser::getStatus, 3)); |
| | |
| | | SystemUser systemUser; |
| | | //上级 |
| | | if (systemUserByPhone.isPresent() && null != identity && identity == 2) { |
| | | systemUser= systemUserByPhone.get(); |
| | | systemUser = systemUserByPhone.get(); |
| | | accountLevel = systemUser.getAccountLevel(); |
| | | switch (accountLevel) { |
| | | case 2: |
| | |
| | | //查询对应诉求 |
| | | //page = baseMapper.selectComplaintPage(page, query, targetId, isSuperior); |
| | | // 党员只看自己上报的 |
| | | if(accountLevel==5){ |
| | | page = baseMapper.selectComplaintPage2(page, query, accountLevel, targetId); |
| | | }else if(accountLevel==2){ |
| | | if (accountLevel == 5) { |
| | | page = baseMapper.selectComplaintPage2(page, query, accountLevel, targetId); |
| | | } else if (accountLevel == 2) { |
| | | // 西区单位 如果是西区单位,则只看自己上报的 |
| | | if(systemUser.getSystemRoleId()==1){ |
| | | if (systemUser.getSystemRoleId() == 1) { |
| | | // 是管理员 看所有的 |
| | | page = baseMapper.selectComplaintPage3(page, query, accountLevel, targetId); |
| | | }else { |
| | | page = baseMapper.selectComplaintPage3(page, query, accountLevel, targetId); |
| | | } else { |
| | | |
| | | // 不是管理员 看到指派给我的单位的诉求 |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | } |
| | | }else if(accountLevel==3){ |
| | | } else if (accountLevel == 3) { |
| | | // 街道 1 |
| | | if(systemUser.getSystemRoleId()==1){ |
| | | if (systemUser.getSystemRoleId() == 1) { |
| | | // 是管理员 可以看到下派来的 也可以看到上派待审核的 |
| | | page = baseMapper.selectComplaintPage5(page, query,systemUser.getStreetId(),null); |
| | | }else { |
| | | page = baseMapper.selectComplaintPage5(page, query, systemUser.getStreetId(), null); |
| | | } else { |
| | | // 不是管理员 看指派给我的 |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | } |
| | | }else if(accountLevel==4){ |
| | | } else if (accountLevel == 4) { |
| | | // 社区 |
| | | if(systemUser.getSystemRoleId()==1){ |
| | | if (systemUser.getSystemRoleId() == 1) { |
| | | // 是管理员 |
| | | page = baseMapper.selectComplaintPage6(page, query,systemUser.getCommunityId(),null); |
| | | }else { |
| | | page = baseMapper.selectComplaintPage6(page, query, systemUser.getCommunityId(), null); |
| | | } else { |
| | | // 不是管理员 看到负责社区的所有诉求 和 上级下派来的诉求 |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | page = baseMapper.selectComplaintPage4(page, query, systemUser.getOneDepartmentId()); |
| | | |
| | | } |
| | | } |
| | | |
| | | 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; |
| | | } |
| | | |
| | |
| | | .last(" limit 0, 1")); |
| | | if (null != one1) { |
| | | //非党员用户,必须是管理员有权限 |
| | | if (identity == 2 && systemUser1.getAccountLevel().compareTo(one1.getReportType()) == 0 && systemUser1.getAccountLevel()!= 5) { |
| | | if (identity == 2 && systemUser1.getAccountLevel().compareTo(one1.getReportType()) == 0 && systemUser1.getAccountLevel() != 5) { |
| | | vo.setListControlsButtonStatus(0); |
| | | } |
| | | /*if (systemUserByPhone.isPresent()) { |
| | |
| | | } |
| | | }*/ |
| | | //当前身份是管理员 |
| | | if (2 == identity && systemUser1.getAccountLevel().compareTo(vo.getReportType()) == 0 && (systemUser1.getAccountLevel()!= 5)) { |
| | | if (2 == identity && systemUser1.getAccountLevel().compareTo(vo.getReportType()) == 0 && (systemUser1.getAccountLevel() != 5)) { |
| | | vo.setListControlsButtonStatus(0); |
| | | } |
| | | //如果当前身份是党员 |
| | |
| | | String targetId = ""; |
| | | Integer accountLevel = 5; |
| | | //获取当前身份,1=党员,2=管理员 |
| | | accountLevel =systemUser1.getAccountLevel(); |
| | | accountLevel = systemUser1.getAccountLevel(); |
| | | switch (accountLevel) { |
| | | case 1: |
| | | //市级 |
| | |
| | | } |
| | | }*/ |
| | | //当前不是党员身份,需要是管理员才有权限 |
| | | if (2 == identity && systemUser1.getAccountLevel().compareTo(vo.getReportType()) == 0 && systemUser1.getAccountLevel()!= 5) { |
| | | if (2 == identity && systemUser1.getAccountLevel().compareTo(vo.getReportType()) == 0 && systemUser1.getAccountLevel() != 5) { |
| | | vo.setEvaluateButtonStatus(0); |
| | | } |
| | | //当前是党员身份,只有是以党员身份提交的数据才有权限 |
| | |
| | | } |
| | | // 更新状态 此时status是表中的状态 未做变动 |
| | | // 如果是区级 |
| | | if(systemUser!=null) { |
| | | 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) { |
| | |
| | | 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) { |
| | |
| | | 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) { |
| | |
| | | detail.setStatus(0); |
| | | } |
| | | } |
| | | if (detail.getFirstStatus() == 0) { |
| | | detail.setStatus(-2); |
| | | } |
| | | } |
| | | }else { |
| | | if(detail.getFirstStatus()==1){ |
| | | } else { |
| | | if (detail.getFirstStatus() == 1) { |
| | | detail.setStatus(0); |
| | | }else { |
| | | } else { |
| | | detail.setStatus(-2); |
| | | } |
| | | } |
| | |
| | | |
| | | //已办结,显示评价按钮 |
| | | 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 (detail.getStatus() == 3 && 0 == count) { |
| | | if (systemUserByPhone.isPresent()) { |
| | | if (accountLevel.compareTo(detail.getNowLevel()) == 0) { |
| | | detail.setEvaluateButtonStatus(0); |
| | | } |
| | | }else{ |
| | | if(detail.getReportType() == 5){ |
| | | } else { |
| | | if (detail.getCreateBy().equals(loginUserInfoVO.getUserId())) { |
| | | detail.setEvaluateButtonStatus(0); |
| | | } |
| | | } |
| | |
| | | Long reporterId = null; |
| | | String departmentName = ""; |
| | | String reporter = ""; |
| | | int nowLevel=0; |
| | | int nowLevel = 0; |
| | | if (identityInformationVO.getIdentity() == 1) { |
| | | PartyMember partyMember = partyMemberService.getPartyMemberByPhone(phone); |
| | | superiorId = Long.valueOf(partyMember.getStreetId()); |
| | | lastSuperiorId= partyMember.getCommunityId(); |
| | | lastSuperiorId = partyMember.getCommunityId(); |
| | | |
| | | reporterId = partyMember.getId(); |
| | | reportType = 4; |
| | |
| | | if (accountLevel == ReportTypeEnum.COMMUNITY.getCode()) { |
| | | superiorId = Long.parseLong(adminUser.getStreetId()); |
| | | |
| | | lastSuperiorId = adminUser.getCommunityId(); |
| | | lastSuperiorId = adminUser.getCommunityId(); |
| | | |
| | | reporterId = adminUser.getCommunityId(); |
| | | nowLevel = 3; |
| | |
| | | complaint.setSuperiorId(superiorId); |
| | | complaint.setLastSuperiorId(lastSuperiorId); |
| | | complaint.setNowLevel(nowLevel); |
| | | complaint.setLastLevel(nowLevel+1); |
| | | complaint.setLastLevel(nowLevel + 1); |
| | | complaint.setAssignStatus(0); |
| | | updateById(complaint); |
| | | |
| | |
| | | .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)) { |
| | | // 复制上一条记录 |
| | |
| | | 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 |
| | |
| | | complaintAuditRecord.setComplaintId(complaint.getId()); |
| | | complaintAuditRecord.setReportType(systemUser.getAccountLevel()); |
| | | Long superiorId = null; |
| | | int nowLevel=0; |
| | | int nowLevel = 0; |
| | | |
| | | switch (systemUser.getAccountLevel()) { |
| | | case 1: |
| | |
| | | break; |
| | | case 2: |
| | | superiorId = Long.parseLong(systemUser.getStreetId()); |
| | | nowLevel=3; |
| | | nowLevel = 3; |
| | | break; |
| | | case 3: |
| | | superiorId = systemUser.getCommunityId(); |
| | | nowLevel=4; |
| | | nowLevel = 4; |
| | | break; |
| | | case 4: |
| | | superiorId = systemUser.getCommunityId(); |
| | | nowLevel=4; |
| | | nowLevel = 4; |
| | | break; |
| | | } |
| | | complaint.setSuperiorId(superiorId); |
| | | complaint.setLastSuperiorId(superiorId); |
| | | complaint.setAssignStatus(0); |
| | | complaint.setNowLevel(nowLevel); |
| | | complaint.setLastLevel( nowLevel); |
| | | complaint.setLastLevel(nowLevel); |
| | | this.updateById(complaint); |
| | | |
| | | complaintAuditRecord.setSuperiorId(superiorId); |
| | |
| | | complaintAuditRecord.setAuditTime(new Date()); |
| | | |
| | | |
| | | if(systemUser.getSystemRoleId()!=1 || systemUser.getAccountLevel()!=complaintAuditRecord.getReporterLevel()){ |
| | | throw new ServiceException("无权审核"); |
| | | if (systemUser.getSystemRoleId() != 1 || systemUser.getAccountLevel() != complaintAuditRecord.getReporterLevel()) { |
| | | throw new ServiceException("无权审核"); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | if (complaintReporAuditDTO.getAuditResult().equals(1)) { |
| | |
| | | Complaint complaint = this.getById(complaintReporAuditDTO.getId()); |
| | | complaint.setAssignPersonId(complaintReporAuditDTO.getDeptId()); |
| | | complaint.setAssignStatus(1); |
| | | complaint.setLastSuperiorId(complaint.getSuperiorId()); |
| | | complaint.setLastLevel(complaint.getNowLevel()); |
| | | complaint.setLastSuperiorId(complaint.getSuperiorId()); |
| | | complaint.setLastLevel(complaint.getNowLevel()); |
| | | complaint.setRemark(complaintReporAuditDTO.getRemark()); |
| | | this.updateById(complaint); |
| | | |
| | | |
| | |
| | | int reportType; |
| | | String departmentName = ""; |
| | | String reporter = ""; |
| | | int nowLevel=4; |
| | | int nowLevel = 4; |
| | | if (identityInformation.getIdentity() == 1) { |
| | | PartyMember partyMember = partyMemberService.getPartyMemberByPhone(loginUserInfoVO.getPhone()); |
| | | superiorId = partyMember.getCommunityId(); |
| | |
| | | superiorId = Long.parseLong(systemUser.getStreetId()); |
| | | } else if (accountLevel == ReportTypeEnum.STREET.getCode()) { |
| | | superiorId = Long.parseLong(systemUser.getDistrictsCode()); |
| | | nowLevel =4; |
| | | nowLevel = 4; |
| | | } else if (accountLevel == ReportTypeEnum.DISTRICT.getCode()) { |
| | | superiorId = Long.valueOf(systemUser.getDistrictsCode()); |
| | | nowLevel =3;// 攀枝花市 |
| | | nowLevel = 3;// 攀枝花市 |
| | | } else { |
| | | // 处理未预期的账号等级 |
| | | throw new ServiceException("未知的账号等级"); |
| | |
| | | |
| | | Complaint byId = this.getById(dto.getComplaintId()); |
| | | byId.setSuperiorId(superiorId); |
| | | byId.setNowLevel( nowLevel); |
| | | this.updateById(byId); |
| | | byId.setNowLevel(nowLevel); |
| | | this.updateById(byId); |
| | | |
| | | |
| | | } |
| | |
| | | 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 { |
| | |
| | | } 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; |
| | | } |
| | |
| | | double lastMonthAverageTime = lastMonthAverageTimeComplaints.stream().mapToDouble(v -> v.getHandlingDay() == null ? 0 : v.getHandlingDay()).average().getAsDouble(); |
| | | BigDecimal lastMonthAverageTime1 = BigDecimal.valueOf(lastMonthAverageTime).setScale(2, RoundingMode.HALF_UP); |
| | | |
| | | vo.setLastMonthCompareAverageTime( new BigDecimal(vo.getThisMonthAverageTime()).subtract(lastMonthAverageTime1).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | }else { |
| | | vo.setLastMonthCompareAverageTime( new BigDecimal(vo.getThisMonthAverageTime()).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setLastMonthCompareAverageTime(new BigDecimal(vo.getThisMonthAverageTime()).subtract(lastMonthAverageTime1).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | } else { |
| | | vo.setLastMonthCompareAverageTime(new BigDecimal(vo.getThisMonthAverageTime()).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | |
| | | } |
| | | |
| | |
| | | if (lastMonthSize > 0) { |
| | | BigDecimal multiply2 = BigDecimal.valueOf(count2).divide(new BigDecimal(lastMonthSize), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")); |
| | | vo.setLastMonthCompareSatisfactionRate(vo.getThisMonthSatisfactionRate() - multiply2.doubleValue()); |
| | | }else { |
| | | } else { |
| | | vo.setLastMonthCompareSatisfactionRate(vo.getThisMonthSatisfactionRate()); |
| | | } |
| | | } |
| | |
| | | long count3 = complaints.stream().filter(e -> e.getCommentRate() != null && e.getCommentRate() == 3).count(); |
| | | vo.setGreatSatisfactionNum((int) count3); |
| | | if (complaints.size() > 0) { |
| | | vo.setDissatisfactionRate(BigDecimal.valueOf(count).divide(BigDecimal.valueOf(complaints.size()),4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setGeneralSatisfactionRate(BigDecimal.valueOf(count1).divide(BigDecimal.valueOf(complaints.size()),4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setSatisfactionRate(BigDecimal.valueOf(count2).divide(BigDecimal.valueOf(complaints.size()),4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setGreatSatisfactionRate(BigDecimal.valueOf(count3).divide(BigDecimal.valueOf(complaints.size()),4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2,RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setDissatisfactionRate(BigDecimal.valueOf(count).divide(BigDecimal.valueOf(complaints.size()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setGeneralSatisfactionRate(BigDecimal.valueOf(count1).divide(BigDecimal.valueOf(complaints.size()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setSatisfactionRate(BigDecimal.valueOf(count2).divide(BigDecimal.valueOf(complaints.size()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | vo.setGreatSatisfactionRate(BigDecimal.valueOf(count3).divide(BigDecimal.valueOf(complaints.size()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP).doubleValue()); |
| | | } |
| | | return vo; |
| | | } |
| | |
| | | |
| | | |
| | | @Override |
| | | public Page<SysUserVO> getDeptUserList(LoginUserInfoVO loginUserInfo,BasePage page) { |
| | | public Page<SysUserVO> getDeptUserList(LoginUserInfoVO loginUserInfo, BasePage page) { |
| | | IdentityInformation currentIdentityInformation = identityInformationService.getCurrentIdentityInformation(loginUserInfo); |
| | | if (currentIdentityInformation.getIdentity().equals(2)) { |
| | | SystemUser systemUser = currentIdentityInformation.getSystemUser(); |
| | | if(systemUser.getSystemRoleId()!=1){ |
| | | if (systemUser.getSystemRoleId() != 1) { |
| | | throw new ServiceException("你没有分配权限"); |
| | | } |
| | | |
| | | Page<SysUserVO> sysUserVOPage = new Page<>(); |
| | | ArrayList<SysUserVO> sysUserVOS = new ArrayList<>(); |
| | | |
| | | Page<SystemUser> page1 = systemUserService.page(new Page<>(page.getPageNum(), page.getPageSize()), new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, systemUser.getOneDepartmentId()).ne(SystemUser::getId,systemUser.getId()).ne(SystemUser::getStatus, 3)); |
| | | Page<SystemUser> page1 = systemUserService.page(new Page<>(page.getPageNum(), page.getPageSize()), new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, systemUser.getOneDepartmentId()).ne(SystemUser::getId, systemUser.getId()).ne(SystemUser::getStatus, 3)); |
| | | for (SystemUser record : page1.getRecords()) { |
| | | SysUserVO sysUserVO = new SysUserVO(); |
| | | sysUserVO.setId(record.getId()); |
| | |
| | | sysUserVOS.add(sysUserVO); |
| | | } |
| | | sysUserVOPage.setRecords(sysUserVOS); |
| | | BeanUtils.copyProperties(page1,sysUserVOPage); |
| | | BeanUtils.copyProperties(page1, sysUserVOPage); |
| | | return sysUserVOPage; |
| | | }else { |
| | | } else { |
| | | throw new ServiceException("你没有分配权限"); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public void assignComplain(LoginUserInfoVO loginUserInfo, Long complainId, Integer userId,String remark) { |
| | | 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); |
| | | complaint.setAssignStatus(1); |
| | | complaint.setRemark(remark); |
| | | baseMapper.updateById(complaint); |
| | | }else { |
| | | } else { |
| | | throw new ServiceException("你没有分配权限"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | |