diff --git a/src/CalculateurMoyanne/BSN/Bussness.csproj b/src/CalculateurMoyanne/BSN/Bussness.csproj
new file mode 100644
index 0000000..ef6377b
--- /dev/null
+++ b/src/CalculateurMoyanne/BSN/Bussness.csproj
@@ -0,0 +1,14 @@
+
+
+
+ net6.0
+ enable
+ enable
+ AnyCPU;x64
+
+
+
+
+
+
+
diff --git a/src/CalculateurMoyanne/BSN/IDataManager.cs b/src/CalculateurMoyanne/BSN/IDataManager.cs
new file mode 100644
index 0000000..757c9c0
--- /dev/null
+++ b/src/CalculateurMoyanne/BSN/IDataManager.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BSN
+{
+ public interface IDataManager
+ {
+ Task Add(Data data);
+ Task Delete(Data data);
+ Task Update(Data data);
+ Task GetDataWithName(string name);
+ Task> GetAll();
+ }
+}
diff --git a/src/CalculateurMoyanne/BSN/Manager.cs b/src/CalculateurMoyanne/BSN/Manager.cs
new file mode 100644
index 0000000..5008a0e
--- /dev/null
+++ b/src/CalculateurMoyanne/BSN/Manager.cs
@@ -0,0 +1,112 @@
+using ClassCalculateurMoyenne;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BSN
+{
+ public class Manager
+ {
+ #region propriétés
+ public ReadOnlyCollection maquette { get; private set; }
+ private readonly List maquettes = new();
+ public ReadOnlyCollection bloc { get; private set; }
+ private readonly List blocs = new();
+ public ReadOnlyCollection ue { get; private set; }
+ private readonly List ues = new();
+ public ReadOnlyCollection matiere { get; private set; }
+ private readonly List matieres = new();
+
+
+
+ public IDataManager MaquetteDbDataManager => maquetteDbDataManager;
+ private readonly IDataManager maquetteDbDataManager;
+ public IDataManager BlocDbDataManager => blocDbDataManager;
+ private readonly IDataManager blocDbDataManager;
+ public IDataManager UeDbDataManager => ueDbDataManager;
+ private readonly IDataManager ueDbDataManager;
+ public IDataManager MatiereDbDataManager => matiereDbDataManager;
+ private readonly IDataManager matiereDbDataManager;
+
+ #endregion
+
+
+ #region Constructeurs
+
+ public Manager(IDataManager maquettemanager)
+ {
+ this.maquetteDbDataManager = maquettemanager;
+ maquette = new ReadOnlyCollection(maquettes);
+ }
+ public Manager(IDataManagerblocmanager)
+ {
+ this.blocDbDataManager = blocmanager;
+ bloc = new ReadOnlyCollection(blocs);
+ }
+ public Manager(IDataManager UeManager)
+ {
+ this.ueDbDataManager = UeManager;
+ ue = new ReadOnlyCollection(ues);
+ }
+ public Manager(IDataManager matiereDbDataManager)
+ {
+ this.matiereDbDataManager = matiereDbDataManager;
+ matiere = new ReadOnlyCollection(matieres);
+ }
+
+ public Manager(IDataManager matiereManager,IDataManager UeManager, IDataManager blocmanager, IDataManager maquettemanager)
+ {
+ this.matiereDbDataManager = matiereManager;
+ matiere = new ReadOnlyCollection(matieres);
+ this.maquetteDbDataManager = maquettemanager;
+ maquette = new ReadOnlyCollection(maquettes);
+ this.blocDbDataManager = blocmanager;
+ bloc = new ReadOnlyCollection(blocs);
+ this.ueDbDataManager = UeManager;
+ ue = new ReadOnlyCollection(ues);
+ }
+
+ #endregion
+
+ #region Methodes
+
+ public Task AddMaquette(MaquetteModel maqt)
+ {
+ if (maquetteDbDataManager == null)
+ {
+ return Task.FromResult(false);
+ }
+
+ return maquetteDbDataManager.Add(maqt);
+
+ }
+
+ public async Task Deletemqt(MaquetteModel maqt)
+ {
+ if (maquetteDbDataManager == null)
+ {
+ return false;
+ }
+ return await maquetteDbDataManager.Delete(maqt);
+ }
+
+ public async Task UpdateMaquette(MaquetteModel maqt)
+ {
+ if (maquetteDbDataManager == null)
+ {
+ return false;
+ }
+ return await maquetteDbDataManager.Update(maqt);
+ }
+ public async Task> GetAllMaquette()
+ {
+ return await maquetteDbDataManager.GetAll();
+ }
+
+
+ }
+ #endregion
+}