package com.red.circle.order.infra.database.rds.service.order;

import com.red.circle.framework.mybatis.service.BaseService;
import com.red.circle.order.infra.database.rds.dto.AppleRenewalDTO;
import com.red.circle.order.infra.database.rds.entity.order.OrderApplePendingRenewalInfo;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * ios等待订阅信息 服务类
 * </p>
 *
 * @author pengliang
 * @since 2020-04-05
 */
public interface OrderApplePendingRenewalInfoService extends
    BaseService<OrderApplePendingRenewalInfo> {

  /**
   * 保存最新等待续费信息
   *
   * @param orderApplePendingRenewalInfo 参数
   */
  void saveLatestPendingRenewalInfo(OrderApplePendingRenewalInfo orderApplePendingRenewalInfo);


  /**
   * 获取订阅即将过期或已过期单据
   *
   * @param checkDate 检查日期
   * @param lastId    最后一条记录id
   * @param limit     拉去数量
   * @return dto
   */
  List<AppleRenewalDTO> getExpiringSoonReceipt(LocalDateTime checkDate, Long lastId, Integer limit);
}
