/// <summary>
 /// Gets the tax return list.
 /// </summary>
 /// <returns></returns>
 /// <exception cref="ApplicationException">Repository GetTaxReturns</exception>
 public IList <ITaxReturn> GetTaxReturnList()
 {
     try
     {
         using (var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
         {
             var list = AgentOfDeductionQueries.GetTaxReturnList(dbContext).ToList();
             return(list);
         }
     }
     catch (Exception e)
     {
         throw new ApplicationException("Repository GetTaxReturns", e);
     }
 }
 /// <summary>
 /// Gets the tax report.
 /// </summary>
 /// <param name="BVN">The BVN.</param>
 /// <param name="YearCreated">The date created.</param>
 /// <returns></returns>
 /// <exception cref="ApplicationException">Repository GetTaxReport</exception>
 public IList <ITaxReport> GetTaxReport(string BVN, string YearCreated)
 {
     try
     {
         using (var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
         {
             var list = AgentOfDeductionQueries.GetTaxReport(dbContext, BVN, YearCreated).ToList();
             return(list);
         }
     }
     catch (Exception e)
     {
         throw new ApplicationException("Repository GetTaxReport", e);
     }
 }
 /// <summary>
 /// Gets the branch by jurisdiction.
 /// </summary>
 /// <param name="jurisdictionId">The jurisdiction identifier.</param>
 /// <returns></returns>
 /// <exception cref="ApplicationException">Repository GetTaxReturns</exception>
 public IList <IBranch> GetBranchByJurisdiction(int jurisdictionId)
 {
     try
     {
         using (var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
         {
             var list = AgentOfDeductionQueries.GetBranchByJurisdictionId(dbContext, jurisdictionId).ToList();
             return(list);
         }
     }
     catch (Exception e)
     {
         throw new ApplicationException("Repository GetTaxReturns", e);
     }
 }
        /// <summary>
        /// Gets the branch description by value.
        /// </summary>
        /// <param name="description">The description.</param>
        /// <returns></returns>
        /// <exception cref="System.ApplicationException">Repository GetBranchDescriptionByValue</exception>
        public IBranch GetBranchDescriptionByValue(string description)
        {
            try
            {
                var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext();
                {
                    var aRecord = AgentOfDeductionQueries.getBranchDescriptionByValue(dbContext, description);

                    return(aRecord);
                }
            }
            catch (Exception e)
            {
                throw new ApplicationException("Repository GetBranchDescriptionByValue", e);
            }
        }
        /// <summary>
        /// Gets the agent ofdeduction branch byranch identifier.
        /// </summary>
        /// <param name="branchId">The branch identifier.</param>
        /// <returns></returns>
        /// <exception cref="ApplicationException">Repository GetAgentOfDeductionBranch</exception>
        public IAgentOfDeductionBranch GetAgentOfdeductionBranchByranchId(int branchId)

        {
            try
            {
                using (var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
                {
                    var list = AgentOfDeductionQueries.GetAgentOfDeductionByBranchId(dbContext, branchId);
                    return(list);
                }
            }
            catch (Exception e)
            {
                throw new ApplicationException("Repository GetAgentOfDeductionBranch", e);
            }
        }
        /// <summary>
        /// Gets the agent ofdeduction branch.
        /// </summary>
        /// <param name="agentOfDeductionId">The agent of deduction identifier.</param>
        /// <returns></returns>
        /// <exception cref="System.ApplicationException">Repository GetAgentOfDeductionBranch</exception>
        public IList <IBranch> GetAgentOfdeductionBranch(int agentOfDeductionId)

        {
            try
            {
                using (var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
                {
                    var list = AgentOfDeductionQueries.GetAgentofDeductionBranch(dbContext, agentOfDeductionId).ToList();
                    return(list);
                }
            }
            catch (Exception e)
            {
                throw new ApplicationException("Repository GetAgentOfDeductionBranch", e);
            }
        }
        /// <summary>
        /// Gets the branch by identifier.
        /// </summary>
        /// <param name="Id">The identifier.</param>
        /// <returns></returns>
        /// <exception cref="System.ApplicationException">Repository GetBranchById</exception>
        public IBranch GetBranchById(int Id)
        {
            try
            {
                using (
                    var dbContext = (PitalyticsEntities)this.dbContextFactory.GetDbContext())
                {
                    var aRecord =
                        AgentOfDeductionQueries.GetBranchById(dbContext, Id);

                    return(aRecord);
                }
            }
            catch (Exception e)
            {
                throw new ApplicationException("Repository GetBranchById", e);
            }
        }