package com.srs.dormitory.service;

import com.srs.common.core.domain.AjaxResult;
import com.srs.common.core.page.TableDataInfo;
import com.srs.dormitory.domain.DmsForeignDormitory;
import com.baomidou.mybatisplus.extension.service.IService;

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

/**
 * <p>
 * 外来人员宿舍关联表 服务类
 * </p>
 *
 * @author szz
 * @since 2023年08月04日
 */
public interface IDmsForeignDormitoryService extends IService<DmsForeignDormitory> {

    /**
     * 添加外来人员宿舍关联
     * @param dormitoryId 宿舍id
     * @param bedId 床位id
     * @param applicationId 申请表id
     * @return
     */
    AjaxResult addForeignDormitory(Long dormitoryId, Long bedId, Long applicationId);

    /**
     * 查看外来人员宿舍关联列表
     * @param buildingName 宿舍楼名字
     * @param applicationName 申请人姓名
     * @param contactName 校内联系人姓名
     * @return
     */
    List<Map<String,Object>> getForeignDormitoryList(String buildingName, String applicationName, String contactName);

    /**
     * 删除外来人员宿舍关联
     * @param id 外来人员宿舍关联id
     * @return
     */
    AjaxResult deleteForeignDormitory(Long id);

    /**
     * 修改外来人员宿舍关联
     * @param id 关联id
     * @param dormitoryId 宿舍id
     * @param bedId 床位id
     * @return
     */
    AjaxResult updateForeignDormitory(Long id, Long dormitoryId, Long bedId);

    /**
     * 批量删除外来人员宿舍关联
     * @param ids 关联id列表
     * @return
     */
    AjaxResult batchDeleteForeignDormitory(List<Long> ids);
}
