Переделал все формы на логику

This commit is contained in:
Никита Потапов 2024-05-15 02:53:44 +04:00
parent c11711a5f3
commit 379e7f4cdb
6 changed files with 36 additions and 15 deletions

View File

@ -1,12 +1,16 @@
using MedicalDatabaseContracts;
using MedicalDatabaseContracts.Models;
using MedicalDatabaseContracts.SearchModels;
using MedicalDatabaseContracts.ViewModels;
using Microsoft.Extensions.Logging;
namespace MedicalView.Diagnoses
{
public class FormDiagnoses : FormAbstractList<Diagnose>
public class FormDiagnoses : FormAbstractList<Diagnose, DiagnoseViewModel, DiagnoseSearchModel>
{
public FormDiagnoses(ILogger<FormAbstractList<Diagnose>> logger, IStorage<Diagnose> storage) : base(logger, storage)
public FormDiagnoses(
ILogger<FormDiagnoses> logger,
ILogic<Diagnose, DiagnoseViewModel, DiagnoseSearchModel> logic) : base(logger, logic)
{
Text = "Список диагнозов";
}

View File

@ -1,12 +1,16 @@
using MedicalDatabaseContracts;
using MedicalDatabaseContracts.Models;
using MedicalDatabaseContracts.SearchModels;
using MedicalDatabaseContracts.ViewModels;
using Microsoft.Extensions.Logging;
namespace MedicalView.Doctors
{
public class FormDoctors : FormAbstractList<Doctor>
public class FormDoctors : FormAbstractList<Doctor, DoctorViewModel, DoctorSearchModel>
{
public FormDoctors(ILogger<FormAbstractList<Doctor>> logger, IStorage<Doctor> storage) : base(logger, storage)
public FormDoctors(
ILogger<FormDoctors> logger,
ILogic<Doctor, DoctorViewModel, DoctorSearchModel> logic) : base(logger, logic)
{
Text = "Список врачей";
}

View File

@ -1,6 +1,6 @@
namespace MedicalView
{
partial class FormAbstractList<T>
partial class FormAbstractList<M, V, S>
{
/// <summary>
/// Required designer variable.

View File

@ -1,18 +1,23 @@
using MedicalDatabaseContracts;
using MedicalDatabaseContracts.Models;
using MedicalDatabaseContracts.SearchModels;
using MedicalDatabaseContracts.ViewModels;
using Microsoft.Extensions.Logging;
namespace MedicalView
{
public partial class FormAbstractList<T> : Form where T : AbstractModel
public partial class FormAbstractList<M, V, S> : Form
where M : AbstractModel
where V : AbstractViewModel
where S : AbstractSearchModel
{
protected ILogger _logger;
protected IStorage<T> _storage;
public FormAbstractList(ILogger<FormAbstractList<T>> logger, IStorage<T> storage)
protected ILogic<M, V, S> _logic;
public FormAbstractList(ILogger<FormAbstractList<M, V, S>> logger, ILogic<M, V, S> logic)
{
InitializeComponent();
_logger = logger;
_storage = storage;
_logic = logic;
}
private void FormAbstractList_Load(object sender, EventArgs e)
@ -46,11 +51,11 @@ namespace MedicalView
try
{
long elapsed;
var items = _storage.GetAll(out elapsed);
var items = _logic.ReadList(null, out elapsed);
dataGridView.DataSource = items;
dataGridView.Columns["Id"].DisplayIndex = 0;
foreach (DataGridViewTextBoxColumn column in dataGridView.Columns)
foreach (DataGridViewColumn column in dataGridView.Columns)
{
if (column.Name.Contains("Id"))
{

View File

@ -1,12 +1,16 @@
using MedicalDatabaseContracts;
using MedicalDatabaseContracts.Models;
using MedicalDatabaseContracts.SearchModels;
using MedicalDatabaseContracts.ViewModels;
using Microsoft.Extensions.Logging;
namespace MedicalView.Patients
{
public class FormPatients : FormAbstractList<Patient>
public class FormPatients : FormAbstractList<Patient, PatientViewModel, PatientSearchModel>
{
public FormPatients(ILogger<FormAbstractList<Patient>> logger, IStorage<Patient> storage) : base(logger, storage)
public FormPatients(
ILogger<FormPatients> logger,
ILogic<Patient, PatientViewModel, PatientSearchModel> logic) : base(logger, logic)
{
Text = "Список пациентов";
}

View File

@ -1,12 +1,16 @@
using MedicalDatabaseContracts;
using MedicalDatabaseContracts.Models;
using MedicalDatabaseContracts.SearchModels;
using MedicalDatabaseContracts.ViewModels;
using Microsoft.Extensions.Logging;
namespace MedicalView.Specializations
{
public class FormSpecializations : FormAbstractList<Specialization>
public class FormSpecializations : FormAbstractList<Specialization, SpecializationViewModel, SpecializationSearchModel>
{
public FormSpecializations(ILogger<FormAbstractList<Specialization>> logger, IStorage<Specialization> storage) : base(logger, storage)
public FormSpecializations(
ILogger<FormSpecializations> logger,
ILogic<Specialization, SpecializationViewModel, SpecializationSearchModel> logic) : base(logger, logic)
{
Text = "Список специализаций";
}