You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
CShark/Business/ManagerAddEdit.cs

104 lines
2.5 KiB

using Modèle;
using Persistance;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Business
{
public class ManagerAddEdit
{
public ReadOnlyCollection<Requin> RequinsEdit { get; private set; }
public ReadOnlyCollection<Requin> RequinsAdd { get; private set; }
private List<Requin> requinsAdd = new List<Requin>();
private List<Requin> requinsEdit = new List<Requin>();
public Requin SelectedRequin { get; set; }
public IPersistanceManager Pers { get; set; }
public ManagerAddEdit(IPersistanceManager pers)
{
RequinsEdit = new ReadOnlyCollection<Requin>(requinsEdit);
RequinsAdd = new ReadOnlyCollection<Requin>(requinsAdd);
Pers = pers;
}
public void LoadRequins()
{
requinsEdit.Clear();
requinsEdit.AddRange(Pers.LoadRequinsEdit());
requinsAdd.Clear();
requinsAdd.AddRange(Pers.LoadRequinsAdd());
SelectedRequin = null;
}
public void SaveRequins()
{
Pers.SaveRequinsEdit(requinsEdit);
Pers.SaveRequinsAdd(requinsAdd);
}
public bool AjouterRequinEdit(Requin req)
{
if (requinsEdit.Contains(req))
{
return false;
}
requinsEdit.Add(req);
return true;
}
public bool SupprimerRequinEdit(Requin req)
{
if (!requinsEdit.Contains(req))
{
return false;
}
requinsEdit.Remove(req);
return true;
}
public bool AjouterRequinAdd(Requin req)
{
if (requinsAdd.Contains(req))
{
return false;
}
requinsAdd.Add(req);
return true;
}
public bool SupprimerRequinAdd(Requin req)
{
if (!requinsAdd.Contains(req))
{
return false;
}
requinsAdd.Remove(req);
return true;
}
public Requin GetRequinEdit(Requin req)
{
return requinsEdit.SingleOrDefault(r => r.Equals(req));
}
public Requin GetRequinAdd(Requin req)
{
return requinsAdd.SingleOrDefault(r => r.Equals(req));
}
}
}