using Ropin.Inspection.Model.SearchModel;
using Ropin.Inspection.Model.ViewModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;

namespace Ropin.Inspection.Service.Interface
{
    public interface ITispSpotRouteService : IBaseService<TispSpotsRouteViewModel>, IBaseServiceById<TispSpotsRouteViewModel, Guid>
    {
        Task<IEnumerable<TispSpotsRouteViewModel>> GetByConditionAsync(Expression<Func<TispSpotsRouteViewModel, bool>> expression);
        Task<IEnumerable<TispSpotsRouteViewModel>> GetSpotRoutesAsyncByPage(TispSpotRouteSearchModel searchViewModel);
        Task<IEnumerable<TispSpotsRouteViewModel>> GetSpotsRouteAsyncByPage(TispSpotRouteSearchModel searchViewModel);
        Task UpdateAsync(Guid id, TispContentUpdateViewModel updateModel);
        Task CreateSpotsRoutesAsync(TispSpotRouteCreateViewModel viewModel);
    }
}