yanghui
2022-10-19 e94a80ae3d9733eb2d6a5d9bcbd50a624f058caa
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java
@@ -6,11 +6,13 @@
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;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.community.sanshuo.ComSanshuoExpertDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.sanshuo.ComSanshuoExpertVO;
import com.panzhihua.common.model.vos.sanshuo.ExpertRangeVO;
import com.panzhihua.common.model.vos.sanshuo.ExpertShowVO;
import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
@@ -148,7 +150,7 @@
     * @return 处理结果
     * */
    @Override
    public R expertPage(String keyWord, Integer page, Integer size, LoginUserInfoVO loginUserInfo) {
    public R expertPage(String keyWord, Integer page, Integer size, LoginUserInfoVO loginUserInfo,Integer level) {
        //range:1.三说会堂下属,2业务中心下属,3街道下属,4社区下属
        //id:社区或街道或业务中心id
        //账号级别
@@ -170,11 +172,23 @@
                }
            }
        }
        if (loginUserInfo.getAccount().equals("admin") || loginUserInfo.getAccount().equals("xiqu")){
        if (loginUserInfo.getAccount().equals("admin") && isNull(level)){
            id=null;
            range=null;
            range=1;
        }
        return R.ok(comSanshuoExpertDao.expertPage(new Page(page,size),keyWord,range,id));
        IPage<ComSanshuoExpertVO> comSanshuoExpertVOIPage = comSanshuoExpertDao.expertPage(new Page(page, size), keyWord, range, id, level);
        for (ComSanshuoExpertVO record : comSanshuoExpertVOIPage.getRecords()) {
            //获取调解次数和成功率
            record.setCount(comEventMapper.selectCount(new QueryWrapper<ComEvent>().lambda().eq(ComEvent::getSpecialistId, record.getId())));
            record.setSuccessCount(comEventMapper.selectCount(new QueryWrapper<ComEvent>().lambda().eq(ComEvent::getSpecialistId, record.getId()).eq(ComEvent::getEventResult,2 )));
            if (nonNull(record.getCount()) && nonNull(record.getSuccessCount())){
                if (!record.getCount().equals(0) && !record.getSuccessCount().equals(0)){
                    record.setRate(NumberUtil.div(record.getSuccessCount(), record.getCount(),2));
                }
            }
        }
        return R.ok(comSanshuoExpertVOIPage);
    }
    /**