package beilv.admissionticket.mapper;

import beilv.admissionticket.domain.AdmissionTicket;
import beilv.bootacourse.domain.BootACourseBO;
import org.apache.ibatis.annotations.Param;

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

public interface AdmissionTicketMapper {
    int insertAdmissionTicketToList(List<AdmissionTicket> ticketList);

    /**
     * 查询约球购票
     *
     * @param id 约球购票主键
     * @return 约球购票
     */
    public AdmissionTicket selectBeilvAdmissionTicketById(String id);

    /**
     * 查询约球购票列表
     *
     * @param AdmissionTicket 约球购票
     * @return 约球购票集合
     */
    public List<AdmissionTicket> selectBeilvAdmissionTicketList(AdmissionTicket AdmissionTicket);

    /**
     * 新增约球购票
     *
     * @param AdmissionTicket 约球购票
     * @return 结果
     */
    public int insertBeilvAdmissionTicket(AdmissionTicket AdmissionTicket);

    /**
     * 修改约球购票
     *
     * @param AdmissionTicket 约球购票
     * @return 结果
     */
    public int updateBeilvAdmissionTicket(AdmissionTicket AdmissionTicket);

    /**
     * 删除约球购票
     *
     * @param id 约球购票主键
     * @return 结果
     */
    public int deleteBeilvAdmissionTicketById(String id);

    /**
     * 批量删除约球购票
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBeilvAdmissionTicketByIds(String[] ids);

    void updateTicketStatus(@Param("ids") List<String> ids, @Param("ticketStatus") String ticketStatus);

    boolean isOk(BootACourseBO course);

    Map<String, Object> getThresholdValue(@Param("ticketId") String ticketId);
}
