liurunyu
2025-06-30 2af7e1dde6b4d1e5800ea644e421250a83a9ecd2
某一墒情站的日统计数据以月为单位进行查询功能实现
4个文件已修改
59 ■■■■■ 已修改文件
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmSoilDayMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmSoilDayMapper.xml 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/soil/SoilCtrl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/soil/SoilSv.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmSoilDayMapper.java
@@ -34,6 +34,12 @@
     * @return
     */
    List<VoSoilDay> selectOneBySoilId(@Param("soilId") Long soilId, @Param("ymd") Integer ymd);
   /**
     * 根据指定条件查询记录
     * @param soilId
     * @return
     */
    List<VoSoilDay> selectOneMonthBySoilId(@Param("soilId") Long soilId, @Param("ymdStart") Integer ymdStart, @Param("ymdEnd") Integer ymdEnd);
    /**
     * 根据指定条件查询记录数量
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmSoilDayMapper.xml
@@ -77,7 +77,6 @@
    limit 0,1
  </select>
  <!--根据指定条件获取记录-->
  <select id="selectOneBySoilId" resultType="com.dy.pipIrrGlobal.voRm.VoSoilDay">
    select
@@ -94,7 +93,23 @@
    limit 0,1
  </select>
  <!--根据指定条件获取记录-->
  <select id="selectOneMonthBySoilId" resultType="com.dy.pipIrrGlobal.voRm.VoSoilDay">
    select
    <include refid="Part_Column_List" />
    from rm_soil_day
    <where>
      <if test="soilId != null">
        and soil_id = #{soilId}
      </if>
      <if test="ymdStart != null">
        and ymd &gt;= #{ymdStart}
      </if>
      <if test="ymdEnd != null">
        and ymd &lt;= #{ymdEnd}
      </if>
    </where>
  </select>
  <!--根据指定条件查询记录数量-->
  <select id="selectCount" resultType="java.lang.Long">
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/soil/SoilCtrl.java
@@ -63,6 +63,36 @@
    }
    /**
     * 根据指定条件查询某气象站某一日记录
     * @param soilId
     * @param yyyy_MM
     * @return
     */
    @GetMapping(path = "oneDayByMonth")
    @SsoAop()
    public BaseResponse<List<VoSoilDay>> oneDayByMonth(Long soilId, String yyyy_MM){
        try {
            if(soilId == null){
                return BaseResponseUtils.buildFail("墒情站id不能为空") ;
            }
            if(yyyy_MM == null || yyyy_MM.trim().equals("")){
                return BaseResponseUtils.buildFail("查询月份不能为空") ;
            }
            String ymdStr = yyyy_MM.replaceAll("-", "") ;
            if(!NumUtil.isPlusIntNumber(ymdStr)){
                return BaseResponseUtils.buildFail("查询日期格式不正确,格式规定为yyyy-MM-dd") ;
            }
            Integer ymStart = Integer.parseInt(ymdStr) * 100;
            Integer ymEnd = Integer.parseInt(ymdStr) * 100 + 31;
            return BaseResponseUtils.buildSuccess(sv.oneDayByMonth(soilId, ymStart, ymEnd));
        } catch (Exception e) {
            return BaseResponseUtils.buildException(e.getMessage()) ;
        }
    }
    /**
     * 根据指定条件查询某气象站一些日记录
     * @param qo
     * @return
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/mqttSd1/soil/SoilSv.java
@@ -41,6 +41,10 @@
        return null ;
    }
    public List<VoSoilDay> oneDayByMonth(Long soilId, Integer yyyyMMddStart, Integer yyyyMMddEnd) {
        return this.rmSoilDayDao.selectOneMonthBySoilId(soilId, yyyyMMddStart, yyyyMMddEnd) ;
    }
    public QueryResultVo<List<VoSoilDay>> someDay(SoilQo qo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);