TVipAreaCardCustInfoDao.java 7.33 KB
package com.zteits.bill.dao;

import com.github.pagehelper.PageInfo;
import com.zteits.bill.domain.TVipAreaCardCustInfo;
import com.zteits.bill.domain.TVipAreaCardCustInfoExample;
import com.zteits.bill.domain.TVipNoPushCardCustInfoDO;
import com.zteits.clouds.api.dto.bill.dto.TVipAreaCardCustInfoDTO;
import com.zteits.clouds.api.dto.bill.param.DeleteAreaCardByCustCardNoReq;
import com.zteits.clouds.api.dto.bill.param.TVipAreaCardCustInfoQueryRequest;
import com.zteits.clouds.api.dto.bill.param.TVipAreaCardCustInfoRequest;
import com.zteits.clouds.api.dto.bill.param.ValidVipAreaCardCustInfoRequest;
import com.zteits.clouds.api.dto.bill.vipcard.param.QueryIsBuyVipCardCustReq;
import com.zteits.clouds.api.dto.bill.vipcard.param.QueryVipCardOrderDetailTotalReq;
import com.zteits.clouds.api.dto.bill.vipcard.param.VipAreaCardExpireRequest;
import com.zteits.clouds.api.dto.bill.vipcard.param.VipCardInfoReq;
import com.zteits.clouds.api.dto.order.vipcardorder.dto.OrderVipAreacardDetailTotalDTO;
import com.zteits.clouds.api.dto.order.vipcardorder.dto.ParkVipAreaCardNumDTO;

import java.util.List;

public interface TVipAreaCardCustInfoDao {

    /**
     * 保存
     * @param tVipAreaCardCustInfo
     * @return
     */
    int saveTVipAreaCardCustInfo(TVipAreaCardCustInfo tVipAreaCardCustInfo);


    /**
     * 动态更新
     * @param record 需要更新的信息
     * @param example 更新时的where条件
     * @return
     */
    int updateByExampleSelective(TVipAreaCardCustInfo record, TVipAreaCardCustInfoExample example);


    /**
     * 根据主键更新
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(TVipAreaCardCustInfo record);

    /**
     * 动态查询
     * @param example
     * @return
     */
    List<TVipAreaCardCustInfo> selectByExample(TVipAreaCardCustInfoExample example);

    /**
     * 根据主键查询
     * @param id
     * @return
     */
    TVipAreaCardCustInfo queryByPrimaryKey(Long id);

    /**
     * 根据个人卡编码
     * @Auther: wangfs
     * @param
     * @return
     */
    TVipAreaCardCustInfo queryByPersonCardNO(String personCardNo);

    /**
     * 动态查询
     * @param request
     * @return
     */
    List<TVipAreaCardCustInfo> queryTVipAreaCardCustInfo(TVipAreaCardCustInfoRequest request);

    /**
     * 逻辑批量删除
     * @param ids
     * @param opId
     * @param opName
     * @return
     */
    int batchDeleteTVipAreaCardCustInfoByPrimaryKey(List<Long> ids, String opId, String opName);

    /**
     * 动态分页查询
     * @param request
     * @return
     */
    PageInfo<TVipAreaCardCustInfoDTO> queryTVipAreaCardCustInfoForPage(TVipAreaCardCustInfoQueryRequest request);

    /**
     * 根据车牌号查询区域卡信息
     * @param request
     * @return
     */
    List<TVipAreaCardCustInfoDTO> queryVipAreaCardInfoByCarNumbers(TVipAreaCardCustInfoQueryRequest request);

    /**
     * APP根据车牌号查询区域卡信息
     * @param request
     * @return
     */
    List<TVipAreaCardCustInfoDTO> queryVipAreaCardInfoByCarNumbersForApp(TVipAreaCardCustInfoQueryRequest request);

    /**
     * 根据个人卡编码更新个人卡状态
     *
     * @param request
     * @return
     */
    Boolean updateByPersonCardNo(String personCardNo);

    /**
     * 查询未推送给第三发的会员卡
     * @param currentDate yyyy-MM-dd HH:mm:ss
     * @return
     */
    List<TVipNoPushCardCustInfoDO> queryNoPustVipCardCustInfo(String currentDate, Long id);

    /**
     * 查询推送以及未推送的区域会员卡
     * @param currentDate
     * @param id
     * @return
     */
    List<TVipNoPushCardCustInfoDO> queryPustVipCardCustInfo(String currentDate, Long id);

    /**
     * 查询用户是否购买区域卡
     * @param request
     * @return
     */
    Boolean queryIsBuyVipCardCust(QueryIsBuyVipCardCustReq request);

    /**
     * 按照终端来源、卡类型 查询会员卡汇总信息
     * @param request
     * @return
     */
    List<OrderVipAreacardDetailTotalDTO> queryVipAreaCardStatisticTotal(QueryVipCardOrderDetailTotalReq request);

    /**
     * 根据车场编码查询购买的区域卡(非失效)数量(车场编号-卡数量)
     * @param plNo
     * @return
     */
    ParkVipAreaCardNumDTO queryParkVipAreaCardNumByPlNo(String plNo,Long orgId);

    /**
     * 查询即将到期的区域卡
     * @param
     * @return
     * @Author: xiejianpeng
     * @Date: 2020/4/8 18:52
     *
     */
    List<TVipAreaCardCustInfo> queryExpireVipCardCustInfo(VipAreaCardExpireRequest vipPushRequest);

    /***********************************************时域卡************************************/

    /**
     * 动态分页查询
     * @param request
     * @return
     */
    PageInfo<TVipAreaCardCustInfoDTO> queryTVipTimeCardCustInfoForPage(TVipAreaCardCustInfoQueryRequest request);

    /**
     * 根据车牌号查询时域卡信息
     * @param request
     * @return
     */
    List<TVipAreaCardCustInfoDTO> queryVipTimeCardInfoByCarNumbers(TVipAreaCardCustInfoQueryRequest request);

    /**
     * APP根据车牌号查询时域卡信息
     * @param request
     * @return
     */
    List<TVipAreaCardCustInfoDTO> queryVipTimeCardInfoByCarNumbersForApp(TVipAreaCardCustInfoQueryRequest request);


    /**
     * 查询用户是否购买时域卡
     * @param request
     * @return
     */
    Boolean queryIsBuyTimeVipCardCust(QueryIsBuyVipCardCustReq request);

    /**
     * 按照终端来源、卡类型 查询时域卡会员卡汇总信息
     * @param request
     * @return
     */
    List<OrderVipAreacardDetailTotalDTO> queryVipTimeCardStatisticTotal(QueryVipCardOrderDetailTotalReq request);


    /**
     * 查询即将到期的时域卡
     * @param
     * @return
     * @Author: xiejianpeng
     * @Date: 2020/4/8 18:52
     *
     */
    List<TVipAreaCardCustInfo> queryExpireTimeVipCardCustInfo(VipAreaCardExpireRequest vipPushRequest);

    /**
     * 根据车牌号查询当月购买的时域卡总次数和总时长
     * @param request
     * @return
     */
    TVipAreaCardCustInfo queryTimeCardBuyTimesByCarNumber(ValidVipAreaCardCustInfoRequest request);

    /**
     * 平台删除区域卡,将区域卡置为失效
     * @param request
     * @return
     */
    int updateAreaCardInvalid(DeleteAreaCardByCustCardNoReq request);

    /**
     * 根据到期时间查询区域卡
     * @param
     * @return
     * @Author: wangfs
     * @Date: 2020/4/8 18:24
     *
     */
    List<TVipAreaCardCustInfo> queryVipCardCustInfoByExpDate(VipAreaCardExpireRequest vipPushRequest);

    /**
     * 查询全域卡的生效的购买记录
     * @param
     * @return
     * @Author: xiejianpeng
     * @Date: 2020/9/14 16:19
     */
    List<TVipAreaCardCustInfo> queryTVipAreaCardCustInfoListByAreaCardType(TVipAreaCardCustInfoRequest request);

    /**
     * 根据停车场编号与车牌号码查询当前有效的会员车信息
     * @param request
     * @return
     */
    TVipAreaCardCustInfo queryCardCustInfoByParkcodeAndCarnumber(VipCardInfoReq request);

    /**
     * 据停车场编号与车牌号码查询该车所有有效的会员卡记录,包括已过期数据
     * @Author: zegnqc
     * @return
     */
    List<TVipAreaCardCustInfo> queryAllAreaVipCardByParkcodeAndCarnumber(VipCardInfoReq request);

    List<TVipAreaCardCustInfo> queryAllActiveInfo(TVipAreaCardCustInfoRequest request);
}