|  | @ -1,13 +1,24 @@
 | 
	
		
			
				|  |  | package com.yihu.iot.service.device;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.yihu.base.es.config.ElastricSearchHelper;
 | 
	
		
			
				|  |  | import com.yihu.base.mysql.query.BaseJpaService;
 | 
	
		
			
				|  |  | import com.yihu.iot.dao.device.IotPatientDeviceDao;
 | 
	
		
			
				|  |  | import com.yihu.iot.datainput.util.ConstantUtils;
 | 
	
		
			
				|  |  | import com.yihu.jw.iot.device.IotPatientDeviceDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.iot.device.LocationDataDO;
 | 
	
		
			
				|  |  | import com.yihu.jw.restmodel.iot.device.IotPatientDeviceVO;
 | 
	
		
			
				|  |  | import com.yihu.jw.util.common.LatitudeUtils;
 | 
	
		
			
				|  |  | import org.slf4j.Logger;
 | 
	
		
			
				|  |  | import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.data.domain.Pageable;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | import org.springframework.util.StringUtils;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.Date;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | import java.util.Map;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | /**
 | 
	
		
			
				|  |  |  * @author yeshijie on 2018/1/16.
 | 
	
	
		
			
				|  | @ -15,8 +26,11 @@ import java.util.List;
 | 
	
		
			
				|  |  | @Service
 | 
	
		
			
				|  |  | public class IotPatientDeviceService extends BaseJpaService<IotPatientDeviceDO,IotPatientDeviceDao> {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     private Logger logger = LoggerFactory.getLogger(IotPatientDeviceService.class);
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private IotPatientDeviceDao iotPatientDeviceDao;
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private ElastricSearchHelper elastricSearchHelper;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 新增
 | 
	
	
		
			
				|  | @ -30,6 +44,36 @@ public class IotPatientDeviceService extends BaseJpaService<IotPatientDeviceDO,I
 | 
	
		
			
				|  |  |         return iotPatientDeviceDao.save(patientDevice);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 设备绑定时 把坐标信息存入es
 | 
	
		
			
				|  |  |      * @param deviceVO
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public void deviceData2Es(IotPatientDeviceVO deviceVO) {
 | 
	
		
			
				|  |  |         try {
 | 
	
		
			
				|  |  |             if (StringUtils.isEmpty(deviceVO.getAddress())) {
 | 
	
		
			
				|  |  |                 return;
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | //            List<LocationDataDO> dataDTOs = new ArrayList<>();
 | 
	
		
			
				|  |  |             LocationDataDO dataDTO = new LocationDataDO();
 | 
	
		
			
				|  |  |             dataDTO.setCreateTime(new Date());
 | 
	
		
			
				|  |  |             dataDTO.setDeviceTime(new Date());
 | 
	
		
			
				|  |  |             dataDTO.setCategoryCode(deviceVO.getCategoryCode());
 | 
	
		
			
				|  |  |             dataDTO.setDeviceSn(deviceVO.getDeviceSn());
 | 
	
		
			
				|  |  |             dataDTO.setIdCard(deviceVO.getIdcard());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             Map<String, String> json = LatitudeUtils.getGeocoderLatitude(deviceVO.getAddress().replace("G.", "").replace("(糖友网)", "").replace("(高友网)", ""));
 | 
	
		
			
				|  |  |             if (json == null) {
 | 
	
		
			
				|  |  |                 return;
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             logger.info("地址:," + deviceVO.getAddress() + "坐标" + json.toString());
 | 
	
		
			
				|  |  |             dataDTO.setLocation(Double.valueOf(json.get("lat")), Double.valueOf(json.get("lng")));
 | 
	
		
			
				|  |  | //            dataDTOs.add(dataDTO);
 | 
	
		
			
				|  |  |             elastricSearchHelper.save(ConstantUtils.deviceLocationIndex, ConstantUtils.deviceLocationType,JSONObject.toJSONString(dataDTO));
 | 
	
		
			
				|  |  |         } catch (Exception e) {
 | 
	
		
			
				|  |  |             e.printStackTrace();
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 按id查找
 | 
	
		
			
				|  |  |      * @param id
 |