فهرست منبع

新建分页列表展示所有耳标注册信息

zhuoning 3 سال پیش
والد
کامیت
2f9f302607

+ 13 - 0
huimv-eartag2-platform/huimv-eartag2-common/src/main/java/com/huimv/eartag2/common/dao/entity/EartagEartagRegisterEntity.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
@@ -54,6 +55,9 @@ public class EartagEartagRegisterEntity implements Serializable {
     @Column(name = "live_status")
     private Integer liveStatus;
 
+    @Column(name = "create_date")
+    private Date createDate;
+
     public void setId(Integer id) {
         this.id = id;
     }
@@ -166,6 +170,14 @@ public class EartagEartagRegisterEntity implements Serializable {
         return liveStatus;
     }
 
+    public void setCreateDate(Date createDate) {
+        this.createDate = createDate;
+    }
+
+    public Date getCreateDate() {
+        return createDate;
+    }
+
     @Override
     public String toString() {
         return "EartagEartagRegisterEntity{" +
@@ -183,6 +195,7 @@ public class EartagEartagRegisterEntity implements Serializable {
                 "activeStatus=" + activeStatus + '\'' +
                 "activeTime=" + activeTime + '\'' +
                 "liveStatus=" + liveStatus + '\'' +
+                "createDate=" + createDate + '\'' +
                 '}';
     }
 }

+ 33 - 0
huimv-eartag2-platform/huimv-eartag2-manage/src/main/java/com/huimv/eartag2/manage/controller/EartagController.java

@@ -261,4 +261,37 @@ public class EartagController {
         return eartagService.getEartagDeviceByEarmarkAndAddDate(earmark,addDate);
     }
 
+    /**
+     * @Method      : listAllEartagRegister
+     * @Description : 展示所有耳标列表
+     * @Params      : [farmId]
+     * @Return      : com.huimv.eartag2.common.utils.Result
+     * 
+     * @Author      : ZhuoNing
+     * @Date        : 2022/3/11       
+     * @Time        : 9:35
+     */
+    @RequestMapping(value = "/listAllEartagRegister",method = RequestMethod.GET)
+    public Result listAllEartagRegister(@RequestParam(value = "farmId",required = true) String farmId,
+                                        @RequestParam(value = "earmark",required = false) String earmark,
+                                        @RequestParam(value = "activeStatus",required = false) Integer activeStatus,
+                                        @RequestParam(value = "liveStatus",required = false) Integer liveStatus,
+                                        @RequestParam(value = "registerType",required = false) Integer registerType,
+                                        @RequestParam(value = "startDate",required = false) String startDate,
+                                        @RequestParam(value = "endDate",required = false) String endDate,
+                                        @RequestParam(value = "pageNo",required = true) Integer pageNo,
+                                        @RequestParam(value = "pageSize",required = true) Integer pageSize) throws ParseException {
+        log.info("<listAllEartagRegister> 输入参数 farmId>>"+farmId);
+        log.info("<listAllEartagRegister> 输入参数 earmark>>"+earmark);
+        log.info("<listAllEartagRegister> 输入参数 activeStatus>>"+activeStatus);
+        log.info("<listAllEartagRegister> 输入参数 liveStatus>>"+liveStatus);
+        log.info("<listAllEartagRegister> 输入参数 registerType>>"+registerType);
+        log.info("<listAllEartagRegister> 输入参数 startDate>>"+startDate);
+        log.info("<listAllEartagRegister> 输入参数 endDate>>"+endDate);
+        log.info("<listAllEartagRegister> 输入参数 pageNo>>"+pageNo);
+        log.info("<listAllEartagRegister> 输入参数 pageSize>>"+pageSize);
+        //
+        return eartagService.listAllEartagRegister(farmId,earmark,activeStatus,liveStatus,registerType,startDate,endDate,pageNo,pageSize);
+    }
+
 }

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

@@ -39,4 +39,7 @@ public interface IEartagService {
 
     //通过耳标号和日期获取耳标关联设备信息
     Result getEartagDeviceByEarmarkAndAddDate(String earmark, String addDate);
+
+    //列表展示所有耳标
+    Result listAllEartagRegister(String farmId, String earmark, Integer activeStatus, Integer liveStatus, Integer registerType, String startDate, String endDate, Integer pageNo, Integer pageSize) throws ParseException;
 }

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

@@ -219,7 +219,6 @@ public class DeviceServiceImpl implements IDeviceService {
             List<Predicate> predList = new ArrayList<>();
             //farmId
             if (null != farmId && farmId.trim().length()>0) {
-                System.out.println("### farmId>>"+farmId);
                 predList.add(criteriaBuilder.equal(root.get("farmId").as(String.class), farmId));
             }
             //deviceCode

+ 84 - 0
huimv-eartag2-platform/huimv-eartag2-manage/src/main/java/com/huimv/eartag2/manage/service/impl/EartagServiceImpl.java

@@ -8,6 +8,7 @@ import com.huimv.eartag2.common.utils.*;
 import com.huimv.eartag2.manage.service.IEartagService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageRequest;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.domain.Specification;
@@ -16,6 +17,7 @@ import org.springframework.stereotype.Service;
 import javax.persistence.criteria.Order;
 import javax.persistence.criteria.Predicate;
 import java.sql.Date;
+import java.sql.Timestamp;
 import java.text.ParseException;
 import java.util.ArrayList;
 import java.util.List;
@@ -43,6 +45,87 @@ public class EartagServiceImpl implements IEartagService {
     private EartagDeviceEartagCountRepo deviceEartagCountRepo;
 
 
+    @Override
+    public Result listAllEartagRegister(String farmId, String earmark, Integer activeStatus, Integer liveStatus, Integer registerType, String startDate, String endDate, Integer pageNo, Integer pageSize) throws ParseException {
+        DateUtil du = new DateUtil();
+        //
+        Specification<EartagEartagRegisterEntity> sf = (Specification<EartagEartagRegisterEntity>) (root, criteriaQuery, criteriaBuilder) -> {
+            //
+            List<Predicate> predList = new ArrayList<>();
+            //farmId
+            if (null != farmId && farmId.trim().length()>0) {
+                predList.add(criteriaBuilder.equal(root.get("farmId").as(String.class), farmId));
+            }
+            //earmark
+            if (null != earmark && earmark.trim().length()>0) {
+                predList.add(criteriaBuilder.equal(root.get("earmark").as(String.class), earmark));
+            }
+            //activeStatus
+            if (null != activeStatus) {
+                predList.add(criteriaBuilder.equal(root.get("activeStatus").as(Integer.class), activeStatus));
+            }
+            //liveStatus
+            if (null != liveStatus) {
+                predList.add(criteriaBuilder.equal(root.get("liveStatus").as(Integer.class), liveStatus));
+            }
+            //registerType
+            if (null != registerType) {
+                predList.add(criteriaBuilder.equal(root.get("registerType").as(Integer.class), registerType));
+            }
+            //startDate
+            if (null != startDate && startDate.trim().length()>0) {
+                try {
+                    predList.add(criteriaBuilder.greaterThanOrEqualTo(root.get("createDate").as(Date.class), new Date(new DateUtil().parseDateTextToLong(startDate))));
+                } catch (ParseException e) {
+                    e.printStackTrace();
+                }
+            }
+            //endDate
+            if (null != endDate && endDate.trim().length()>0) {
+                try {
+                    predList.add(criteriaBuilder.lessThanOrEqualTo(root.get("createDate").as(Date.class), new Date(new DateUtil().parseDateTextToLong(endDate))));
+                } catch (ParseException e) {
+                    e.printStackTrace();
+                }
+            }
+//            //activeStatus
+//            if (null != activeStatus) {
+//                predList.add(criteriaBuilder.equal(root.get("activeStatus").as(Integer.class), activeStatus));
+//            }
+//            //liveStatus
+//            if (null != liveStatus) {
+//                predList.add(criteriaBuilder.equal(root.get("deviceStatus").as(Integer.class), liveStatus));
+//            }
+            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);
+        Page<EartagEartagRegisterEntity> eartagRegisterPage = eartagRegisterRepo.findAll(sf, pageable);
+//        System.out.println("## eartagRegisterPage>>"+eartagRegisterPage);
+//        List<EartagEartagRegisterEntity> eartagRegisterEntityList = eartagRegisterPage.getContent();
+//        System.out.println("## eartagRegisterEntityList.size()>>"+eartagRegisterEntityList.size());
+//        JSONArray dataJa = new JSONArray();
+//        for(EartagEartagRegisterEntity eartagRegisterEntity:eartagRegisterEntityList){
+//            JSONObject dataJo = JSONUtil.convertEntityToJSONObject(eartagRegisterEntity);
+//            dataJa.add(dataJo);
+//            dataJo.put("firstTime",du.formatDatetimeText(eartagRegisterEntity.getFirstTime()));
+//            dataJo.put("lastTime",du.formatDatetimeText(eartagRegisterEntity.getLastTime()));
+//            dataJo.put("registerTime",du.formatDatetimeText(eartagRegisterEntity.getRegisterTime()));
+//            dataJo.put("activeTime",du.formatDatetimeText(eartagRegisterEntity.getActiveTime()));
+//            dataJo.put("createDate",du.formatDateText(eartagRegisterEntity.getCreateDate()));
+//        }
+//    for(EartagEartagRegisterEntity eartagRegisterEntity:eartagRegisterEntityList){
+//        eartagRegisterEntity.setFirstTime(new Timestamp(du.parseDateTime(eartagRegisterEntity.getFirstTime().toString()).getTime()));
+//        System.out.println("getFirstTime 33>>"+du.parseDateTime(eartagRegisterEntity.getFirstTime().toString()));
+//    }
+        return new Result(ResultCode.SUCCESS, eartagRegisterPage);
+    }
+
     /**
      * @Method      : getEartagDeviceByEarmarkAndAddDate
      * @Description : 
@@ -64,6 +147,7 @@ public class EartagServiceImpl implements IEartagService {
         }
     }
 
+
     /**
      * @Method : listOnlineEartagCount
      * @Description :