|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrGlobal.daoRm; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveHistory; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voRm.VoExpend; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voRm.VoOpenCloseValve; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voRm.VoOpenClostWechat; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.*; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Param; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @Author liurunyu | 
|---|
|  |  |  | * @Date 2024/2/23 15:42 | 
|---|
|  |  |  | * @LastEditTime 2024/2/23 15:42 | 
|---|
|  |  |  | * @Author: liurunyu | 
|---|
|  |  |  | * @Date: 2024/7/1 15:28 | 
|---|
|  |  |  | * @Description | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Mapper | 
|---|
|  |  |  | public interface RmOpenCloseValveHistoryMapper { | 
|---|
|  |  |  | public interface RmOpenCloseValveHistoryMapper extends BaseMapper<RmOpenCloseValveHistory> { | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * delete by primary key | 
|---|
|  |  |  | * | 
|---|
|  |  |  | 
|---|
|  |  |  | * @return update count | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | int updateByPrimaryKey(RmOpenCloseValveHistory record); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 根据指定条件获取开关阀报历史记录数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getOpenCloseValveReportsCount_history(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 根据指定条件获取开关阀报历史记录 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoOpenCloseValve> getOpenCloseValveReports_history(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内从未开过阀的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getNeverOpenValveIntakesCount(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内从未开过阀的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeUnOpenValve> getNeverOpenValveIntakes(Map<?, ?> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getOpenValveGtIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeOpenCount> getOpenValveGtIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getOpenValveLtIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeOpenCount> getOpenValveLtIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getLargeOpenCountClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数超过指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getLargeOpenCountClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getSmallOpenCountClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内开阀次数低于指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getSmallOpenCountClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水量超过指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getLargeWaterConsumptionClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水量超过指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getLargeWaterConsumptionClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水量低于指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getSmallWaterConsumptionClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水量低于指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getSmallWaterConsumptionClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内消费金额超过指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getLargeAmountSpentClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内消费金额超过指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getLargeAmountSpentClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内消费金额低于指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getSmallAmountSpentClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内消费金额低于指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getSmallAmountSpentClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水时长超过指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getLargeWaterDurationClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水时长超过指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getLargeWaterDurationClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水时长低于指定值的农户数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getSmallWaterDurationClientsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取指定时间段内用水时长低于指定值的农户 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClient> getSmallWaterDurationClients(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段内用水时长超过指定值的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getUseWaterDurationGtValueIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段内用水时长超过指定值的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntakeOpenCount> getUseWaterDurationGtValueIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段 有开阀 无关阀的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getHaveOpenNoCloseIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段 有开阀 无关阀的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntake> getHaveOpenNoCloseIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段 无开阀 有关阀的取水口数量 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getNoOpenHaveCloseIntakesCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 指定时间段 无开阀 有关阀的取水口 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIntake> getNoOpenHaveCloseIntakes(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取水卡消费记录数量,管理平台使用 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getExpendsCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取水卡消费记录,管理平台使用 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoExpend> getExpends(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取物理卡开关阀记录数量,微信小程序使用 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getCardOpenCloseCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取物理卡开关阀记录,微信小程序使用 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoOpenClostWechat> getCardOpenClose(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取虚拟卡开关阀记录数量,微信小程序使用 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | Long getVcCardOpenCloseCount(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取虚拟卡开关阀记录,微信小程序使用 | 
|---|
|  |  |  | * @param params | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoOpenClostWechat> getVcCardOpenClose(Map<String, Object> params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ////////////////////////////////////////// | 
|---|
|  |  |  | //                                      // | 
|---|
|  |  |  | //统计相关                                // | 
|---|
|  |  |  | //                                      // | 
|---|
|  |  |  | ////////////////////////////////////////// | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 以农户、农户IC卡为单位进行统计 | 
|---|
|  |  |  | * @param startDt | 
|---|
|  |  |  | * @param endDt | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoIcConsumeStatistics> statisticsByIc(@Param("startDt")Date startDt, @Param("endDt")Date endDt); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 以农户为单位进行统计 | 
|---|
|  |  |  | * @param startDt | 
|---|
|  |  |  | * @param endDt | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | List<VoClientConsumeStatistics> statisticsByClient(@Param("startDt")Date startDt, @Param("endDt")Date endDt); | 
|---|
|  |  |  | } | 
|---|