package com.ym.mec.biz.service;

import com.ym.mec.biz.dal.enums.GroupType;

import java.math.BigDecimal;

/**
 * @Author Joburgess
 * @Date 2020/2/17
 **/
public interface GroupClassService {

    /**
     * @describe 删除课程组信息
     * @author Joburgess
     * @date 2020/2/17
     * @param groupId: 课程组编号
     * @param groupType: 课程组类型
     * @return boolean
     */
    boolean deleteAllGroupInfo(String groupId, GroupType groupType);

    /**
     * @describe 删除课程组信息
     * @author Joburgess
     * @date 2020/2/17
     * @param groupId: 课程组编号
     * @param groupType: 课程组类型
     * @return boolean
     */
    boolean deleteGroupOtherInfo(String groupId, GroupType groupType);

    /**
     * @describe 清理课程组相关信息
     * @author Joburgess
     * @date 2020/2/17
     * @param groupId: 课程组编号
     * @param groupType: 课程组类型
     * @return boolean
     */
    boolean cleanGroupInfo(String groupId, GroupType groupType);

    /**
     * @describe 隐藏课程组相关信息
     * @author Joburgess
     * @date 2020/2/17
     * @param groupId: 课程组编号
     * @param groupType: 课程组类型
     * @return boolean
     */
    boolean hideGroupInfo(String groupId, GroupType groupType);

    /**
     * @describe 关闭课程组
     * @author Joburgess
     * @date 2020/3/4
     * @param groupId: 课程组编号
     * @param groupType: 课程组类型
     * @param refundAmount: 退款金额
     * @return void
     */
    void cancelGroup(Long groupId, GroupType groupType, BigDecimal refundAmount);

}
