From eef6d2bcdb29348efe4ef17bc45a4c6886b487b1 Mon Sep 17 00:00:00 2001 From: lidongdong <1459917685@qq.com> Date: 星期四, 11 七月 2024 18:16:26 +0800 Subject: [PATCH] 花城 【小程序】统计排行添加是否是问题清单标识5 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java | 216 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 137 insertions(+), 79 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java index 9cf8a12..3d6ee67 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java @@ -94,10 +94,11 @@ @Override public R pageByComEvent(ComEvent comEvent, Page pagination,LoginUserInfoVO loginUserInfoVO) { + log.info("当前登录信息"+loginUserInfoVO); Boolean isExpertCheck=false; Long expertId=null; Boolean isStretAccount = isStreetAccount(loginUserInfoVO); -// comEvent.setAppId(loginUserInfoVO.getAppId()); + comEvent.setAppId(loginUserInfoVO.getAppId()); if (nonNull(comEvent.getUserType())){ if (comEvent.getUserType().equals(1)){ //个人账号权限 @@ -145,13 +146,18 @@ IPage<ComEvent> list=null; //是否为专家查看自己发布的事件 if (isExpertCheck && comEvent.getUserType()!=1){ - if (nonNull(comEventMapper.listEventIds(expertId))){ - list = comEventMapper.pageByComEventExpert(comEventMapper.listEventIds(expertId), comEvent, pagination); + List<Long> ids=comEventMapper.listEventIds(expertId); + if (ids!=null && ids.size()>0 ){ + list = comEventMapper.pageByComEventExpert(ids, comEvent, pagination); + } + else + { + list = comEventMapper.pageByComEventExpert(null, comEvent, pagination); } }else{ list = baseMapper.pageByComEvent(comEvent, pagination); } - if (list.getRecords().size() < 1) { + if (list==null || list.getRecords().size() < 1) { return R.ok(Collections.emptyList()); } list.getRecords().forEach(comEvent1 -> { @@ -508,55 +514,8 @@ }else if (isAdmin){ //区三说会堂账号,最高权限全部开放 // 是否上报到三说会堂 - if (comEvent.getCurrentProcessType().equals(4) || comEvent.getReportHall().equals(1)){ - //已上报到三说会堂,可以操作 - if (comEvent.getEventProcessStatus().equals(1)){ - //待受理和待验证状态,可以受理,分配专家 - //关闭调解和归档 - comEvent.setArchive(0); - comEvent.setSolve(0); - comEvent.setConciliation(0); - comEvent.setChangeExpert(0); - } - else if(comEvent.getEventProcessStatus().equals(2)){ - //待分配和待验证状态,可以受理,分配专家 - //关闭调解和归档 - comEvent.setArchive(0); - comEvent.setConciliation(0); - comEvent.setChangeExpert(0); - if (comEvent.getSpecialistName().equals("待分配")){ - comEvent.setSolve(0); - } - }else if (comEvent.getEventProcessStatus().equals(3)){ - //新分配给专家并且专家还未受理 - comEvent.setDistribution(0); - comEvent.setArchive(0); - //comEvent.setConciliation(0); - comEvent.setChangeExpert(0); - comEvent.setSolve(0); - } - else if (comEvent.getEventProcessStatus().equals(5)){ - //调解中,可以查看,调解,更换专家,删除 - comEvent.setDistribution(0); - comEvent.setSolve(0); - comEvent.setArchive(0); - } else if (comEvent.getEventProcessStatus().equals(6) && comEvent.getEventResult().equals(1) && !comEvent.getIsEnd().equals(1)){ - //失败后转交三说会堂 - comEvent.setSolve(0); - comEvent.setDistribution(0); - //comEvent.setConciliation(0); - comEvent.setEventProcessStatus(2); - comEvent.setArchive(0); - //comEvent.setChangeExpert(0); - } - else if (comEvent.getEventProcessStatus().equals(6) && comEvent.getEventSucceed().equals(2)){ - //调解完成,可以归档,查看 - comEvent.setConciliation(0); - comEvent.setSolve(0); - comEvent.setDistribution(0); - comEvent.setChangeExpert(0); - } - }else{ + if(comEvent.getCurrentProcessType()==null) + { //未上报到三说会堂,仅查看 comEvent.setArchive(0); comEvent.setSolve(0); @@ -564,6 +523,66 @@ comEvent.setChangeExpert(0); comEvent.setConciliation(0); } + else + { + if (comEvent.getCurrentProcessType().equals(4) || comEvent.getReportHall().equals(1)){ + //已上报到三说会堂,可以操作 + if (comEvent.getEventProcessStatus().equals(1)){ + //待受理和待验证状态,可以受理,分配专家 + //关闭调解和归档 + comEvent.setArchive(0); + comEvent.setSolve(0); + comEvent.setConciliation(0); + comEvent.setChangeExpert(0); + } + else if(comEvent.getEventProcessStatus().equals(2)){ + //待分配和待验证状态,可以受理,分配专家 + //关闭调解和归档 + comEvent.setArchive(0); + comEvent.setConciliation(0); + comEvent.setChangeExpert(0); + if (comEvent.getSpecialistName().equals("待分配")){ + comEvent.setSolve(0); + } + }else if (comEvent.getEventProcessStatus().equals(3)){ + //新分配给专家并且专家还未受理 + comEvent.setDistribution(0); + comEvent.setArchive(0); + //comEvent.setConciliation(0); + comEvent.setChangeExpert(0); + comEvent.setSolve(0); + } + else if (comEvent.getEventProcessStatus().equals(5)){ + //调解中,可以查看,调解,更换专家,删除 + comEvent.setDistribution(0); + comEvent.setSolve(0); + comEvent.setArchive(0); + } else if (comEvent.getEventProcessStatus().equals(6) && comEvent.getEventResult().equals(1) && !comEvent.getIsEnd().equals(1)){ + //失败后转交三说会堂 + comEvent.setSolve(0); + comEvent.setDistribution(0); + //comEvent.setConciliation(0); + comEvent.setEventProcessStatus(2); + comEvent.setArchive(0); + //comEvent.setChangeExpert(0); + } + else if (comEvent.getEventProcessStatus().equals(6) && comEvent.getEventSucceed().equals(2)){ + //调解完成,可以归档,查看 + comEvent.setConciliation(0); + comEvent.setSolve(0); + comEvent.setDistribution(0); + comEvent.setChangeExpert(0); + } + }else{ + //未上报到三说会堂,仅查看 + comEvent.setArchive(0); + comEvent.setSolve(0); + comEvent.setDistribution(0); + comEvent.setChangeExpert(0); + comEvent.setConciliation(0); + } + } + } } @@ -573,20 +592,26 @@ public Integer hasPermission(ComEvent comEvent,LoginUserInfoVO sysUser){ String account=""; Integer perm=1; + + if(comEvent==null || sysUser == null ) + { + return perm; + } + if (nonNull(sysUser.getAccount())){ account=sysUser.getAccount(); } //上报级别是否匹配当前账号级别 if (sysUser.getType().equals(12) ){ - if (!comEvent.getCurrentProcessType().equals(1)){ + if (comEvent.getCurrentProcessType()!=null && !comEvent.getCurrentProcessType().equals(1)){ perm=0; } - }else if (account.equals("admin")){ - if (!comEvent.getCurrentProcessType().equals(4)){ + }else if (StringUtils.equals("admin",account)){ + if ( comEvent.getCurrentProcessType()!=null && comEvent.getCurrentProcessType()!=4){ perm=0; } }else if (isStreetAccount(sysUser)){ - if (!comEvent.getCurrentProcessType().equals(3)){ + if (comEvent.getCurrentProcessType()!=null && comEvent.getCurrentProcessType()!=3){ perm=0; } } @@ -920,19 +945,39 @@ return map; } - public String getPhone(ComEvent comEvent){ + public String getPhone(ComEvent comEvent) + { + if(comEvent==null) + { + return ""; + } if (isNull(comEvent.getRequestUserCommunity())){ - return comSanShuoIndustryCenterService.getById(comEvent.getCenterId()).getPhone(); - }else { - String contactsPhone = comActDAO.selectById(comEvent.getRequestUserCommunity()).getContactsPhone(); - if (isNull(contactsPhone)){ - return null; + ComSanshuoIndustryCenter sanshuoIndustryCenter=comSanShuoIndustryCenterService.getById(comEvent.getCenterId()); + if(sanshuoIndustryCenter==null) + { + return ""; } - return contactsPhone; + else + { + return sanshuoIndustryCenter.getPhone(); + } + + }else { + ComActDO comActDO=comActDAO.selectById(comEvent.getRequestUserCommunity()); + if(comActDO!=null) + { + String contactsPhone = comActDO.getContactsPhone(); + if (isNull(contactsPhone)){ + return ""; + } + else + { + return contactsPhone; + } + } + return ""; } } - - @Override @Transactional(rollbackFor = Exception.class) @@ -967,7 +1012,7 @@ } @Override - public R calculate(LoginUserInfoVO loginUserInfoVO) { + public R calculate(LoginUserInfoVO loginUserInfoVO,Integer level,Long id) { ComEvent comEvent=new ComEvent(); Boolean isExpertCheck=false; Long expertId=null; @@ -986,7 +1031,12 @@ comEvent.setSpecialistId(expert.getId()); isExpertCheck=true; expertId=expert.getId(); +// level=expert.getLevel(); +// id=expert.getCommunityId(); + comEvent.setCommunityId(expert.getCommunityId()); } + + }else if (loginUserInfoVO.getType().equals(12)){ //行业分中心权限 comEvent.setUserType(3); @@ -1005,10 +1055,11 @@ List<Long> cids = comActDAO.selectCommunityByStreetId(loginUserInfoVO.getStreetId()); comEvent.setUserType(5); comEvent.setCommunityIds(cids); - } + } if (isExpertCheck){ - if(nonNull(comEventMapper.listEventIds(expertId))){ - List<Long> eventIds = comEventMapper.listEventIds(expertId); + List<Long> eventIds = comEventMapper.listEventIds(expertId); + if(eventIds!=null && eventIds.size()>0){ + //获取该专家的所有事件 comEvent.setEventIds(eventIds); } @@ -1020,10 +1071,16 @@ } log.info("当前userType===="+comEvent.getUserType()); //comEvent.setAppId(loginUserInfoVO.getAppId()); - R<LoginUserInfoVO> r = userService.detailUser(loginUserInfoVO.getUserId()); - LoginUserInfoVO user = r.getData(); +// R<LoginUserInfoVO> r = userService.detailUser(loginUserInfoVO.getUserId()); +// LoginUserInfoVO user = r.getData(); + LoginUserInfoVO user = loginUserInfoVO; if (nonNull(user.getAppId())){ comEvent.setAppId(user.getAppId()); + } + if (nonNull(level) && nonNull(id)){ + comEvent.setLevel(level); + comEvent.setSearchId(id); + comEvent.setUserType(null); } List<ComEventCalculateVO> calculateList = baseMapper.calculate(comEvent); ComEventCalculateVO comEventCalculateVO =new ComEventCalculateVO(); @@ -1106,6 +1163,7 @@ return R.ok(vo); } + @Override public R eventIndexData(Integer type) { //获取事件总数 @@ -1119,13 +1177,13 @@ Integer centerCount=comEventMapper.expertSolveCountCenter(); for (EventRateVO eventRateVO : eventRateVOS) { if (nonNull(eventRateVO)){ - eventRateVO.setName(typeToName(eventRateVO.getCurrentProcessType())); - if (eventRateVO.getCurrentProcessType().equals(2)){ - eventRateVO.setCount(eventRateVO.getCount()+expertCount); - } - if (eventRateVO.getCurrentProcessType().equals(1)){ - eventRateVO.setCount(eventRateVO.getCount()+centerCount); - } + eventRateVO.setName(typeToName(eventRateVO.getType())); +// if (eventRateVO.getCurrentProcessType().equals(2)){ +// eventRateVO.setCount(eventRateVO.getCount()+expertCount); +// } +// if (eventRateVO.getCurrentProcessType().equals(1)){ +// eventRateVO.setCount(eventRateVO.getCount()+centerCount); +// } if (nonNull(eventCount) && !eventCount.equals(0)){ //计算占比 eventRateVO.setRate(NumberUtil.div(eventRateVO.getCount(),eventCount,2)); -- Gitblit v1.7.1