61 lines
1.7 KiB
C#
61 lines
1.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using trakker.Models;
|
|
using trakker.Interfaces;
|
|
|
|
namespace trakker.Services
|
|
{
|
|
internal class MainCtrl
|
|
{
|
|
private readonly string _connectionString;
|
|
private readonly IMainForm _view;
|
|
|
|
public MainCtrl(IMainForm view, string? connectionString)
|
|
{
|
|
_view = view ?? throw new ArgumentNullException(nameof(view));
|
|
_connectionString = connectionString ?? throw new ArgumentNullException(nameof(connectionString));
|
|
|
|
LoadClients();
|
|
|
|
_view.InitDataGridViewProjects();
|
|
LoadProjects();
|
|
}
|
|
|
|
public BindingSource GetLOV(string source)
|
|
{
|
|
var dbo = new Data.LOVData(_connectionString);
|
|
return new BindingSource { DataSource = dbo.Get(source) };
|
|
}
|
|
public BindingList<Client> GetClients()
|
|
{
|
|
var dbo = new Data.ClientData(_connectionString);
|
|
return dbo.Get();
|
|
}
|
|
internal void LoadClients()
|
|
{
|
|
var clients = GetClients();
|
|
_view.InitDataGridViewClients(clients);
|
|
}
|
|
|
|
public BindingList<Project> GetProjects()
|
|
{
|
|
var dbo = new Data.ProjectData(_connectionString);
|
|
return dbo.Get();
|
|
}
|
|
|
|
internal void LoadProjects()
|
|
{
|
|
var projects = GetProjects();
|
|
foreach (var project in projects)
|
|
{
|
|
var x = project.Status;
|
|
}
|
|
_view.FillDataGridViewProjects(new BindingSource { DataSource = projects });
|
|
}
|
|
}
|
|
}
|