package com.palmnest.service.dorm.manager;

import com.palmnest.application.bean.Page;
import com.palmnest.application.dto.input.DormRoomerListDto;
import com.palmnest.application.dto.output.WxDormCheckOutDto;
import com.palmnest.model.dorm.DormCheckOut;
import com.palmnest.service.GenericManager;

import java.util.List;

/**
 * 退宿申请单manager类
 *
 * @author longmeizhen
 */
public interface DormCheckOutManager extends GenericManager<DormCheckOut, Long> {

	/**
	 * 获取退宿申请列表
	 *
	 * @param dto      查询条件
	 * @param pageNo
	 * @param pageSize
	 * @return
	 */
	public Page getDormCheckOutList(DormRoomerListDto dto, int pageNo, int pageSize);

	/**
	 * 获取该用户的退宿申请列表
	 *
	 * @param openId
	 * @return
	 */
	public List<WxDormCheckOutDto> getCheckOutList(String orgId, String idCard, String mobile);

	/**
	 * 判断该项目下该用户是否还存在未处理完的退房信息
	 *
	 * @param openId
	 * @param orgId
	 * @return
	 */
	public int hasCheckOutByStatus(String orgId, String idCard, String mobile);

	/**
	 * 获取退宿申请status状态下的数量
	 */
	public int getDormCheckOutIndex(String status, String orgIds);
}
