public void AddVacationTest()
        {
            var e1 = new EmployeeInfo()
            {
                Surname    = "Kot",
                Name       = "Danil",
                Patronymic = "Ivanovich",
                Birthday   = new DateTime(1978, 6, 25)
            };
            var e2 = new EmployeeInfo()
            {
                Surname    = "Honcharov",
                Name       = "Stanislav",
                Patronymic = "Sergeevich",
                Birthday   = new DateTime(1989, 2, 15)
            };
            var id1 = _repository.AddEmployee(e1);
            var id2 = _repository.AddEmployee(e2);

            var vacation = new VacationInfo()
            {
                Substitutional = _repository.GetEmployeeDetailsById(id1),
                Vacationist    = _repository.GetEmployeeDetailsById(id2),
                StartDate      = new DateTime(2016, 2, 15),
                EndDate        = new DateTime(2016, 3, 15),
            };

            Assert.IsTrue(_repository.AddVacation(vacation) > 0);
        }
Ejemplo n.º 2
0
        public void SetVacation(VacationInfo info)
        {
            var user     = _usersRepository.Get(info.DomainName);
            var vacation = new Vacation(user.UserId, info.Interval.Start, info.Interval.End);

            _vacationsRepository.Add(vacation);
            _vacationsRepository.UnitOfWork.SaveChanges();
        }
Ejemplo n.º 3
0
 private static VacationDto MapVacationInfoToDto(VacationInfo vacationInfo)
 {
     return(new VacationDto
     {
         DateFrom = vacationInfo.DateFrom,
         DateTo = vacationInfo.DateTo
     });
 }
Ejemplo n.º 4
0
        public static async Task <double> BookFlightTotheCountry([ActivityTrigger] VacationInfo vacationInfo, ILogger log)
        {
            try
            {
                await Task.Run(() => throw new Exception("some exception happened"));
            }
            catch (System.Exception ex)
            {
                log.LogError($"Error in booking {vacationInfo.airlinesName} {ex}");
            }

            return(0.0);
        }
Ejemplo n.º 5
0
        public int AddVacation(VacationInfo vacation)
        {
            using (EmployeeContext db = new EmployeeContext())
            {
                var item = db.EmployeesVacations.Add(new EmployeesVacation()
                {
                    Substitutional = db.Employees.FirstOrDefault(x => x.Id == vacation.Substitutional.Id),
                    Vacationist    = db.Employees.FirstOrDefault(x => x.Id == vacation.Vacationist.Id),
                    StartDate      = vacation.StartDate,
                    EndDate        = vacation.EndDate,
                    CreatedOn      = DateTime.Now
                });

                db.SaveChanges();

                return(item.Id);
            }
        }
Ejemplo n.º 6
0
        public List <VacationInfo> GetVacationsByVacationistId(int id, out long totalItems, VacationFilter filter = null)
        {
            filter = filter ?? new VacationFilter();
            using (EmployeeContext db = new EmployeeContext())
            {
                var vacationsList = new List <VacationInfo>();

                totalItems = db.EmployeesVacations.Count(x => x.Vacationist.Id == id);

                foreach (var vacation in db.EmployeesVacations.Include(v => v.Substitutional)
                         .Where(x => x.Vacationist.Id == id &&
                                (filter.StartDateFrom.HasValue ? x.StartDate >= filter.StartDateFrom : true) &&
                                (filter.StartDateTo.HasValue ? x.StartDate <= filter.StartDateTo : true) &&
                                (filter.EndDateFrom.HasValue ? x.EndDate >= filter.EndDateFrom : true) &&
                                (filter.EndDateTo.HasValue ? x.EndDate <= filter.EndDateTo : true)
                                ))
                {
                    var item = new VacationInfo()
                    {
                        Id             = vacation.Id,
                        StartDate      = vacation.StartDate,
                        EndDate        = vacation.EndDate,
                        Substitutional = new EmployeeInfo()
                        {
                            Id         = vacation.Substitutional.Id,
                            Name       = vacation.Substitutional.Name,
                            Surname    = vacation.Substitutional.Surname,
                            Patronymic = vacation.Substitutional.Patronymic,
                            Birthday   = vacation.Substitutional.Birthday
                        }
                    };
                    vacationsList.Add(item);
                }

                return(vacationsList);
            }
        }
Ejemplo n.º 7
0
 public VacationCreated(VacationInfo data)
 {
     Id   = Guid.NewGuid();
     Data = data;
 }
Ejemplo n.º 8
0
 public UpdateVacation(Guid id, VacationInfo data)
 {
     Id = id;
     Data = data;
 }
Ejemplo n.º 9
0
 public CreateVacation(int employeeId, VacationInfo data)
 {
     EmployeeId=employeeId;
     Data = data;
 }
 public static async Task <double> ActivityBookFlight([ActivityTrigger] VacationInfo vacationInfo, ILogger log)
 {
     log.LogInformation($"Flight ticket booked for {vacationInfo.cityName} with the airlines {vacationInfo.airlinesName}");
     return(await Task.FromResult(10000));
 }
Ejemplo n.º 11
0
 public void Update(VacationInfo vacationInfo)
 {
     Status         = MapStatus(vacationInfo.Status);
     VacationPeriod = new VacationPeriod(vacationInfo.Start, vacationInfo.End);
     ApprovedBy     = vacationInfo.ApprovedBy;
 }