package com.srs.dormitory.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.srs.common.core.domain.AjaxResult;
import com.srs.dormitory.domain.DmsCheckoutApplication;
import com.srs.dormitory.domain.Dto.AddDmsOffcampusApplicationDto;
import com.srs.dormitory.domain.Dto.ApplicationListDto;
import com.srs.dormitory.domain.Dto.CheckoutApplicationDto;
import com.srs.dormitory.domain.Dto.StudentDormitoryDto;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 退宿申请表 服务类
 * </p>
 *
 * @author szz
 * @since 2023年07月26日
 */
public interface IDmsCheckoutApplicationService extends IService<DmsCheckoutApplication> {

    /**
     * 学生添加退宿申请
     * @param dto 请求参数
     * @return
     */
    AjaxResult addDormitoryCheckoutApplication(AddDmsOffcampusApplicationDto dto);
    /**
     * 查看退宿申请列表
     * @param params
     * @return
     */
    List<Map<String, Object>> getApplicationList(ApplicationListDto params);

    /**
     * 查看退宿申请表详情
     * @param id 退宿申请表ID
     * @return
     */
    AjaxResult getInfo(Long id);

    /**
     * 批量删除退宿申请
     * @param ids 退宿申请id列表
     * @return
     */
    AjaxResult batchDelete(List<Long> ids);

    /**
     * 学生取消提交申请
     * @param id 申请表id
     * @return
     */
    AjaxResult cancel(Long id);
}
