using DepartmentContract.BindingModels;
using DepartmentContract.Logics.IGenericEntityLogic;
using DepartmentContract.ViewModels;
using System;
using ToolsDesktop.Controls;
using ToolsDesktop.Interfaces;
using ToolsDesktop.Models;
using ToolsModule.ManagmentSecurity;

namespace DepartmentWindowsDesktop.EntityControls
{
    /// <summary>
    /// Реализация контрола для списка приказов
    /// </summary>
    public partial class ControlOrderList :
		GenericControlEntityList<OrderGetBindingModel, OrderSetBindingModel, OrderListViewModel, OrderViewModel, IOrderLogic>,
		IGenericControlEntityList
	{
		public ControlOrderList()
		{
			InitializeComponent();
			Title = "Приказы";
			ControlId = new Guid("a3ba1b6e-934b-4d91-aa9a-3bcd80a929ba");
			AccessOperation = AccessOperation.Приказы;
			ControlViewEntityElement = new ControlOrderElement();
			_genericControlViewEntityList = this;
		}

		public IControl GetInstanceGenericControl() => new ControlOrderList() { ControlId = Guid.NewGuid() };

		public ControlViewEntityListConfiguration GetConfigControl() => new()
		{
			PaginationOn = false
		};
	}
}