|  |  | 
 |  |  |  | 
 |  |  | import com.baomidou.mybatisplus.core.mapper.BaseMapper; | 
 |  |  | import com.dy.pipIrrGlobal.pojoSe.SeClientCard; | 
 |  |  | import com.dy.pipIrrGlobal.voSe.VoCardInfo; | 
 |  |  | import com.dy.pipIrrGlobal.voSe.VoCards; | 
 |  |  | import com.dy.pipIrrGlobal.voSe.*; | 
 |  |  | import com.dy.pipIrrGlobal.voSt.VoCardUsage; | 
 |  |  | import com.dy.pipIrrGlobal.voWe.VoCards3; | 
 |  |  | import org.apache.ibatis.annotations.Mapper; | 
 |  |  | import org.apache.ibatis.annotations.Param; | 
 |  |  |  | 
 |  |  | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * @author ZhuBaoMin | 
 |  |  |  * @date 2023/12/22 16:04 | 
 |  |  |  * @LastEditTime 2023/12/22 16:04 | 
 |  |  |  * @date 2025-06-06 10:21 | 
 |  |  |  * @LastEditTime 2025-06-06 10:21 | 
 |  |  |  * @Description | 
 |  |  |  */ | 
 |  |  |  | 
 |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 依据水卡地址获取水卡编号(12月19日废弃) | 
 |  |  |      * 2024-06-30取消废弃,恢复使用 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  | 
 |  |  |      * @param cardNum | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Map getCardIdAndClientNum(@Param("cardNum") String cardNum); | 
 |  |  |     Map getCardIdAndClientNum(@Param("cardNum") Long cardNum); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据农户主键获取水卡列表 | 
 |  |  |      * 根据水卡编号获取水卡对应的农户id和姓名 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @param cardNum | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Map getClientIdAndNameByCardAddrAndCardNo(@Param("cardAddr") String cardAddr, @Param("cardNum") Long cardNum); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 得到水卡对象 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @param cardNum | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCardInfo1> getCardsByAddrAndNum(@Param("cardAddr") String cardAddr, @Param("cardNum") Long cardNum); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据农户主键获取水卡列表(物理卡+虚拟卡) | 
 |  |  |      * @param clientId | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCards> getCards(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取已挂失,未补卡的记录数量,应用程序使用 | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Long getUnreplacedRecordCount(); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取已挂失,未补卡的记录,应用程序使用 | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCards> getUnreplaced(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据指定水卡编号获取挂失记录数量(补卡、解锁使用) | 
 |  |  |      * @param cardNum | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Integer getLostCount(@Param("cardNum") Long cardNum); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据指定水卡编号获取已补卡数量(补卡、解锁使用) | 
 |  |  |      * @param cardNum 水卡编号 | 
 |  |  |      * @return 符合条件记录数,最多一条 | 
 |  |  |      */ | 
 |  |  |     Integer getReplacedCount(@Param("cardNum") Long cardNum); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据农户姓名和手机号获取水卡列表记录数,应用程序使用 | 
 |  |  |      * @param params | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Long getCardsByClientNameAndPhoneCount(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据农户姓名和手机号获取水卡列表,应用程序使用 | 
 |  |  |      * @param params | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCards2> getCardsByClientNameAndPhone(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据农户ID查询正常状态的水卡列表,小程序使用 | 
 |  |  |      * @param clientId | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCards3> getCardsByClientID(String clientId); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 更新实体卡剩余金额 | 
 |  |  |      * @param id | 
 |  |  |      * @param money | 
 |  |  |      */ | 
 |  |  |     void updateMoney(@Param("id")Long id , @Param("money")Double money); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      *当前余额总量(物理卡) | 
 |  |  |      * @param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Double getTotalMoneyIcCards(); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据水卡地址获取水卡数量,用来判断该卡是否允许开卡,无效卡片排除在外 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Long getCountByCardAddr(String cardAddr); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据水卡地址获取指定状态的水卡数量,用来判断该卡是否允许开卡 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Long getCountByCardAddrAndState(String cardAddr); | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取指定时间段水卡使用情况记录数量 | 
 |  |  |      * @param params | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCardUsage> getCardUsagesCount(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取指定时间段水卡使用情况:充值合计、消费合计、余额 | 
 |  |  |      * @param params | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     List<VoCardUsage> getCardUsages(Map<?, ?> params); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取指定时间段内水卡充值总计 | 
 |  |  |      * @param timeStart | 
 |  |  |      * @param timeStop | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Float getTotalRecharge(@Param("timeStart")String timeStart, @Param("timeStop")String timeStop); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取指定时间段内水卡消费总计 | 
 |  |  |      * @param timeStart | 
 |  |  |      * @param timeStop | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Float getTotalConsumption(@Param("timeStart")String timeStart, @Param("timeStop")String timeStop); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 依据水卡地址将最后一条无效状态的指定操作记录改为有效 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @param operateType | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Integer turnCardValidByAddr(@Param("cardAddr")String cardAddr, @Param("operateType")Integer operateType); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 充值机用根据订单号将水卡改为有效 | 
 |  |  |      * @param orderNumber | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Integer turnCardValidByOrderNumber(@Param("orderNumber")String orderNumber); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 根据水卡ID获取原水卡ID,补卡通知中使用 | 
 |  |  |      * @param cardId | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Long getOriginalCardIdByCardId(@Param("cardId") Long cardId); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 充值机用根据补卡的订单号将挂失水卡余额置零 | 
 |  |  |      * @param orderNumber | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     Integer emptyCardBalance(@Param("orderNumber")String orderNumber); | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 充值机用获取农户水卡信息 | 
 |  |  |      * @param cardAddr | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     VoTermCard getTermCardInfo(@Param("cardAddr")String cardAddr); | 
 |  |  | } |