using DepartmentBusinessLogic.BindingModels;
using DepartmentBusinessLogic.BusinessLogics;
using DepartmentBusinessLogic.ViewModels;
using DesktopTools.Controls;
using DesktopTools.Helpers;
using DesktopTools.Interfaces;
using DesktopTools.Models;
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace DepartmentWindowsDesktop.EntityControls
{
///
/// Реализация контрола для учебного плана
///
public partial class ControlAcademicPlanElement :
GenericControlEntityElement,
IGenericControlEntityElement
{
public ControlAcademicPlanElement()
{
InitializeComponent();
Title = "Учебный план";
ControlId = new Guid("bdba8fca-4c38-49cf-89b0-4906c4aa7aa3");
_genericControlViewEntityElement = this;
}
public IControl GetInstanceGenericControl() => new ControlAcademicPlanElement() { ControlId = Guid.NewGuid() };
public ControlViewEntityElementConfiguration GetConfigControl() => new()
{
ControlOnMoveElem = new Dictionary
{
{ "ToolStripMenuItemLoadPlan", ("Загрузить план", (object sender, EventArgs e) => { LoadPlx(); }) }
}
};
///
/// Загрузка учебного плана
///
private void LoadPlx()
{
if (_element != null)
{
var dialog = new OpenFileDialog
{
Filter = "plx|*.plx"
};
if (dialog.ShowDialog() == DialogResult.OK)
{
var result = _businessLogic.LoadPlx(new AcademicPlanLoadPlxModel
{
AcademicPlanId = _element.Id,
FileName = dialog.FileName
});
if (result)
{
DialogHelper.MessageInformation("Загрузка прошла успешно", "Результат");
}
else
{
DialogHelper.MessageException(_businessLogic.Errors, $"Ошибки при загрузке плана");
}
}
}
}
}
}