Exemplo n.º 1
0
        private Guid CreateClientEmployeePlanActionStructure(Guid employeeId, Guid clientId, bool isPlanValid)
        {
            var from = isPlanValid ? DateTime.Today.AddDays(-10) : DateTime.Today.AddDays(5);

            var plan = new IndividualPlan();

            plan.ClientId       = clientId;
            plan.ValidFromDate  = from;
            plan.ValidUntilDate = DateTime.Today.AddDays(10);
            DataContext.IndividualPlans.Add(plan);

            var agreedActionTomorrow = new AgreedClientAction();

            agreedActionTomorrow.IndividualPlanId = plan.Id;
            agreedActionTomorrow.EmployeeId       = employeeId;
            agreedActionTomorrow.Day = DateTime.Today.DayOfWeek;
            agreedActionTomorrow.PlannedStartTime = DateTime.Now.AddHours(1).TimeOfDay;

            var agreedActionYesterday = new AgreedClientAction();

            agreedActionYesterday.IndividualPlanId = plan.Id;
            agreedActionYesterday.EmployeeId       = employeeId;
            agreedActionYesterday.Day = DateTime.Today.AddDays(-1).DayOfWeek;
            agreedActionYesterday.PlannedStartTime = DateTime.Now.AddHours(1).TimeOfDay;

            DataContext.AgreedClientActions.AddRange(new[] { agreedActionTomorrow, agreedActionYesterday });

            return(agreedActionTomorrow.Id);
        }
Exemplo n.º 2
0
        public void UpdateIndividualPlan(IndividualPlan plan)
        {
            var queriedPlan = DataContext.IndividualPlans.Find(plan.Id);

            queriedPlan.ValidUntilDate = plan.ValidUntilDate;
            queriedPlan.ValidFromDate  = plan.ValidFromDate;
            queriedPlan.ClientId       = plan.ClientId;
            DataContext.SaveChanges();
        }
        private IndividualPlan MapUpdateDtoToIndividualPlan(IndividualPlanCreateUpdateDTO dto)
        {
            var plan = new IndividualPlan();

            if (dto.Id.HasValue)
            {
                plan.Id = dto.Id.Value;
            }

            plan.ClientId       = dto.ClientId;
            plan.ValidFromDate  = dto.ValidFrom;
            plan.ValidUntilDate = dto.ValidUntil;

            return(plan);
        }
        // Mappers
        private IndividualPlanDTO MapIndividualPlanWithActionsToDto(IndividualPlan plan, List <AgreedClientAction> actions)
        {
            var actionsForDays = new List <AgreedActionsForDayDTO>();

            var actionsGrouped = actions.GroupBy(a => a.Day);

            foreach (var group in actionsGrouped)
            {
                var day           = group.Key;
                var actionsForDay = new AgreedActionsForDayDTO();
                actionsForDay.Day = day;

                var actionsDtos = new List <AgreedActionBasicDTO>();
                foreach (var action in group)
                {
                    var agreedActionDto = new AgreedActionBasicDTO();
                    agreedActionDto.Id = action.Id;
                    agreedActionDto.EstimatedDurationMinutes        = action.EstimatedDurationMinutes;
                    agreedActionDto.ClientActionSpecificDescription = action.ClientActionSpecificDescription;
                    agreedActionDto.PlannedStartTime = DateTime.Today.Add(action.PlannedStartTime);
                    agreedActionDto.PlannedEndTime   = DateTime.Today.Add(action.PlannedStartTime.Add(TimeSpan.FromMinutes(action.EstimatedDurationMinutes)));

                    var actionDto = new ActionDTO();
                    actionDto.Id = action.ActionId;
                    actionDto.GeneralDescription = action.Action.GeneralDescription;
                    actionDto.Name = action.Action.Name;

                    agreedActionDto.Action = actionDto;
                    actionsDtos.Add(agreedActionDto);
                }

                actionsDtos = actionsDtos.OrderBy(a => a.PlannedStartTime).ToList();
                actionsForDay.AgreedActions = actionsDtos.ToArray();
                actionsForDays.Add(actionsForDay);
            }

            var planDto = new IndividualPlanDTO();

            planDto.Id            = plan.Id;
            planDto.ValidFrom     = plan.ValidFromDate;
            planDto.ValidUntil    = plan.ValidUntilDate;
            planDto.ActionsForDay = actionsForDays.ToArray();

            return(planDto);
        }
Exemplo n.º 5
0
        private void CreateIndividualPlansWithAgreedClientActions()
        {
            var individualPlans       = new List <IndividualPlan>();
            var agreedClientActions   = new List <AgreedClientAction>();
            var firstDayOfCurrentYear = new DateTime(DateTime.Today.Year, 1, 1);
            var lastDayOfCurrentYear  = new DateTime(DateTime.Today.Year, 12, 31);

            var individualPlanClient = new IndividualPlan();

            individualPlanClient.ClientId       = _clientIds[0];
            individualPlanClient.ValidFromDate  = firstDayOfCurrentYear;
            individualPlanClient.ValidUntilDate = lastDayOfCurrentYear;
            individualPlans.Add(individualPlanClient);

            var client0Bathing = new AgreedClientAction();

            client0Bathing.ActionId = _actionIds[0];
            client0Bathing.EstimatedDurationMinutes = 60;
            client0Bathing.IndividualPlanId         = individualPlanClient.Id;
            client0Bathing.Day = DayOfWeek.Monday;
            client0Bathing.PlannedStartTime = TimeSpan.FromHours(8);
            agreedClientActions.Add(client0Bathing);

            var client0Bathing1 = new AgreedClientAction();

            client0Bathing1.ActionId = _actionIds[1];
            client0Bathing1.EstimatedDurationMinutes = 60;
            client0Bathing1.IndividualPlanId         = individualPlanClient.Id;
            client0Bathing1.Day = DayOfWeek.Thursday;
            client0Bathing1.PlannedStartTime = TimeSpan.FromHours(8);
            agreedClientActions.Add(client0Bathing1);

            var client0Cleaning = new AgreedClientAction();

            client0Cleaning.ActionId = _actionIds[1];
            client0Cleaning.EstimatedDurationMinutes = 30;
            client0Cleaning.IndividualPlanId         = individualPlanClient.Id;
            client0Cleaning.Day = DayOfWeek.Monday;
            client0Cleaning.PlannedStartTime = TimeSpan.FromHours(9);
            agreedClientActions.Add(client0Cleaning);

            var client0Cleaning1 = new AgreedClientAction();

            client0Cleaning1.ActionId = _actionIds[1];
            client0Cleaning1.EstimatedDurationMinutes = 30;
            client0Cleaning1.IndividualPlanId         = individualPlanClient.Id;
            client0Cleaning1.Day = DayOfWeek.Thursday;
            client0Cleaning1.PlannedStartTime = TimeSpan.FromHours(9);
            agreedClientActions.Add(client0Cleaning1);

            var client0GroceryShopping = new AgreedClientAction();

            client0GroceryShopping.ActionId = _actionIds[2];
            client0GroceryShopping.EstimatedDurationMinutes = 60;
            client0GroceryShopping.IndividualPlanId         = individualPlanClient.Id;
            client0GroceryShopping.Day = DayOfWeek.Wednesday;
            client0GroceryShopping.PlannedStartTime = TimeSpan.FromHours(8);
            agreedClientActions.Add(client0GroceryShopping);

            var individualPlanClient1 = new IndividualPlan();

            individualPlanClient1.ClientId       = _clientIds[1];
            individualPlanClient1.ValidFromDate  = firstDayOfCurrentYear;
            individualPlanClient1.ValidUntilDate = lastDayOfCurrentYear;
            individualPlans.Add(individualPlanClient1);

            var client1GroceryShopping = new AgreedClientAction();

            client1GroceryShopping.ActionId = _actionIds[2];
            client1GroceryShopping.EstimatedDurationMinutes = 60;
            client1GroceryShopping.IndividualPlanId         = individualPlanClient1.Id;
            client1GroceryShopping.Day = DayOfWeek.Tuesday;
            client1GroceryShopping.PlannedStartTime = TimeSpan.FromHours(8);
            agreedClientActions.Add(client1GroceryShopping);

            var client1Transportation = new AgreedClientAction();

            client1Transportation.ActionId = _actionIds[4];
            client1Transportation.EstimatedDurationMinutes = 120;
            client1Transportation.IndividualPlanId         = individualPlanClient1.Id;
            client1Transportation.Day = DayOfWeek.Tuesday;
            client1Transportation.PlannedStartTime = TimeSpan.FromHours(9);
            agreedClientActions.Add(client1Transportation);

            var client1Errands = new AgreedClientAction();

            client1Errands.ActionId = _actionIds[5];
            client1Errands.EstimatedDurationMinutes = 60;
            client1Errands.IndividualPlanId         = individualPlanClient1.Id;
            client1Errands.Day = DayOfWeek.Tuesday;
            client1Errands.PlannedStartTime = TimeSpan.FromHours(1);
            agreedClientActions.Add(client1Errands);

            var individualPlanClient2 = new IndividualPlan();

            individualPlanClient2.ClientId       = _clientIds[2];
            individualPlanClient2.ValidFromDate  = firstDayOfCurrentYear;
            individualPlanClient2.ValidUntilDate = lastDayOfCurrentYear;
            individualPlans.Add(individualPlanClient2);

            var client2Cleaning = new AgreedClientAction();

            client2Cleaning.ActionId = _actionIds[1];
            client2Cleaning.EstimatedDurationMinutes = 30;
            client2Cleaning.IndividualPlanId         = individualPlanClient2.Id;
            client2Cleaning.Day = DayOfWeek.Monday;
            client2Cleaning.PlannedStartTime = TimeSpan.FromHours(10);
            agreedClientActions.Add(client2Cleaning);

            var client2Cleaning2 = new AgreedClientAction();

            client2Cleaning2.ActionId = _actionIds[1];
            client2Cleaning2.EstimatedDurationMinutes = 30;
            client2Cleaning2.IndividualPlanId         = individualPlanClient2.Id;
            client2Cleaning2.Day = DayOfWeek.Wednesday;
            client2Cleaning2.PlannedStartTime = TimeSpan.FromHours(9).Add(TimeSpan.FromMinutes(30));
            agreedClientActions.Add(client2Cleaning2);

            var individualPlanClient3 = new IndividualPlan();

            individualPlanClient3.ClientId       = _clientIds[3];
            individualPlanClient3.ValidFromDate  = firstDayOfCurrentYear;
            individualPlanClient3.ValidUntilDate = lastDayOfCurrentYear;
            individualPlans.Add(individualPlanClient3);

            var client3Errands = new AgreedClientAction();

            client3Errands.ActionId = _actionIds[3];
            client3Errands.EstimatedDurationMinutes = 120;
            client3Errands.IndividualPlanId         = individualPlanClient3.Id;
            client3Errands.Day = DayOfWeek.Friday;
            client3Errands.PlannedStartTime = TimeSpan.FromHours(8);
            agreedClientActions.Add(client2Cleaning);

            var client3DrugShopping = new AgreedClientAction();

            client3DrugShopping.ActionId = _actionIds[3];
            client3DrugShopping.EstimatedDurationMinutes = 60;
            client3DrugShopping.IndividualPlanId         = individualPlanClient3.Id;
            client3DrugShopping.Day = DayOfWeek.Friday;
            client3DrugShopping.PlannedStartTime = TimeSpan.FromHours(10);
            agreedClientActions.Add(client3DrugShopping);

            var individualPlanClient5 = new IndividualPlan();

            individualPlanClient5.ClientId       = _clientIds[5];
            individualPlanClient5.ValidFromDate  = firstDayOfCurrentYear;
            individualPlanClient5.ValidUntilDate = lastDayOfCurrentYear;
            individualPlans.Add(individualPlanClient5);

            var client5Bathing = new AgreedClientAction();

            client5Bathing.ActionId = _actionIds[0];
            client5Bathing.EstimatedDurationMinutes = 60;
            client5Bathing.IndividualPlanId         = individualPlanClient5.Id;
            client5Bathing.Day = DayOfWeek.Monday;
            client5Bathing.PlannedStartTime = TimeSpan.FromHours(11);
            agreedClientActions.Add(client5Bathing);

            foreach (var agreedClientAction in agreedClientActions)
            {
                agreedClientAction.EmployeeId = _dcEmployeeId;
            }

            _dataContext.IndividualPlans.AddRange(individualPlans);
            _dataContext.AgreedClientActions.AddRange(agreedClientActions);
            _dataContext.SaveChanges();
        }
Exemplo n.º 6
0
 public void CreateIndividualPlan(IndividualPlan plan)
 {
     DataContext.IndividualPlans.Add(plan);
     DataContext.SaveChanges();
 }