Browse Source

增加查询设备环境温度流水

zhuoning 3 years ago
parent
commit
f4337ec666

+ 13 - 0
huimv-eartag2-platform/huimv-eartag2-common/src/main/java/com/huimv/eartag2/common/dao/entity/EartagEnvEntity.java

@@ -2,6 +2,7 @@ package com.huimv.eartag2.common.dao.entity;
 
 import javax.persistence.*;
 import java.io.Serializable;
+import java.sql.Date;
 import java.sql.Timestamp;
 
 @Entity
@@ -30,6 +31,9 @@ public class EartagEnvEntity implements Serializable {
     @Column(name = "add_time")
     private Timestamp addTime;
 
+    @Column(name = "create_date")
+    private Date createDate;
+
     public void setId(Integer id) {
         this.id = id;
     }
@@ -78,6 +82,14 @@ public class EartagEnvEntity implements Serializable {
         return addTime;
     }
 
+    public void setCreateDate(Date createDate) {
+        this.createDate = createDate;
+    }
+
+    public Date getCreateDate() {
+        return createDate;
+    }
+
     @Override
     public String toString() {
         return "EartagEnvEntity{" +
@@ -87,6 +99,7 @@ public class EartagEnvEntity implements Serializable {
                 "temp2=" + temp2 + '\'' +
                 "askTime=" + askTime + '\'' +
                 "addTime=" + addTime + '\'' +
+                "createDate=" + createDate + '\'' +
                 '}';
     }
 }

+ 27 - 0
huimv-eartag2-platform/huimv-eartag2-manage/src/main/java/com/huimv/eartag2/manage/controller/DeviceController.java

@@ -244,6 +244,33 @@ public class DeviceController {
     }
 
     /**
+     * @Method      : listDeviceEnvtempByDeviceCodeInPager
+     * @Description : 显示设备温度流水
+     * @Params      : [deviceCode]
+     * @Return      : com.huimv.eartag2.common.utils.Result
+     *
+     * @Author      : ZhuoNing
+     * @Date        : 2022/3/8
+     * @Time        : 21:11
+     */
+    @RequestMapping(value = "/listDeviceEnvtempByDeviceCodeInPager",method = RequestMethod.GET)
+    public Result listDeviceEnvtempByDeviceCodeInPager(@RequestParam(value = "deviceCode",required = true) String deviceCode,
+                                                       @RequestParam(value = "addDate",required = false) String addDate,
+                                                       @RequestParam(value = "pageNo",required = true) Integer pageNo,
+                                                       @RequestParam(value = "pageSize",required = true) Integer pageSize) throws ParseException {
+        log.info("<listDeviceEnvtempByDeviceCodeInPager>输入参数 deviceCode>>"+deviceCode);
+        log.info("<listDeviceEnvtempByDeviceCode>输入参数 addDate>>"+addDate);
+        log.info("<listDeviceEnvtempByDeviceCode>输入参数 pageNo>>"+pageNo);
+        log.info("<listDeviceEnvtempByDeviceCode>输入参数 pageSize>>"+pageSize);
+        //
+        if(addDate == null){
+            addDate  =  new DateUtil().getTodayDateText();
+        }
+        //查询设备环境温度
+        return deviceService.listDeviceEnvtempByDeviceCodeInPager(deviceCode,addDate,pageNo,pageSize);
+    }
+
+    /**
      * @Method      : listHeartbeatByDeviceCodeAndDateInPager
      * @Description : 显示设备心跳数据(带分页)
      * @Params      : [deviceCode]

+ 3 - 0
huimv-eartag2-platform/huimv-eartag2-manage/src/main/java/com/huimv/eartag2/manage/service/IDeviceService.java

@@ -37,4 +37,7 @@ public interface IDeviceService {
 
     //显示设备心跳
     Result listHeartbeatByDeviceCodeAndDateInPager(String deviceCode, String addDate, Integer pageNo, Integer pageSize);
+
+    //分页查询设备温度
+    Result listDeviceEnvtempByDeviceCodeInPager(String deviceCode, String addDate, Integer pageNo, Integer pageSize);
 }

+ 41 - 1
huimv-eartag2-platform/huimv-eartag2-manage/src/main/java/com/huimv/eartag2/manage/service/impl/DeviceServiceImpl.java

@@ -157,7 +157,47 @@ public class DeviceServiceImpl implements IDeviceService {
         };
         Pageable pageable = PageRequest.of(pageNo - 1, pageSize);
         return new Result(ResultCode.SUCCESS, heartbeatRepo.findAll(sf, pageable));
-        /////////////////////////////////////////////////////////////////////////////////////////////////////////////
+    }
+
+    /**
+     * @Method      : listDeviceEnvtempByDeviceCodeInPager
+     * @Description : 分页查询设备温度
+     * @Params      : [deviceCode, addDate, pageNo, pageSize]
+     * @Return      : com.huimv.eartag2.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2022/3/9       
+     * @Time        : 21:27
+     */
+    @Override
+    public Result listDeviceEnvtempByDeviceCodeInPager(String deviceCode, String addDate, Integer pageNo, Integer pageSize) {
+        //
+        Specification<EartagEnvEntity> sf = (Specification<EartagEnvEntity>) (root, criteriaQuery, criteriaBuilder) -> {
+            //
+            List<Predicate> predList = new ArrayList<>();
+            //
+            if (null != deviceCode && deviceCode.trim().length()>0) {
+                predList.add(criteriaBuilder.greaterThanOrEqualTo(root.get("deviceCode").as(String.class), deviceCode));
+            }
+            //
+            if (null != addDate && addDate.trim().length()>0) {
+                try {
+                    predList.add(criteriaBuilder.lessThanOrEqualTo(root.get("createDate").as(Date.class), new Date(new DateUtil().parseDateTextToLong(addDate))));
+                } catch (ParseException e) {
+                    e.printStackTrace();
+                }
+            }
+            Predicate[] pred = new Predicate[predList.size()];
+            Predicate and = criteriaBuilder.and(predList.toArray(pred));
+            criteriaQuery.where(and);
+            //
+            List<Order> orders = new ArrayList<>();
+            orders.add(criteriaBuilder.desc(root.get("id")));
+            return criteriaQuery.orderBy(orders).getRestriction();
+        };
+        Pageable pageable = PageRequest.of(pageNo - 1, pageSize);
+        return new Result(ResultCode.SUCCESS, eartagEnvRepo.findAll(sf, pageable));
+        ///////////////////////////////////////////////////////////////////////////////////////
     }
 
     /**