PIbd-21_MasenkinMS_SUBD_Rou.../RouteGuide/RouteGuideContracts/BusinessLogicsContracts/IRouteLogic.cs
2024-04-09 13:48:30 +04:00

72 lines
2.1 KiB
C#

using RouteGuideContracts.BindingModels;
using RouteGuideContracts.SearchModels;
using RouteGuideContracts.ViewModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace RouteGuideContracts.BusinessLogicsContracts
{
/// <summary>
/// Интерфейс для описания работы бизнес-логики для маршрутов
/// </summary>
public interface IRouteLogic
{
/// <summary>
/// Получение списка
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
List<RouteViewModel>? ReadList(RouteSearchModel? model);
/// <summary>
/// Получение списка из заданного количества элементов
/// </summary>
/// <param name="count"></param>
/// <returns></returns>
List<RouteViewModel>? ReadList(int count);
/// <summary>
/// Получение отдельной записи
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
RouteViewModel? ReadElement(RouteSearchModel model);
/// <summary>
/// Создание записи
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
bool Create(RouteBindingModel model);
/// <summary>
/// Изменение записи
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
bool Update(RouteBindingModel model);
/// <summary>
/// Удаление записи
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
bool Delete(RouteBindingModel model);
/// <summary>
/// Удаление записи
/// </summary>
/// <returns></returns>
bool Delete();
/// <summary>
/// Удаление всех записей
/// </summary>
/// <returns></returns>
int Clear();
}
}