package com.qmth.teachcloud.common.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.teachcloud.common.bean.params.BasicCampusParams;
import com.qmth.teachcloud.common.bean.result.BasicCampusResult;
import com.qmth.teachcloud.common.entity.BasicCampus;

import java.util.List;

/**
 * <p>
 * 基础校区表 服务类
 * </p>
 *
 * @author wangliang
 * @since 2021-08-02
 */
public interface BasicCampusService extends IService<BasicCampus> {
    /**
     * 根据学校id查询该学校的基础校区（不分页）
     * @param schoolId 学校id
     * @return 校区结果集
     */
    List<BasicCampusResult> basicCampusList(Long schoolId);

    /**
     * 新增/编辑 校区基础信息
     * @param basicCampusParams 基础校区信息参数
     * @return 新增或编辑的校区id
     */
    Long saveBasicCampus(BasicCampusParams basicCampusParams);

    /**
     * 根据校区id删除校区（物理删除）
     * @param id 要删除的校区主键
     * @return 是否成功
     */
    Boolean removeBasicCampusById(Long id);

    Long getPrintHouseIdBySchoolIdAndCampusName(Long schoolId, String campusName);

    /**
     * 根据班级id集合查找对应的校区
     * @param clazzIdList  班级id集合
     * @param separator 校区连接符
     * @return 连接符连好的校区
     */
    String findCampusNamesByClazzIdList(List<Long> clazzIdList, String separator);
}
