huanghongfa
2021-07-16 db31c68b10e3a58bce17e3bbf880db05b6f341fe
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventGridMemberRelationServiceImpl.java
@@ -4,9 +4,13 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.grid.*;
import com.panzhihua.common.model.dtos.grid.admin.EventGridMemberCascadeAddDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.grid.EventGridMemberRelationDetailsVO;
import com.panzhihua.common.model.vos.grid.EventGridMemberRelationVO;
import com.panzhihua.common.model.vos.grid.EventMapGridCascadeVO;
import com.panzhihua.common.model.vos.grid.EventMapGridVO;
import com.panzhihua.common.model.vos.grid.admin.GridMemberCascadeVO;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.service_grid.dao.*;
import com.panzhihua.service_grid.model.dos.*;
@@ -16,7 +20,9 @@
import org.springframework.beans.BeanUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * @auther lyq
@@ -116,4 +122,65 @@
        return R.ok(this.baseMapper.getMapGridListByApp(userId));
    }
    /**
     * 查询市平台网格员列表
     * @return  市平台网格员列表
     */
    @Override
    public R lcList(){
        return R.ok(this.baseMapper.getGridMemberLcList());
    }
    @Override
    public R gridMemberCascadeList(EventGridMemberCascadeAddDTO memberCascadeAddDTO){
        if(memberCascadeAddDTO.getType() == null){
            return R.fail("参数错误");
        }
        List<GridMemberCascadeVO> memberCascadeList = this.baseMapper.getGridMemberCascade(memberCascadeAddDTO.getType(),memberCascadeAddDTO.getSuperiorId());
        List<GridMemberCascadeVO> result = new ArrayList<>();
        if(!memberCascadeList.isEmpty()){
            memberCascadeList.forEach(cascade -> {
                if(memberCascadeAddDTO.getType().equals(1)){//过滤无小区的社区
                    Integer count = this.baseMapper.getVillageCount(cascade.getId());
                    if(count > 0){
                        result.add(cascade);
                    }
                }else if(memberCascadeAddDTO.getType().equals(2)){//过滤无楼栋的小区
                    Integer count = this.baseMapper.getBuildingCount(cascade.getId());
                    if(count > 0){
                        result.add(cascade);
                    }
                }else{
                    if(!cascade.getName().contains("栋")){
                        cascade.setName(cascade.getName() + "栋");
                    }
                    result.add(cascade);
                }
            });
        }
        return R.ok(result);
    }
    @Override
    public R getMapGridListsByApp(EventGridCascadeListDTO cascadeListDTO){
        return R.ok(eventGridMemberRelationMapper.getMapGridListsByApp(cascadeListDTO));
    }
    @Override
    public R getMapGridsListsByApp(Long userId){
        List<EventMapGridCascadeVO> resultList = new ArrayList<>();
        List<EventMapGridCascadeVO> list = this.eventGridMemberRelationMapper.getMapGridsListsByApp(userId,1,null);
        if(!list.isEmpty()){
            list.forEach(gridCascadeVO -> {
                List<EventMapGridCascadeVO> childList = this.eventGridMemberRelationMapper.getMapGridsListsByApp(userId,2,gridCascadeVO.getGridId());
                if(!childList.isEmpty()){
                    gridCascadeVO.setChildList(childList);
                    resultList.add(gridCascadeVO);
                }
            });
        }
        return R.ok(resultList);
    }
}