diff --git a/COA.EnterpriseServices.DataAccess/Helpers/CreditorHelper.cs b/COA.EnterpriseServices.DataAccess/Helpers/CreditorHelper.cs index bbff02c..8fc5041 100644 --- a/COA.EnterpriseServices.DataAccess/Helpers/CreditorHelper.cs +++ b/COA.EnterpriseServices.DataAccess/Helpers/CreditorHelper.cs @@ -1,18 +1,45 @@ using COA.EnterpriseServices.DataAccess.Entities; using System.Collections.Generic; +using System.Linq; namespace COA.EnterpriseServices.DataAccess.Helpers { - public class CreditorHelper : BaseHelper + // NOTE: This example does NOT use BaseHelper<> if you wish to manage it yourself + // It allows for multiple DataAccessManagers to be used however needed by the helper + public class CreditorHelper { + private static DataAccessManager creditorDataAccess; + private static DataAccessManager settlementAttemptDataAccess; + + public CreditorHelper() + { + creditorDataAccess = new DataAccessManager(); + settlementAttemptDataAccess = new DataAccessManager(); + } + + public Creditor GetCreditor(int id) + { + return creditorDataAccess.Invoke(d => d.Get(d => d.Id == id).FirstOrDefault()); + } + + public SettlementAttempt GetSettlementAttempt(int id) + { + return settlementAttemptDataAccess.Invoke(d => d.Get(d => d.Id == id).FirstOrDefault()); + } + public ICollection FindByName(string name) { - return DataAccessManager.Invoke(d => d.Get(c => c.ClientFirstName.Contains(name) || c.ClientLastName.Contains(name))); + return creditorDataAccess.Invoke(d => d.Get(c => c.ClientFirstName.Contains(name) || c.ClientLastName.Contains(name))); } public ICollection FindByStatus(string status) { - return DataAccessManager.Invoke(d => d.Get(c => c.Status == status)); + return creditorDataAccess.Invoke(d => d.Get(c => c.Status == status)); + } + + public bool AddCreditor(Creditor creditor) + { + return creditorDataAccess.Invoke(d => d.Add(creditor)); } } } diff --git a/COA.EnterpriseServices.Sandbox/Program.cs b/COA.EnterpriseServices.Sandbox/Program.cs index 1a697c3..4a271ff 100644 --- a/COA.EnterpriseServices.Sandbox/Program.cs +++ b/COA.EnterpriseServices.Sandbox/Program.cs @@ -16,7 +16,7 @@ namespace COA.EnterpriseServices.Sandbox var creditorHelper = new CreditorHelper(); // get single creditor - var singleCreditor = creditorHelper.Get(1); + var singleCreditor = creditorHelper.GetCreditor(1); // search creditors var searchedCreditors = creditorHelper.FindByName("Guy"); @@ -31,7 +31,7 @@ namespace COA.EnterpriseServices.Sandbox Status = "Active" }; - creditorHelper.Add(newCreditor); + creditorHelper.AddCreditor(newCreditor); } private static void ClientStuff()