package com.ym.mec.biz.dal.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.ym.mec.biz.dal.dto.CloudTeacherOrderDto;
import com.ym.mec.biz.dal.entity.CloudTeacherOrder;
import com.ym.mec.common.dal.BaseDAO;

public interface CloudTeacherOrderDao extends BaseDAO<Long, CloudTeacherOrder> {
	
	/**
	 * 根据studentPaymentOrder表id查询对象
	 * @param orderId
	 * @return
	 */
	CloudTeacherOrder queryByOrderId(Long orderId);

    /**
     * 获取未生效的云教练订单
     *
     * @return
     */
    List<CloudTeacherOrder> getNoStartCloudTeacherOrder();

    /**
     * 获取学生在有效期内的乐保数量
     *
     * @param studentIds
     * @param musicGroupId
     * @return
     */
    List<CloudTeacherOrder> getStudentCloudTeacherOrders(@Param("studentIds") List<Integer> studentIds, @Param("musicGroupId") String musicGroupId);

    /**
     * 获取乐团报名的云教练订单
     * @param studentId
     * @param musicGroupId
     * @return
     */
    List<CloudTeacherOrder> getStudentCloudTeacherOrder(@Param("studentId") Integer studentId, @Param("musicGroupId") String musicGroupId);
    
    /**
     * 根据订单编号查询订单详情
     * @param orderId
     * @return
     */
    CloudTeacherOrderDto queryOrderInfoByOrderId(Long orderId);
}