| package com.dy.pipIrrRemote.mqttSd1.soil; | 
|   | 
| import com.dy.common.webUtil.QueryResultVo; | 
| import com.dy.pipIrrGlobal.daoRm.RmSoilDayMapper; | 
| import com.dy.pipIrrGlobal.daoRm.RmSoilHistoryMapper; | 
| import com.dy.pipIrrGlobal.daoRm.RmSoilLastMapper; | 
| import com.dy.pipIrrGlobal.voRm.VoSoil; | 
| import com.dy.pipIrrGlobal.voRm.VoSoilDay; | 
| import com.dy.pipIrrRemote.mqttSd1.soil.SoilQo; | 
| 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/26 09:31 | 
|  * @Description | 
|  */ | 
| @Slf4j | 
| @Service("rmSoilSv") | 
| @RequiredArgsConstructor | 
| public class SoilSv { | 
|   | 
|     @Autowired | 
|     private RmSoilDayMapper rmSoilDayDao ; | 
|     @Autowired | 
|     private RmSoilHistoryMapper rmSoilHistoryDao ; | 
|     @Autowired | 
|     private RmSoilLastMapper rmSoilLastDao ; | 
|   | 
|     public VoSoilDay oneDay(Long soilId, Integer yyyyMMdd) { | 
|         List<VoSoilDay> list = this.rmSoilDayDao.selectOneBySoilId(soilId, yyyyMMdd) ; | 
|         if(list != null && list.size() > 0) { | 
|             return list.get(0) ; | 
|         } | 
|         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); | 
|         Long itemTotal = rmSoilDayDao.selectCount(params); | 
|   | 
|         QueryResultVo<List<VoSoilDay>> rsVo = new QueryResultVo<>() ; | 
|         rsVo.pageSize = qo.pageSize ; | 
|         rsVo.pageCurr = qo.pageCurr ; | 
|   | 
|         rsVo.calculateAndSet(itemTotal, params); | 
|         rsVo.obj = rmSoilDayDao.selectSome(params); | 
|         return rsVo ; | 
|     } | 
|   | 
|   | 
|   | 
|     public VoSoil oneLast(Long soilId) { | 
|         List<VoSoil> list = this.rmSoilLastDao.selectSomeBySoilId(soilId) ; | 
|         if(list != null && list.size() > 0) { | 
|             return list.get(0) ; | 
|         } | 
|         return null ; | 
|     } | 
|   | 
|     public QueryResultVo<List<VoSoil>> oneHistory(SoilQo qo) { | 
|         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); | 
|         Long itemTotal = rmSoilHistoryDao.selectCount(params); | 
|   | 
|         QueryResultVo<List<VoSoil>> rsVo = new QueryResultVo<>() ; | 
|         rsVo.pageSize = qo.pageSize ; | 
|         rsVo.pageCurr = qo.pageCurr ; | 
|   | 
|         rsVo.calculateAndSet(itemTotal, params); | 
|         rsVo.obj = rmSoilHistoryDao.selectSome(params); | 
|         return rsVo ; | 
|     } | 
|   | 
|     /** | 
|      * 根据指定条件查询最新记录 | 
|      * @param qo | 
|      * @return | 
|      */ | 
|     public QueryResultVo<List<VoSoil>> someLast(SoilQo qo) { | 
|         qo.completionTime(); | 
|   | 
|         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); | 
|         Long itemTotal = rmSoilLastDao.selectCount(params); | 
|   | 
|         QueryResultVo<List<VoSoil>> rsVo = new QueryResultVo<>() ; | 
|         rsVo.pageSize = qo.pageSize ; | 
|         rsVo.pageCurr = qo.pageCurr ; | 
|   | 
|         rsVo.calculateAndSet(itemTotal, params); | 
|         rsVo.obj = rmSoilLastDao.selectSome(params); | 
|         return rsVo ; | 
|     } | 
|   | 
|     /** | 
|      * 根据指定条件查询历史记录 | 
|      * @param qo | 
|      * @return | 
|      */ | 
|     public QueryResultVo<List<VoSoil>> someHistory(SoilQo qo) { | 
|         qo.completionTime(); | 
|   | 
|         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); | 
|         Long itemTotal = rmSoilHistoryDao.selectCount(params); | 
|   | 
|         QueryResultVo<List<VoSoil>> rsVo = new QueryResultVo<>() ; | 
|         rsVo.pageSize = qo.pageSize ; | 
|         rsVo.pageCurr = qo.pageCurr ; | 
|   | 
|         rsVo.calculateAndSet(itemTotal, params); | 
|         rsVo.obj = rmSoilHistoryDao.selectSome(params); | 
|         return rsVo ; | 
|     } | 
|   | 
| } |