From f4faf482bcfab63425c9aff0862ad828d71d85a4 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 25 六月 2025 16:59:03 +0800
Subject: [PATCH] 水肥历史数据、最新数据分布条件查询

---
 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureCtrl.java |   66 ++++++++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureHistoryMapper.java              |   19 ++
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureHistoryMapper.xml                             |   52 ++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureQo.java   |   57 +++++++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureLastMapper.java                 |   16 ++
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureLastMapper.xml                                |   54 ++++++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoManure.java                            |  120 +++++++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureSv.java   |   70 ++++++++
 8 files changed, 454 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureHistoryMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureHistoryMapper.java
index 2d20b74..c4f3aa0 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureHistoryMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureHistoryMapper.java
@@ -1,6 +1,10 @@
 package com.dy.pipIrrGlobal.daoRm;
 
 import com.dy.pipIrrGlobal.pojoRm.RmManureHistory;
+import com.dy.pipIrrGlobal.voRm.VoManure;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Author: liurunyu
@@ -16,6 +20,21 @@
 
     RmManureHistory selectByPrimaryKey(Long id);
 
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ璁板綍鏁伴噺
+     * @param params
+     * @return
+     */
+    Long selectCount(Map<?, ?> params);
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ璁板綍
+     * @param params
+     * @return
+     */
+    List<VoManure> selectSome(Map<?, ?> params);
+
+
     int updateByPrimaryKeySelective(RmManureHistory record);
 
     int updateByPrimaryKey(RmManureHistory record);
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureLastMapper.java
index bae9293..7bfba0f 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmManureLastMapper.java
@@ -1,9 +1,11 @@
 package com.dy.pipIrrGlobal.daoRm;
 
 import com.dy.pipIrrGlobal.pojoRm.RmManureLast;
+import com.dy.pipIrrGlobal.voRm.VoManure;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @Author: liurunyu
@@ -21,6 +23,20 @@
 
     List<RmManureLast> selectRmManureLast(@Param("stManureId") Long stManureId) ;
 
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ璁板綍鏁伴噺
+     * @param params
+     * @return
+     */
+    Long selectCount(Map<?, ?> params);
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ璁板綍
+     * @param params
+     * @return
+     */
+    List<VoManure> selectSome(Map<?, ?> params);
+
     int updateByPrimaryKeySelective(RmManureLast record);
 
     int updateByPrimaryKey(RmManureLast record);
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoManure.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoManure.java
new file mode 100644
index 0000000..ceaac69
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoManure.java
@@ -0,0 +1,120 @@
+package com.dy.pipIrrGlobal.voRm;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/6/25 16:34
+ * @Description
+ */
+@Data
+public class VoManure  {
+    public static final long serialVersionUID = 202506251634001L;
+
+    /**
+     * 璁板綍ID
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    public Long id;
+
+    /**
+     * 姘磋偉鏈篒D
+     */
+    @Schema(description = "姘磋偉鏈篒D", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    public Long manureId;
+
+    /**
+     * 姘磋偉鏈哄悕绉�
+     */
+    @Schema(description = "姘磋偉鏈哄悕绉�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Long manureName;
+
+
+    /**
+     * 鏁版嵁涓婃姤鏃堕棿锛堝勾鏈堟棩鏃跺垎绉掞級
+     */
+    @Schema(description = "鏁版嵁鎺ユ敹鏃ユ湡鏃堕棿", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    public Date dt;
+
+    /**
+     * 鎼呮媽1杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "鎼呮媽1杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte stirRunning1;
+
+    /**
+     * 鎼呮媽2杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "鎼呮媽2杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte stirRunning2;
+
+    /**
+     * 鎼呮媽3杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "鎼呮媽3杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte stirRunning3;
+
+    /**
+     * 鎼呮媽4杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "鎼呮媽4杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte stirRunning4;
+
+    /**
+     * 娉ㄨ偉杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "娉ㄨ偉杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte injectRunning;
+
+    /**
+     * 鐏屾簤杩愯鐘舵��(1杩愯锛�0鍋滄)
+     */
+    @Schema(description = "鐏屾簤杩愯鐘舵��(1杩愯锛�0鍋滄)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte irrRunning;
+
+    /**
+     * 鎶ヨ锛�1:娉ㄨ偉娉垫湁鏁呴殰锛�0:娉ㄨ偉娉垫病鏈夋晠闅滐級
+     */
+    @Schema(description = "鎶ヨ锛�1:娉ㄨ偉娉垫湁鏁呴殰锛�0:娉ㄨ偉娉垫病鏈夋晠闅滐級", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Byte alarm;
+
+    /**
+     * 鑲ユ枡娴侀噺锛堝崌锛�
+     */
+    @Schema(description = "鑲ユ枡娴侀噺锛堝崌锛�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" )
+    public Double manureFlow;
+
+    /**
+     * 娉ㄨ偉缁忚繃鏃堕棿(绉�)
+     */
+    @Schema(description = "娉ㄨ偉缁忚繃鏃堕棿(绉�)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Integer manureTime;
+
+    /**
+     * 鎼呮媽缁忚繃鏃堕棿(绉掞級
+     */
+    @Schema(description = "鎼呮媽缁忚繃鏃堕棿(绉掞級", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Integer stirTime;
+
+    /**
+     * 鎼呮媽璁惧畾鏃堕棿(绉�)
+     */
+    @Schema(description = "鎼呮媽璁惧畾鏃堕棿(绉�)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Integer stirDuration;
+
+    /**
+     * 娉ㄨ偉璁惧畾鏃堕棿(绉�)
+     */
+    @Schema(description = "娉ㄨ偉璁惧畾鏃堕棿(绉�)", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Integer injectDuration;
+
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureHistoryMapper.xml
index b1028ec..20cc470 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureHistoryMapper.xml
@@ -32,6 +32,58 @@
     from rm_manure_history
     where id = #{id,jdbcType=BIGINT}
   </select>
+  <!--鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍鏁伴噺-->
+  <select id="selectCount" resultType="java.lang.Long">
+    SELECT
+    COUNT(*) AS recordCount
+    FROM rm_manure_history htb
+    INNER JOIN pr_st_manure mtb ON mtb.id = htb.manure_id
+    <where>
+      <if test="manureId != null">
+        AND htb.manure_id = #{manureId}
+      </if>
+      <if test = "no != null">
+        AND mtb.no = #{no}
+      </if>
+      <if test = "name != null and name !=''">
+        AND mtb.name LIKE CONCAT('%',#{intakeNum},'%')
+      </if>
+      <if test = "timeStart != null and timeStop != null">
+        AND htb.dt BETWEEN #{timeStart} AND #{timeStop}
+      </if>
+    </where>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍-->
+  <select id="selectSome" resultType="com.dy.pipIrrGlobal.voRm.VoManure">
+    SELECT
+    <include refid="Base_Column_List" />,
+    mtb.`name` AS manureName
+    FROM rm_manure_history htb
+    INNER JOIN pr_st_manure mtb ON mtb.id = htb.manure_id
+    <where>
+      <if test="manureId != null">
+        AND htb.manure_id = #{manureId}
+      </if>
+      <if test = "no != null">
+        AND mtb.no = #{no}
+      </if>
+      <if test = "name != null and name !=''">
+        AND mtb.name LIKE CONCAT('%',#{intakeNum},'%')
+      </if>
+      <if test = "timeStart != null and timeStop != null">
+        AND htb.dt BETWEEN #{timeStart} AND #{timeStop}
+      </if>
+    </where>
+    ORDER BY htb.id DESC
+    <trim prefix="limit " >
+      <if test="start != null and count != null">
+        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+      </if>
+    </trim>
+  </select>
+
+
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
     <!--@mbg.generated-->
     delete from rm_manure_history
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureLastMapper.xml
index e428cde..c1bbf6f 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmManureLastMapper.xml
@@ -47,6 +47,60 @@
     </where>
     limit 0,1
   </select>
+
+
+  <!--鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍鏁伴噺-->
+  <select id="selectCount" resultType="java.lang.Long">
+    SELECT
+    COUNT(*) AS recordCount
+    FROM rm_manure_last ltb
+    INNER JOIN pr_st_manure mtb ON mtb.id = ltb.manure_id
+    <where>
+      <if test="manureId != null">
+        AND ltb.manure_id = #{manureId}
+      </if>
+      <if test = "no != null">
+        AND mtb.no = #{no}
+      </if>
+      <if test = "name != null and name !=''">
+        AND mtb.name LIKE CONCAT('%',#{intakeNum},'%')
+      </if>
+      <if test = "timeStart != null and timeStop != null">
+        AND ltb.dt BETWEEN #{timeStart} AND #{timeStop}
+      </if>
+    </where>
+  </select>
+
+  <!--鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍-->
+  <select id="selectSome" resultType="com.dy.pipIrrGlobal.voRm.VoManure">
+    SELECT
+    <include refid="Base_Column_List" />,
+    mtb.`name` AS manureName
+    FROM rm_manure_last ltb
+    INNER JOIN pr_st_manure mtb ON mtb.id = ltb.manure_id
+    <where>
+      <if test="manureId != null">
+        AND ltb.manure_id = #{manureId}
+      </if>
+      <if test = "no != null">
+        AND mtb.no = #{no}
+      </if>
+      <if test = "name != null and name !=''">
+        AND mtb.name LIKE CONCAT('%',#{intakeNum},'%')
+      </if>
+      <if test = "timeStart != null and timeStop != null">
+        AND ltb.dt BETWEEN #{timeStart} AND #{timeStop}
+      </if>
+    </where>
+    ORDER BY ltb.manure_id DESC
+    <trim prefix="limit " >
+      <if test="start != null and count != null">
+        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+      </if>
+    </trim>
+  </select>
+
+
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
     <!--@mbg.generated-->
     delete from rm_manure_last
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureCtrl.java
new file mode 100644
index 0000000..1b6f71b
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureCtrl.java
@@ -0,0 +1,66 @@
+package com.dy.pipIrrRemote.mqttSd1.manure;
+
+import com.dy.common.aop.SsoAop;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrGlobal.voRm.VoManure;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/6/25 16:17
+ * @Description
+ */
+@Slf4j
+@Tag(name = "姘磋偉鏁版嵁鏌ヨ", description = "姘磋偉鏁版嵁鏌ヨ")
+@RestController("rmManureCtrl")
+@RequestMapping(path = "manure")
+@RequiredArgsConstructor
+public class ManureCtrl {
+
+    private ManureSv sv;
+
+    @Autowired
+    public void setSv(ManureSv sv){
+        this.sv = sv ;
+    }
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "history")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoManure>>> selectHistory(ManureQo qo){
+        try {
+            return BaseResponseUtils.buildSuccess(sv.selectHistory(qo));
+        } catch (Exception e) {
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ鏈�鏂拌褰�
+     * @param qo
+     * @return
+     */
+    @GetMapping(path = "last")
+    @SsoAop()
+    public BaseResponse<QueryResultVo<List<VoManure>>> selectLast(ManureQo qo){
+        try {
+            return BaseResponseUtils.buildSuccess(sv.selectLast(qo));
+        } catch (Exception e) {
+            return BaseResponseUtils.buildException(e.getMessage()) ;
+        }
+    }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureQo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureQo.java
new file mode 100644
index 0000000..05076fb
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureQo.java
@@ -0,0 +1,57 @@
+package com.dy.pipIrrRemote.mqttSd1.manure;
+
+import com.dy.common.webUtil.QueryConditionVo;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/6/25 16:18
+ * @Description
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ToString(callSuper = true)
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+public class ManureQo extends QueryConditionVo {
+    /**
+     * 姘磋偉鏈篒D
+     */
+    @Schema(description = "姘磋偉鏈篒D", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    private Long manureId;
+
+    /**
+     * 姘磋偉绔欑紪鍙�
+     */
+    @Schema(description = "姘磋偉绔欑紪鍙�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public Integer no ;
+
+    /**
+     * 姘磋偉绔欏悕绉�
+     */
+    @Schema(description = "姘磋偉绔欏悕绉�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public String name;
+    /**
+     * 鏌ヨ寮�濮嬫棩鏈�
+     */
+    @Schema(description = "鏌ヨ寮�濮嬫棩鏈�", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public String timeStart;
+
+    /**
+     * 鏌ヨ缁撴潫鏃ユ湡
+     */
+    @Schema(description = "鏌ヨ缁撴潫鏃ユ湡", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+    public String timeStop;
+
+
+    public void completionTime(){
+        if(timeStart != null && !timeStart.trim().equals("")) {
+            timeStart = timeStart + " 00:00:00";
+        }
+        if(timeStop != null && !timeStop.trim().equals("")) {
+            timeStop = timeStop + " 23:59:59";
+        }
+    }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureSv.java
new file mode 100644
index 0000000..609c9fd
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/manure/ManureSv.java
@@ -0,0 +1,70 @@
+package com.dy.pipIrrRemote.mqttSd1.manure;
+
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrGlobal.daoRm.RmManureHistoryMapper;
+import com.dy.pipIrrGlobal.daoRm.RmManureLastMapper;
+import com.dy.pipIrrGlobal.voRm.VoManure;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.common.utils.PojoUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/6/25 16:18
+ * @Description
+ */
+@Slf4j
+@Service("rmManureSv")
+@RequiredArgsConstructor
+public class ManureSv {
+
+    @Autowired
+    private RmManureHistoryMapper rmManureHistoryDao ;
+    @Autowired
+    private RmManureLastMapper rmManureLastDao ;
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ鍘嗗彶璁板綍
+     * @param qo
+     * @return
+     */
+    public QueryResultVo<List<VoManure>> selectHistory(ManureQo qo) {
+        qo.completionTime();
+
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+        Long itemTotal = rmManureHistoryDao.selectCount(params);
+
+        QueryResultVo<List<VoManure>> rsVo = new QueryResultVo<>() ;
+        rsVo.pageSize = qo.pageSize ;
+        rsVo.pageCurr = qo.pageCurr ;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = rmManureHistoryDao.selectSome(params);
+        return rsVo ;
+    }
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鏌ヨ鏈�鏂拌褰�
+     * @param qo
+     * @return
+     */
+    public QueryResultVo<List<VoManure>> selectLast(ManureQo qo) {
+        qo.completionTime();
+
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+        Long itemTotal = rmManureLastDao.selectCount(params);
+
+        QueryResultVo<List<VoManure>> rsVo = new QueryResultVo<>() ;
+        rsVo.pageSize = qo.pageSize ;
+        rsVo.pageCurr = qo.pageCurr ;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = rmManureLastDao.selectSome(params);
+        return rsVo ;
+    }
+}

--
Gitblit v1.8.0