| 
					
				 | 
			
			
				@@ -2,6 +2,7 @@ package com.bz.smart_city.service.impl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.bz.smart_city.commom.model.CommonQueryCondition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.bz.smart_city.commom.model.Pagination; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.bz.smart_city.commom.util.Jdk8DateUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.bz.smart_city.dto.MeterReadDataDTO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.bz.smart_city.entity.MeterReadRecord; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.bz.smart_city.repository.MongoMeterReadRecord; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -92,14 +93,14 @@ public class MongoMeterReadRecordServiceImpl implements MongoMeterReadRecordServ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public List<MeterReadRecord> findByIds(List<Long> deviceIds) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Query query = new Query(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        query.addCriteria(Criteria.where("_id").in(deviceIds)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        query.addCriteria(Criteria.where("deviceId").in(deviceIds)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return this.findMongoMeterReadRecordList(query); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public MeterReadRecord findMeterLastReadRecord(Long deviceId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Query query = new Query(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        query.addCriteria(Criteria.where("_id").is(deviceId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        query.addCriteria(Criteria.where("deviceId").is(deviceId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         query.with(Sort.by(Sort.Order.desc("dateCreate"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         MongoMeterReadRecord mongoRecord = mongoTemplate.findOne(query, MongoMeterReadRecord.class,"sc_meter_read_record"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -121,7 +122,24 @@ public class MongoMeterReadRecordServiceImpl implements MongoMeterReadRecordServ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public List<MeterReadDataDTO> queryMeterReadData(String meterReadDate, String deviceNo, String electronicNo, Integer custId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Query query = new Query(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         query.addCriteria(Criteria.where("readDate").is(Integer.parseInt(meterReadDate))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(deviceNo!=null) query.addCriteria(Criteria.where("deviceNo").is(deviceNo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(electronicNo!=null) query.addCriteria(Criteria.where("meterNo").is(electronicNo)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(custId!=null) query.addCriteria(Criteria.where("customerId").is(custId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<MongoMeterReadRecord> list = mongoTemplate.find(query, MongoMeterReadRecord.class,"sc_meter_read_record"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<MeterReadDataDTO> readRecordList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (list != null && list.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (MongoMeterReadRecord mongoRecord : list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                MeterReadDataDTO data = new MeterReadDataDTO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.setElectronicNo(mongoRecord.getMeterNo()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.setDeviceNo(mongoRecord.getDeviceNo()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.setMeterReadData(mongoRecord.getReadData()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.setMeterReadDate(String.valueOf(mongoRecord.getReadDate())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                data.setMeterReadTime(Jdk8DateUtils.getDateToLocalDateTime(mongoRecord.getReadTime())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                readRecordList.add(data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return readRecordList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private MeterReadRecord convertMeterReadRecord(MongoMeterReadRecord mongoRecord){ 
			 |