|  | @@ -2,10 +2,13 @@ package com.usky.fire.service.impl;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 | 
	
		
			
				|  |  | +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 | 
	
		
			
				|  |  |  import com.usky.common.mybatis.core.AbstractCrudService;
 | 
	
		
			
				|  |  | +import com.usky.fire.domain.BaseBuild;
 | 
	
		
			
				|  |  |  import com.usky.fire.domain.BaseDevice;
 | 
	
		
			
				|  |  |  import com.usky.fire.domain.BaseDeviceStatus;
 | 
	
		
			
				|  |  | +import com.usky.fire.mapper.BaseBuildMapper;
 | 
	
		
			
				|  |  |  import com.usky.fire.mapper.BaseDeviceMapper;
 | 
	
		
			
				|  |  |  import com.usky.fire.mapper.BaseDeviceStatusMapper;
 | 
	
		
			
				|  |  |  import com.usky.fire.service.BaseDeviceService;
 | 
	
	
		
			
				|  | @@ -32,6 +35,9 @@ public class BaseDeviceServiceImpl extends AbstractCrudService<BaseDeviceMapper,
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private BaseDeviceStatusMapper baseDeviceStatusMapper;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private BaseBuildMapper baseBuildMapper;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public List<BaseDevice> deviceData(String deviceCode) {
 | 
	
		
			
				|  |  |          LambdaQueryWrapper<BaseDevice> queryWrapper = Wrappers.lambdaQuery();
 | 
	
	
		
			
				|  | @@ -58,11 +64,13 @@ public class BaseDeviceServiceImpl extends AbstractCrudService<BaseDeviceMapper,
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          BaseDeviceVO baseDeviceVO = new BaseDeviceVO();
 | 
	
		
			
				|  |  |          LambdaQueryWrapper<BaseDevice> queryWrapper = Wrappers.lambdaQuery();
 | 
	
		
			
				|  |  | +        queryWrapper.eq(BaseDevice::getEnable,1);
 | 
	
		
			
				|  |  |          Integer totalCount = this.count(queryWrapper);
 | 
	
		
			
				|  |  |          baseDeviceVO.setDeviceCount(totalCount);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          QueryWrapper<BaseDevice> queryWrapper1 = Wrappers.query();
 | 
	
		
			
				|  |  |          queryWrapper1.select("device_type as deviceTypeCode","device_name as deviceTypeName","count(*) as deviceCount")
 | 
	
		
			
				|  |  | +                .eq("enable",1)
 | 
	
		
			
				|  |  |                  .groupBy("device_type");
 | 
	
		
			
				|  |  |          List<Map<String,Object>> map = this.listMaps(queryWrapper1);
 | 
	
		
			
				|  |  |          if(map.size() > 0){
 | 
	
	
		
			
				|  | @@ -99,4 +107,29 @@ public class BaseDeviceServiceImpl extends AbstractCrudService<BaseDeviceMapper,
 | 
	
		
			
				|  |  |          return baseDeviceVO;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public List<BaseBuild> deviceTypeScatter(Integer deviceTypeCode){
 | 
	
		
			
				|  |  | +        List<BaseBuild> list = new ArrayList<>();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        LambdaQueryWrapper<BaseDevice> queryWrapper = Wrappers.lambdaQuery();
 | 
	
		
			
				|  |  | +        queryWrapper.select(BaseDevice::getCompanyId)
 | 
	
		
			
				|  |  | +                .eq(BaseDevice::getEnable,1)
 | 
	
		
			
				|  |  | +            .eq(BaseDevice::getDeviceType,deviceTypeCode);
 | 
	
		
			
				|  |  | +        List<BaseDevice> deviceList = this.list(queryWrapper);
 | 
	
		
			
				|  |  | +        if(CollectionUtils.isNotEmpty(deviceList)){
 | 
	
		
			
				|  |  | +            List<String> buildNumList = new ArrayList<>();
 | 
	
		
			
				|  |  | +            for (int i = 0; i < deviceList.size(); i++) {
 | 
	
		
			
				|  |  | +                buildNumList.add(deviceList.get(i).getCompanyId());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if(buildNumList.size() > 0){
 | 
	
		
			
				|  |  | +                LambdaQueryWrapper<BaseBuild> queryWrapper1 = Wrappers.lambdaQuery();
 | 
	
		
			
				|  |  | +                queryWrapper1.in(BaseBuild::getBuildNum,buildNumList)
 | 
	
		
			
				|  |  | +                        .eq(BaseBuild::getDeleteFlag,0);
 | 
	
		
			
				|  |  | +                list = baseBuildMapper.selectList(queryWrapper1);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        return list;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  }
 |