Exemple #1
0
 public HolidayRequest(TimeSpan holidayPeriod, INotifier notifier, IDaysOffManager daysOffManager)
 {
     _notifier            = notifier;
     _daysOffManager      = daysOffManager;
     HolidayPeriod        = holidayPeriod;
     HolidayRequestStatus = new New();
     Number = Guid.NewGuid().ToString();
 }
Exemple #2
0
        public HolidayRequestRepository(IDaysOffManager daysOffManager, INotifier notifier)
        {
            _daysOffManager = daysOffManager;
            _notifier       = notifier;

            _mapper = new Mapper(new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <HolidayRequestEntity, HolidayRequest>()
                .ForMember(request => request.HolidayRequestStatus, m => m.ResolveUsing((entity, account) =>
                {
                    var status = typeof(IHolidayRequestState).GetConcreteChild(entity.Status);
                    return((IHolidayRequestState)Activator.CreateInstance(status));
                }));

                cfg.CreateMap <HolidayRequest, HolidayRequestEntity>()
                .ForMember(request => request.Status, m => m.ResolveUsing((request, entity) => request.HolidayRequestStatus.GetType().Name));
            }));
        }