public HolidayRequest(TimeSpan holidayPeriod, INotifier notifier, IDaysOffManager daysOffManager) { _notifier = notifier; _daysOffManager = daysOffManager; HolidayPeriod = holidayPeriod; HolidayRequestStatus = new New(); Number = Guid.NewGuid().ToString(); }
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)); })); }