Exemplo n.º 1
0
        public void Seed_Database()
        {
            using (BenefitsContext db = new BenefitsContext())
            {
                var employeeFamily = new Employee()
                {
                    EmployeeName = "Bob",
                    BenefitCost  = 1000,
                    Dependents   = new List <Dependent>
                    {
                        new Dependent {
                            DependentName = "Judy", BenefitCost = 500
                        },
                        new Dependent {
                            DependentName = "Alfred", BenefitCost = 450
                        },
                        new Dependent {
                            DependentName = "Susan", BenefitCost = 500
                        }
                    }
                };

                // save data to db
                db.SaveChanges();
                db.Dispose();
            }
        }
Exemplo n.º 2
0
        public void CalculateTotalBenefitsCostTest()
        {
            var context      = new BenefitsContext();
            var paycheckCalc = new PaycheckCalc();

            context.Employees.Add(new Employee {
                EmployeeName = "Ali", BenefitCost = 900
            });
            context.SaveChanges();
            var employeeRec = context.Employees.Where(e => e.EmployeeName == "Ali").SingleOrDefault();

            context.Dependents.Add(new Dependent {
                DependentName = "Az", BenefitCost = 450, Employee = employeeRec
            });
            context.Dependents.Add(new Dependent {
                DependentName = "JJ", BenefitCost = 500, Employee = employeeRec
            });
            context.SaveChanges();

            paycheckCalc.CalculateTotalBenefitsCost("Ali");
            employeeRec = context.Employees.Where(e => e.EmployeeName == "Ali").SingleOrDefault();

            Assert.AreEqual(71, employeeRec.TotalBenefitCosts);
            Assert.AreEqual(1850, employeeRec.YearlyTotalBenefitsCost);
        }
 public async Task <List <BenefitRule> > GetAllRules()
 {
     using (var db = new BenefitsContext())
     {
         return(await db.Rules
                .ToListAsync());
     }
 }
 public async Task <Employee> GetEmployeeByIdAsync(int employeeId)
 {
     using (var db = new BenefitsContext())
     {
         return(await db.Employees
                .FirstOrDefaultAsync(x => x.EmployeeId == employeeId));
     }
 }
        public async Task <BenefitCategory> GetBenefitCategoryByTypeAsync(BenefitType benefitType)
        {
            var benefitCategoryId = Convert.ToInt32(benefitType);

            using (var db = new BenefitsContext())
            {
                return(await db.BenefitCategories
                       .FirstOrDefaultAsync(x => x.BenefitCategoryId == benefitCategoryId));
            }
        }
        public async Task <Employee> CreateEmployeeAsync(Employee employee)
        {
            using (var db = new BenefitsContext())
            {
                db.Employees.Add(employee);
                await db.SaveChangesAsync();

                return(await GetEmployeeByIdAsync(employee.EmployeeId));
            }
        }
 public async Task <List <Employee> > GetAllEmployeesAsync()
 {
     using (var db = new BenefitsContext())
     {
         return(await db.Employees
                .Include(x => x.BenefitCategories)
                .Include(x => x.Dependents)
                .Include(x => x.Dependents.Select(y => y.BenefitCategories))
                .ToListAsync());
     }
 }
Exemplo n.º 8
0
        public void CalculateEmployeeBenefitsCostTest()
        {
            var context      = new BenefitsContext();
            var paycheckCalc = new PaycheckCalc();

            paycheckCalc.CalculateEmployeeBenefitsCost("Ali");

            var employeeRec = context.Employees.Where(e => e.EmployeeName == "Ali").SingleOrDefault();

            Assert.AreEqual(900, employeeRec.BenefitCost);
        }
Exemplo n.º 9
0
        public void CalculateYearlySalaryInfo()
        {
            var context      = new BenefitsContext();
            var paycheckCalc = new PaycheckCalc();

            context.Employees.Add(new Employee {
                EmployeeName = "Ali", YearlyTotalBenefitsCost = 1850
            });
            context.SaveChanges();

            paycheckCalc.CalculateYearlySalaryInfo("Ali");
            var employeeRec = context.Employees.Where(e => e.EmployeeName == "Ali").SingleOrDefault();

            Assert.AreEqual(52000, employeeRec.YearlySalary);
            Assert.AreEqual(52000 - 1850, employeeRec.YearlyNetPay);
        }
Exemplo n.º 10
0
        public void CalculateSalaryInfoTest()
        {
            var context      = new BenefitsContext();
            var paycheckCalc = new PaycheckCalc();

            context.Employees.Add(new Employee {
                EmployeeName = "Ali", TotalBenefitCosts = 71
            });
            context.SaveChanges();

            paycheckCalc.CalculateSalaryInfo("Ali");
            var employeeRec = context.Employees.Where(e => e.EmployeeName == "Ali").SingleOrDefault();

            Assert.AreEqual(2000, employeeRec.Salary);
            Assert.AreEqual(2000 - 71, employeeRec.NetPay);
        }
Exemplo n.º 11
0
        private void PrepareData()
        {
            using (var db = new BenefitsContext())
            {
                db.Database.CreateIfNotExists();
                db.Employees.Add(new Employee()
                {
                    FirstName = "FirstName",
                    LastName  = "LastName"
                });
                db.Employees.Add(new Employee()
                {
                    FirstName = "FirstName",
                    LastName  = "LastName"
                });

                db.SaveChanges();
            }
        }
Exemplo n.º 12
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory,
                              BenefitsContext ctx)
        {
            loggerFactory.AddNLog();

            app.UseCors(options => options.AllowAnyOrigin().AllowAnyOrigin().AllowAnyHeader());

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler();
            }

            SeedData(ctx);
            app.UseStatusCodePages();
            app.UseMvc();
        }
Exemplo n.º 13
0
        public void CalculateDependentBenefitsCostTest()
        {
            var context      = new BenefitsContext();
            var paycheckCalc = new PaycheckCalc();

            context.Employees.Add(new Employee {
                EmployeeName = "Ali", BenefitCost = 900
            });
            context.SaveChanges();

            var familyList = new List <string>();

            familyList.Add("Az");
            familyList.Add("JJ");
            paycheckCalc.CalculateDependentBenefitsCost("Ali", familyList);

            var dependentRecs   = context.Dependents.Where(e => e.Employee.EmployeeName == "Ali");
            var dependentsArray = dependentRecs.ToArray();

            Assert.AreEqual(450, dependentsArray[0].BenefitCost);
            Assert.AreEqual(500, dependentsArray[1].BenefitCost);
        }
Exemplo n.º 14
0
 public GetAllEmployeesHandler(BenefitsContext db)
 {
     _db = db;
 }
Exemplo n.º 15
0
        private void SeedData(BenefitsContext ctx)
        {
            var People = new List <Person>()
            {
                new Person()
                {
                    PersonId    = 1,
                    FirstName   = "Fred",
                    LastName    = "Flintstone",
                    DateOfBirth = DateTime.Parse("1/2/1960"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 2,
                    FirstName   = "Wilma",
                    LastName    = "Flintstone",
                    DateOfBirth = DateTime.Parse("1/2/1965"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 3,
                    FirstName   = "Barney",
                    LastName    = "Rubble",
                    DateOfBirth = DateTime.Parse("1/2/1962"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 4,
                    FirstName   = "Conrad",
                    LastName    = "Hailstone",
                    DateOfBirth = DateTime.Parse("1/2/1995"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 5,
                    FirstName   = "Stony",
                    LastName    = "Curtis",
                    DateOfBirth = DateTime.Parse("3/2/1965"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 6,
                    FirstName   = "Rock",
                    LastName    = "Hudstone",
                    DateOfBirth = DateTime.Parse("4/2/1965"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 7,
                    FirstName   = "Daisy",
                    LastName    = "Kilgranite",
                    DateOfBirth = DateTime.Parse("5/2/1985"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                },
                new Person()
                {
                    PersonId    = 8,
                    FirstName   = "Jackie",
                    LastName    = "Kennerock",
                    DateOfBirth = DateTime.Parse("6/2/1975"),
                    IsEmployee  = true,
                    PayPeriods  = 26,
                    Salary      = 2000
                }
            };

            ctx.People.AddRange(People);

            var RecipTypes = new List <BenefitRecipientType>()
            {
                new BenefitRecipientType()
                {
                    BenefitRecipientTypeId = 1,
                    Cost        = 1000,
                    Description = "Employee annual benefit cost",
                    Label       = "Employee"
                },
                new BenefitRecipientType()
                {
                    BenefitRecipientTypeId = 2,
                    Cost        = 500,
                    Description = "Dependent annual benefit cost",
                    Label       = "Dependent"
                }
            };

            ctx.BenefitRecipientTypes.AddRange(RecipTypes);

            var Discs = new List <Discount>()
            {
                new Discount()
                {
                    DiscountId     = 1,
                    DiscountName   = "Name begins with 'A'",
                    Condition      = "startswith('A')",
                    Field          = "name",
                    Expression     = "{cost} - ({cost} * .1)",
                    DiscountAmount = 0.1m
                }
            };

            ctx.Discounts.AddRange(Discs);

            ctx.Meta.Add(new Meta());

            ctx.SaveChanges();
        }
Exemplo n.º 16
0
 public BenefitsRepository(BenefitsContext benesCtx)
 {
     _ctx = benesCtx;
 }
Exemplo n.º 17
0
 public EmployeeRepo(BenefitsContext benefitsContext)
 => this.benefitsContext = benefitsContext;
Exemplo n.º 18
0
 public CompanyService(BenefitsContext benefitsContext)
 {
     _benefitsContext = benefitsContext;
 }
Exemplo n.º 19
0
 public UserService(BenefitsContext benefitsContext)
 {
     _benefitsContext = benefitsContext;
 }
 public AddNewEmployeeHandler(BenefitsContext db, IMapper mapper)
 {
     _db     = db;
     _mapper = mapper;
 }