fengjin
2022-10-18 6f302d5dcd1d47a9512151d4e31078bc98c62f08
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java
@@ -85,8 +85,6 @@
    @Override
    public R pageByComEvent(ComEvent comEvent, Page pagination,LoginUserInfoVO loginUserInfoVO) {
        log.info("=================当前登陆的用户信息,用户类型"+loginUserInfoVO.getType()+"社区id"+loginUserInfoVO.getCommunityId());
        log.info("=====================当前的userType1:="+comEvent.getUserType());
        Boolean isExpertCheck=false;
        Long expertId=null;
        Boolean isStretAccount = isStreetAccount(loginUserInfoVO);
@@ -130,13 +128,11 @@
            }
        }
        if (nonNull(loginUserInfoVO.getAccount())){
            if (loginUserInfoVO.getAccount().equals("admin") && loginUserInfoVO.getStreetId().equals(Constants.ADMIN_STREET_ID)){
                comEvent.setUserType(null);
            if (loginUserInfoVO.getAccount().equals("admin")){
                comEvent.setUserType(9);
            }
        }
        IPage<ComEvent> list=null;
        log.info("=====================当前的userType2:="+comEvent.getUserType());
        log.info("=====================是否专家账号查看"+isExpertCheck);
        //是否为专家查看自己发布的事件
        if (isExpertCheck && comEvent.getUserType()!=1){
            if (nonNull(comEventMapper.listEventIds(expertId))){
@@ -158,10 +154,8 @@
            ComMediateType category = commediateTypeService.getById(comEvent1.getEventCategory());
            comEvent1.setEventCategoryName(category.getName());
            comEvent1.setHasPerm(hasPermission(comEvent1,loginUserInfoVO ));
            if (!comEvent.getUserType().equals(1)){
                this.accountMenu(comEvent1,comEvent.getUserType(),loginUserInfoVO,isStretAccount);
            }
        });
            this.accountMenu(comEvent1,comEvent.getUserType(),loginUserInfoVO,isStretAccount);
            });
        return R.ok(list);
    }
@@ -187,7 +181,7 @@
    public void accountMenu(ComEvent comEvent,Integer userType,LoginUserInfoVO loginUserInfoVO,Boolean isStreet){
        //四个账号级别
        Boolean isAdmin=false;
        if (isNull(userType)){
        if (userType.equals(9)){
            isAdmin=true;
        }
        comEvent.setDelete(1);
@@ -857,13 +851,12 @@
    @Override
    public R calculate(LoginUserInfoVO loginUserInfoVO) {
        ComEvent comEvent=new ComEvent();
        comEvent.setUserType(3);
        Boolean isExpertCheck=false;
        Long expertId=null;
        Boolean isStretAccount = isStreetAccount(loginUserInfoVO);
        if (loginUserInfoVO.getType().equals(13) || loginUserInfoVO.getType().equals(11)){
                ComSanshuoExpert expert=new ComSanshuoExpert();
                //专家账号权限(后台)
                //专家后台账号
            if (nonNull(loginUserInfoVO.getPhone())){
                    expert = comSanShuoExpertService.getOne(new QueryWrapper<ComSanshuoExpert>().lambda().eq(ComSanshuoExpert::getPhone, loginUserInfoVO.getPhone()));
            }else{
@@ -895,16 +888,16 @@
                comEvent.setUserType(5);
                comEvent.setCommunityIds(cids);
         }
        if (isExpertCheck && comEvent.getUserType()!=1){
            if (nonNull(comEventMapper.listEventIds(expertId))){
        if (isExpertCheck){
            if(nonNull(comEventMapper.listEventIds(expertId))){
                List<Long> eventIds = comEventMapper.listEventIds(expertId);
                //获取该专家的所有事件
                comEvent.setEventIds(eventIds);
            }
        }
        if (nonNull(loginUserInfoVO.getAccount())){
            if (loginUserInfoVO.getAccount().equals("admin")){
                comEvent.setUserType(null);
                comEvent.setUserType(9);
            }
        }
        List<ComEventCalculateVO> calculateList = baseMapper.calculate(comEvent);
@@ -984,13 +977,13 @@
    @Override
    public R eventIndexData(Integer type) {
        //获取事件总数
        Integer eventCount = comEventMapper.selectCount(new QueryWrapper<ComEvent>().notIn("event_process_status", (7), (8)));
        Integer eventCount = comEventMapper.selectCount(new QueryWrapper<ComEvent>().notIn("event_process_status",(9)));
        if (type.equals(1)){
            //受理级别占比
            List<EventRateVO> eventRateVOS = comEventMapper.eventRate();
            for (EventRateVO eventRateVO : eventRateVOS) {
                if (nonNull(eventRateVO)){
                    eventRateVO.setName(typeToName(eventRateVO.getType()));
                    eventRateVO.setName(typeToName(eventRateVO.getCurrentProcessType()));
                    if (nonNull(eventCount) && !eventCount.equals(0)){
                        //计算占比
                        eventRateVO.setRate(NumberUtil.div(eventRateVO.getCount(),eventCount,2));
@@ -1032,16 +1025,28 @@
        comEventMapper.updateLog(id,comEvent.getSpecialistId());
    }
    @Override
    public R listStreetScreen() {
        return R.ok(comStreetDAO.selectList(new QueryWrapper<ComStreetDO>().eq("app_id", "wx0cef797390444b75")));
    }
    @Override
    public R listCommunityScreen() {
        return null;
    }
    public String typeToName(Integer type){
        switch (type){
            case 1:
                return "行业分中心受理";
            case 2:
                return "街道调解站受理";
            case 3:
                return "街道调解站受理";
            case 2:
                return "社区调解站受理";
            case 4:
                return "区三说会堂受理";
            case 5:
                return "专家受理";
        }
        return null;
    }