package com.ruoyi.web.modules.booking.service;

import java.util.List;
import com.ruoyi.web.modules.booking.domain.AppBookingResourceQuery;
import com.ruoyi.web.modules.booking.domain.AppBookingSubmitBody;
import com.ruoyi.web.modules.booking.domain.vo.AppBookingDateBookedVo;
import com.ruoyi.web.modules.booking.domain.vo.AppBookingDateVo;
import com.ruoyi.web.modules.booking.domain.vo.AppointmentResourceVo;
import com.ruoyi.web.modules.farming.domain.BizServiceAppointmentReview;

/**
 * 移动端预约服务。
 */
public interface IAppBookingService
{
    List<AppBookingDateVo> selectBookingDateList();

    List<AppointmentResourceVo> selectAppointmentResourceList(AppBookingResourceQuery query);

    List<BizServiceAppointmentReview> selectExpertReviewList(Long expertResourceId);

    Long submitAppointment(AppBookingSubmitBody body, String createBy);

    AppBookingDateBookedVo checkBookedOnDate(Integer providerType, Long providerId, String appointDate,
            String createBy);
}
