lidongdong
2023-09-04 b2fce0dc7dc4ea5dec9792a2bc3ceb9d33d6e07b
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java
@@ -2,8 +2,6 @@
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.digest.MD5;
import cn.hutool.extra.pinyin.PinyinUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -18,19 +16,14 @@
import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.common.utlis.Snowflake;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.api.ComSanShuoExpertApi;
import com.panzhihua.service_community.dao.*;
import com.panzhihua.service_community.entity.ComEvent;
import com.panzhihua.service_community.entity.ComSanshuoEvent;
import com.panzhihua.service_community.entity.ComSanshuoExpert;
import com.panzhihua.service_community.entity.ComSanshuoIndustryCenter;
import com.panzhihua.service_community.model.dos.ComActDO;
import com.panzhihua.service_community.model.dos.ComSanshuoExpertTwoDO;
import com.panzhihua.service_community.model.dos.ComStreetDO;
import com.panzhihua.service_community.service.ComActService;
import com.panzhihua.service_community.service.ComSanShuoExpertService;
import com.panzhihua.service_community.service.ComStreetService;
import com.panzhihua.service_community.util.MyAESUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -248,7 +241,7 @@
     * */
    @Override
    public R expertRange(LoginUserInfoVO loginUserInfo) {
        if (nonNull(loginUserInfo)){
//        if (loginUserInfo!=null){
            if (loginUserInfo.getAccount().equals("zhengfawei") || loginUserInfo.getAccount().equals("admin")){
                List<ExpertRangeVO> list=new ArrayList<>();
                for (int i = 1; i < 5; i++) {
@@ -266,7 +259,7 @@
                    }else if (i==4){
                        vo.setId(4L);
                        vo.setChildList(comSanshuoIndustryCenterDao.communityList());
                        vo.setName("社区调解站");
                        vo.setName("社区调解室");
                    }else if(i==1){
                        vo.setId(1L);
                        vo.setName("三说会堂");
@@ -297,7 +290,7 @@
                List<ExpertRangeVO> list = new ArrayList<>();
                ExpertRangeVO vo = new ExpertRangeVO();
                vo.setLevel(4);
                vo.setName(comStreetDO.getName() + "调解站");
                vo.setName(comStreetDO.getName() + "调解室");
                vo.setId(loginUserInfo.getCommunityId());
                list.add(vo);
                return R.ok(list);
@@ -312,8 +305,8 @@
                list.add(vo);
                return R.ok(list);
            }
        }
        return R.fail();
//        }
        return R.ok("测试陈宫:"+loginUserInfo.getUserType());
    }
    /**
@@ -351,15 +344,27 @@
    @Override
    public R expertShowList(Integer level, Long id,String appId) {
        QueryWrapper<ComSanshuoExpert> wrapper=new QueryWrapper<>();
        wrapper.eq("level",level);
        wrapper.eq("app_id",appId);
        if (level.equals(2)){
            wrapper.eq("industry_center_id", id);
        }else if (level.equals(3)){
            wrapper.eq("street_id",id );
        }else if (level.equals(4)){
            wrapper.eq("community_id",id );
        if (level==0){
            wrapper.eq("app_id",appId );
        }else {
            if (level!=7){
                wrapper.eq("level",level);
                wrapper.eq("app_id",appId);
                wrapper.eq("status",1 );
                wrapper.eq("del_flag",1 );
                if (level.equals(2)){
                    wrapper.eq("industry_center_id", id);
                }else if (level.equals(3)){
                    wrapper.eq("street_id",id );
                }else if (level.equals(4)){
                    wrapper.eq("community_id",id );
                }
            }else {
                wrapper.eq("id",id );
            }
        }
        wrapper.orderByDesc("(select count(*) FROM com_sanshuo_event_info where specialist_id=com_sanshuo_expert.id and event_process_status=6 and event_result=2)/(select count(*) FROM com_sanshuo_event_info where specialist_id=com_sanshuo_expert.id and event_process_status=6 ) ");
        wrapper.orderByDesc("(select count(*) FROM com_sanshuo_event_info where specialist_id=com_sanshuo_expert.id and event_process_status=6 )");
        List<ComSanshuoExpert> comSanshuoExperts = comSanshuoExpertDao.selectList(wrapper);
        for (ComSanshuoExpert comSanshuoExpert : comSanshuoExperts) {
            //获取成功率
@@ -372,13 +377,33 @@
                        //计算成功率
                        comSanshuoExpert.setRate(NumberUtil.div(successCount, count,2));
                }
                else {
                    comSanshuoExpert.setRate(new BigDecimal(0));
                }
            }else {
                comSanshuoExpert.setRate(new BigDecimal(0));
            }
        }
        return R.ok(comSanshuoExperts);
    }
        ComSanshuoExpertTwoDO comSanshuoExpertTwoVo=new ComSanshuoExpertTwoDO();
        List<ComSanshuoExpert> comSanshuoExpertsOne=new ArrayList<>();
        List<ComSanshuoExpert> comSanshuoExpertsTwo=new ArrayList<>();
        for (ComSanshuoExpert comSanshuoExpert : comSanshuoExperts){
            if (comSanshuoExpert.getId()%2==1){
                comSanshuoExpertsOne.add(comSanshuoExpert);
            }else {
                comSanshuoExpertsTwo.add(comSanshuoExpert);
            }
        }
        if (level==0){
            comSanshuoExpertTwoVo.setComSanshuoExperts(comSanshuoExpertsOne);
            comSanshuoExpertTwoVo.setComSanshuoExpertsTwo(comSanshuoExpertsTwo);
            return R.ok(comSanshuoExpertTwoVo);
        }
        else {
            return R.ok(comSanshuoExperts);
        }
     }
    @Override
    public void insertExpert(ComSanshuoExpert expert) {