ソースを参照

添加mongo查询抄表记录service

lin 4 年 前
コミット
e41ffe90a7

+ 2 - 0
smart-city-platform/src/main/java/com/bz/smart_city/service/MongoMeterReadRecordService.java

@@ -21,4 +21,6 @@ public interface MongoMeterReadRecordService {
 
     // 查询水表最后一次抄表数据
     MeterReadRecord findMeterLastReadRecord(Long deviceId);
+
+    List<MeterReadRecord> findSyncMeterRecord( List<Long> deviceIds, String readTime);
 }

+ 51 - 74
smart-city-platform/src/main/java/com/bz/smart_city/service/impl/MongoMeterReadRecordServiceImpl.java

@@ -60,43 +60,7 @@ public class MongoMeterReadRecordServiceImpl implements MongoMeterReadRecordServ
         List<MeterReadRecord> readRecordList = new ArrayList<>();
         if (list != null && list.size() > 0) {
             for (MongoMeterReadRecord mongoRecord : list) {
-                MeterReadRecord record = new MeterReadRecord();
-                record.setId(mongoRecord.getId());
-                record.setReadDate(mongoRecord.getReadDate());
-                record.setSiteId(mongoRecord.getSiteId());
-                record.setSysId(mongoRecord.getSysId());
-                record.setProvince(mongoRecord.getProvince());
-                record.setCity(mongoRecord.getCity());
-                record.setRegion(mongoRecord.getRegion());
-                record.setCommunityId(mongoRecord.getCommunity());
-                record.setCommunityName(mongoRecord.getCommunityName());
-                record.setBuildingId(mongoRecord.getBuildingId());
-                record.setBuildingName(mongoRecord.getBuildingName());
-                record.setLocation(mongoRecord.getLocation());
-                record.setDeviceTypeId(mongoRecord.getDeviceTypeId());
-                record.setDeviceId(mongoRecord.getDeviceId());
-                record.setDeviceNo(mongoRecord.getDeviceNo());
-                record.setMeterNo(mongoRecord.getMeterNo());
-                record.setMeterFileNo(mongoRecord.getMeterFileNo());
-                record.setReadTime(mongoRecord.getReadTime());
-                record.setReadStatus(mongoRecord.getReadStatus());
-                record.setReadData(mongoRecord.getReadData());
-                record.setConcentratorId(mongoRecord.getConcentratorId());
-                record.setConcentratorNo(mongoRecord.getConcentratorNo());
-                record.setCollectorId(mongoRecord.getCollectorId());
-                record.setCollectorNo(mongoRecord.getCollectorNo());
-                record.setCustomerId(mongoRecord.getCustomerId());
-                record.setCustomerName(mongoRecord.getCustomerName());
-                record.setFactoryId(mongoRecord.getManufacturerId());
-                record.setFactoryName(mongoRecord.getManufacturerName());
-                record.setStatus(mongoRecord.getStatus());
-                record.setLastValid(mongoRecord.getLastValid());
-                record.setLastCost(mongoRecord.getLastCost());
-
-                record.setEquipmentType(mongoRecord.getDeviceTypeName());
-                //record.setModel(mongoRecord.getde);
-                record.setChannelNumberName(mongoRecord.getChannelName());
-                readRecordList.add(record);
+                readRecordList.add(convertMeterReadRecord(mongoRecord));
             }
         }
         return readRecordList;
@@ -140,44 +104,57 @@ public class MongoMeterReadRecordServiceImpl implements MongoMeterReadRecordServ
 
         MongoMeterReadRecord mongoRecord = mongoTemplate.findOne(query, MongoMeterReadRecord.class,"sc_meter_read_record");
         if (mongoRecord != null) {
-            MeterReadRecord record = new MeterReadRecord();
-            record.setId(mongoRecord.getId());
-            record.setReadDate(mongoRecord.getReadDate());
-            record.setSiteId(mongoRecord.getSiteId());
-            record.setSysId(mongoRecord.getSysId());
-            record.setProvince(mongoRecord.getProvince());
-            record.setCity(mongoRecord.getCity());
-            record.setRegion(mongoRecord.getRegion());
-            record.setCommunityId(mongoRecord.getCommunity());
-            record.setCommunityName(mongoRecord.getCommunityName());
-            record.setBuildingId(mongoRecord.getBuildingId());
-            record.setBuildingName(mongoRecord.getBuildingName());
-            record.setLocation(mongoRecord.getLocation());
-            record.setDeviceTypeId(mongoRecord.getDeviceTypeId());
-            record.setDeviceId(mongoRecord.getDeviceId());
-            record.setDeviceNo(mongoRecord.getDeviceNo());
-            record.setMeterNo(mongoRecord.getMeterNo());
-            record.setMeterFileNo(mongoRecord.getMeterFileNo());
-            record.setReadTime(mongoRecord.getReadTime());
-            record.setReadStatus(mongoRecord.getReadStatus());
-            record.setReadData(mongoRecord.getReadData());
-            record.setConcentratorId(mongoRecord.getConcentratorId());
-            record.setConcentratorNo(mongoRecord.getConcentratorNo());
-            record.setCollectorId(mongoRecord.getCollectorId());
-            record.setCollectorNo(mongoRecord.getCollectorNo());
-            record.setCustomerId(mongoRecord.getCustomerId());
-            record.setCustomerName(mongoRecord.getCustomerName());
-            record.setFactoryId(mongoRecord.getManufacturerId());
-            record.setFactoryName(mongoRecord.getManufacturerName());
-            record.setStatus(mongoRecord.getStatus());
-            record.setLastValid(mongoRecord.getLastValid());
-            record.setLastCost(mongoRecord.getLastCost());
-
-            record.setEquipmentType(mongoRecord.getDeviceTypeName());
-            //record.setModel(mongoRecord.getde);
-            record.setChannelNumberName(mongoRecord.getChannelName());
-            return record;
+            return convertMeterReadRecord(mongoRecord);
         }
         return null;
     }
+
+    @Override
+    public List<MeterReadRecord> findSyncMeterRecord(List<Long> deviceIds, String readTime) {
+        Query query = new Query();
+        query.addCriteria(Criteria.where("readDate").is(readTime));
+        query.addCriteria(Criteria.where("deviceId").in(deviceIds));
+        return this.findMongoMeterReadRecordList(query);
+    }
+
+    private MeterReadRecord convertMeterReadRecord(MongoMeterReadRecord mongoRecord){
+        MeterReadRecord record = new MeterReadRecord();
+        record.setId(mongoRecord.getId());
+        record.setReadDate(mongoRecord.getReadDate());
+        record.setSiteId(mongoRecord.getSiteId());
+        record.setSysId(mongoRecord.getSysId());
+        record.setProvince(mongoRecord.getProvince());
+        record.setCity(mongoRecord.getCity());
+        record.setRegion(mongoRecord.getRegion());
+        record.setCommunityId(mongoRecord.getCommunity());
+        record.setCommunityName(mongoRecord.getCommunityName());
+        record.setBuildingId(mongoRecord.getBuildingId());
+        record.setBuildingName(mongoRecord.getBuildingName());
+        record.setLocation(mongoRecord.getLocation());
+        record.setDeviceTypeId(mongoRecord.getDeviceTypeId());
+        record.setDeviceId(mongoRecord.getDeviceId());
+        record.setDeviceNo(mongoRecord.getDeviceNo());
+        record.setMeterNo(mongoRecord.getMeterNo());
+        record.setMeterFileNo(mongoRecord.getMeterFileNo());
+        record.setReadTime(mongoRecord.getReadTime());
+        record.setReadStatus(mongoRecord.getReadStatus());
+        record.setReadData(mongoRecord.getReadData());
+        record.setConcentratorId(mongoRecord.getConcentratorId());
+        record.setConcentratorNo(mongoRecord.getConcentratorNo());
+        record.setCollectorId(mongoRecord.getCollectorId());
+        record.setCollectorNo(mongoRecord.getCollectorNo());
+        record.setCustomerId(mongoRecord.getCustomerId());
+        record.setCustomerName(mongoRecord.getCustomerName());
+        record.setFactoryId(mongoRecord.getManufacturerId());
+        record.setFactoryName(mongoRecord.getManufacturerName());
+        record.setStatus(mongoRecord.getStatus());
+        record.setLastValid(mongoRecord.getLastValid());
+        record.setLastCost(mongoRecord.getLastCost());
+
+        record.setEquipmentType(mongoRecord.getDeviceTypeName());
+        //record.setModel(mongoRecord.getde);
+        record.setChannelNumberName(mongoRecord.getChannelName());
+        return record;
+    }
+
 }