TVipCardCustInfoSmapper.java 5.42 KB
package com.zteits.bill.mapper.smapper;

import com.zteits.bill.domain.TVipCardCustInfo;
import com.zteits.bill.domain.TVipNoPushCardCustInfoDO;
import com.zteits.bill.domain.TdBVipCardInfoCheckDayDO;
import com.zteits.bill.domain.VipCardBuyInfoDO;
import com.zteits.bill.domain.sdomain.VipCardCustInfoBuyDO;
import com.zteits.clouds.api.dto.bill.vipcard.VipCardCustInfoDTO;
import com.zteits.clouds.api.dto.bill.vipcard.VipCardExpireWarnPushDTO;
import com.zteits.clouds.api.dto.bill.vipcard.VipCardInfoBuyNumDTO;
import com.zteits.clouds.api.dto.bill.vipcard.param.QueryVipCardBuyInfoForPageRequest;
import com.zteits.clouds.api.dto.bill.vipcard.param.QueryVipCardCustInfoByCustIdRequest;
import com.zteits.clouds.api.dto.bill.vipcard.param.VipCardCustInfoBuyReq;
import com.zteits.clouds.api.dto.bill.vipcard.param.VipCardInfoReq;
import com.zteits.clouds.api.dto.bill.whitelist.param.QueryCarNumIsWhitelistRequest;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface TVipCardCustInfoSmapper {
	/**
	 * 用户购买会员卡记录.<br/>
	 * @param request
	 * @return
	 */
	List<VipCardCustInfoBuyDO> queryVipCardCustInfoForList(VipCardCustInfoBuyReq request);

	/**
	 * 批量保存用户购买会员卡记录.<br/>
	 * @param tVipCardCustInfo
	 * @return
	 * @throws Exception
	 */
	Integer batchSaveVipCardCustInfo(@Param("vipCardCustInfoList") List<TVipCardCustInfo> list);
	/**
	 * 根据客户id查询个人购买会员卡记录
	 * @param request
	 * @return
	 * 2017年11月2日 langlw
	 */
	List<TVipCardCustInfo>  queryVipCardCustInfoByCustId(QueryVipCardCustInfoByCustIdRequest request);

	/**
	 * 通过车牌/停车场编码查询车辆是否购买会员卡.<br/>
	 * @param request
	 * @return
	 * 2017年11月17日  wangfs.<br/>
	 */
	TVipCardCustInfo queryCarNumIsBuyVipCard(@Param("request") QueryCarNumIsWhitelistRequest request,@Param("currentDate") String currentDate);

	/**
	 * 查询未同步给你第三方的会员卡
	 * @return
	 */
	List<TVipNoPushCardCustInfoDO> queryNoPustVipCardCustInfo(@Param("currentDate")String currentDate,@Param("id") Long id);

	/**
	 * 查询同步和未同步给你第三方的会员卡
	 * @return
	 */
	List<TVipNoPushCardCustInfoDO> queryPustVipCardCustInfo(@Param("currentDate")String currentDate,@Param("id") Long id);
	/**
	 * 是否重复办理
	 * @param record
	 * @return
	 * 2018年6月4日  wangfs.<br/>
	 */
	int queryNoPustVipCardCustInfoByCarNum(TVipCardCustInfo record);

	/**
	 * 分页查询-会员卡记录(订单管理->会员卡记录页面)
	 * @param request
	 * @return
	 * 2018年1月17日  wangfs.<br/>
	 */
	List<VipCardBuyInfoDO> queryVipCardBuyInfoForPage(QueryVipCardBuyInfoForPageRequest request);

	/**
	 * 账单管理-->底层会员卡数据查询.<br/>
	 * 获取时间段内会员卡购买汇总.<br/>
	 * @param beginTime
	 * @param endTime
	 * @return
	 * 2018年1月23日  wangfs.<br/>
	 */
	List<TdBVipCardInfoCheckDayDO> queryVipCardForPerson(@Param("beginTime") String beginTime, @Param("endTime") String endTime);

	/**
	 * 通过
	 * @param tVipCardCustInfo
	 * @return
	 * 2018年1月24日 xiejp
	 */
	int updateVipCardCustInfoByCustCardNo(TVipCardCustInfo tVipCardCustInfo);

	/**
	 * 通过cust_card_no 查询记录是否已存在
	 * @param custCardNo
	 * @return
	 * Mar 19, 2018 hxz
	 */
	int selectVipCardCustInfoByCustCardNo(@Param("beginTime") String custCardNo);

	/**
	 * 查询未下发给艾润优惠券的车牌信息
	 * @param date
	 * @return
	 * 2018年3月30日 zhaowg
	 */
	List<TVipNoPushCardCustInfoDO> queryCouponNoPushInfo(String date);

	/**
	 * 通过card_no 查询记录是否已存在
	 * @param cardNo
	 * @return
	 * 2018年9月4日 wangfei
	 */
	int selectVipCardCustInfoByCardNo(@Param("cardNo") String cardNo);


	TVipCardCustInfo queryCardCustInfoBycustCardNo(@Param("custCardNo") String custCardNo);
	/**
	 * 根据失效时间查询会员卡信息
	 * @Auther: wangfs
	 * @param
	 * @return
	 */
	List<VipCardExpireWarnPushDTO> queryVipCardByExpireDate(@Param("beginTime")String beginTime, @Param("endTime")String endTime);

	/**
	 * 根据停车场编号,车牌号码获取当前有效车会员车信息
	 * @param request
	 * @author: zegnqc
	 * @return
	 */
    TVipCardCustInfo queryCardCustInfoByParkcodeAndCarnumber(VipCardInfoReq request);

	/**
	 * 据停车场编号与车牌号码查询该车所有有效的会员卡记录,包括已过期数据
	 *
	 * @param plNo      停车场编号
	 * @param carNumber 车牌号码
	 * @return 所有的有效会员卡信息列表(包括已过期数据)
	 */
	List<VipCardCustInfoDTO> queryAllCardCustInfoByParkcodeAndCarnumber(@Param("plNo")String plNo, @Param("carNumber")String carNumber);

	List<VipCardCustInfoDTO> queryAllCardCustInfoByCardNoAndCarnumber(@Param("cardNo")String cardNo, @Param("carNumber")String carNumber);


    List<TVipCardCustInfo> queryAllActiveInfo(VipCardInfoReq request);
	/**
	 * 重置会员卡更新次数
	 * @param updateNum
	 * @return
	 */
	int resetVipCardUpdateNum(@Param("updateNum") Integer updateNum);
	/**
	 * 检验会员卡购买数量
	 * @Auther: wangfs
	 * @param
	 * @return
	 */
	VipCardInfoBuyNumDTO checkVipCarBuyNum(@Param("cardNo") String cardNo, @Param("startTime") Date startTime, @Param("endTime")Date endTime);

	/**
	 * 根据开始日期定向查询当前生效会员卡(供续费前卡校验使用)
	 * @param requestVip
	 * @return
	 */
	List<VipCardCustInfoDTO> queryParentCard(QueryVipCardCustInfoByCustIdRequest requestVip);
}