/// <summary> /// Actualiza una campaña /// </summary> /// <param name="pCampaignDTO">Campaña a actualizar</param> public void Update(CampaignDTO pCampaignDTO) { IUnitOfWork iUnitOfWork = new UnitOfWork(new DigitalSignageDbContext()); CampaignMapper campaignMapper = new CampaignMapper(); Campaign campaign = new Campaign(); Campaign oldCampaign = new Campaign(); campaignMapper.MapToModel(pCampaignDTO, campaign); oldCampaign = iUnitOfWork.campaignRepository.Get(pCampaignDTO.id); //actualiza los datos oldCampaign.name = campaign.name; oldCampaign.initTime = campaign.initTime; oldCampaign.endTime = campaign.endTime; oldCampaign.initDate = campaign.initDate; oldCampaign.endDate = campaign.endDate; oldCampaign.imagesList.Clear(); oldCampaign.imagesList = campaign.imagesList; oldCampaign.interval = campaign.interval; iUnitOfWork.Complete(); cLogger.Info("Campaña actualizada"); }
public void GivenACampaign_WhenToDto_ThenReturnCampaignDtoObjectWithSameProperties() { //given var campaign = new CampaignBuilder() .WithId(Guid.NewGuid()) .WithName("testName") .WithClient("testClient") .WithStatus(CampaignStatus.Active) .WithStartDate(DateTime.Today.AddDays(5)) .WithClassStartDate(DateTime.Today.AddDays(5)) .WithComment("testComment") .Build(); var campaignMapper = new CampaignMapper(); //when var newDto = campaignMapper.ToDto(campaign); //then Assert.Equal(campaign.Id.ToString(), newDto.Id); Assert.Equal(campaign.Name, newDto.Name); Assert.Equal(campaign.Client, newDto.Client); Assert.Equal(campaign.Status, newDto.Status); Assert.Equal(campaign.StartDate, newDto.StartDate); Assert.Equal(campaign.ClassStartDate, newDto.ClassStartDate); Assert.Equal(campaign.Comment, newDto.Comment); }
private CampaignsController SetupController() { var samples = CampaignSamples.Get().Select(model => CampaignMapper.ToEntity(model)).ToList(); var dataStore = new MockCampaignStore(samples); var manager = new CampaignManager(dataStore); return(new CampaignsController(manager, logger: null)); }
public ActionResult <IEnumerable <Campaign> > GetAll() { var result = _campaignManager.GetAll(); if (result.IsInvalid) { return(new StatusCodeResult(500)); } return(result.Object .Select(entity => CampaignMapper.ToModel(entity)) .ToList()); }
public void GivenCampaignToCampaignDTOReturn_WhenCreatingACampaignDTOReturnFromCampaign_ThenCampaignDTOReturnIsCreated() { Campaign campaign = Campaign.CreateNewCampaign( "java", "vab", new DateTime(2018, 06, 21), new DateTime(2018, 09, 25)); var campaignMapper = new CampaignMapper(); var result = campaignMapper.CampaignToCampaignDTOReturn(campaign); Assert.Equal("java", result.Name); Assert.Equal("vab", result.Client); Assert.True(result.Status == false); }
/// <summary> /// Obtiene una campaña por su id /// </summary> /// <param name="pId">Id de la campaña</param> /// <returns>Campaña con el Id dado</returns> public CampaignDTO GetCampaign(int pId) { IUnitOfWork iUnitOfWork = new UnitOfWork(new DigitalSignageDbContext()); CampaignMapper campaignMapper = new CampaignMapper(); try { cLogger.Info("Obteniendo campaña por id"); return(campaignMapper.SelectorExpression.Compile()(iUnitOfWork.campaignRepository.Get(pId))); } catch (NullReferenceException) { throw new IndexOutOfRangeException(); } }
public void GivenCampaignDTOCreateToCampaignWithActiveCampaign_WhenCreatingACampaignFromCampaignDTO_ThenCampaignIsCreatedWithStatusTrue() { var CampaignDTOCreate = new CampaignDTO_Create() { Client = "VAB", Name = "Java", StartDate = new DateTime(2012, 04, 21), EndDate = new DateTime(2030, 06, 21) }; var campaignMapper = new CampaignMapper(); var result = campaignMapper.CampaignDTOCreateToCampaign(CampaignDTOCreate); Assert.Equal("Java", result.Name); Assert.Equal("VAB", result.Client); Assert.True(result.Status == true); }
private VisitsController SetupController(IEnumerable <Visit> visits = null, StringBuilder stringBuilder = null) { visits = visits ?? new List <Visit>(); var visitDataStore = new MockVisitStore(visits.Select(model => VisitMapper.ToEntity(model)).ToList()); var campaigns = CampaignSamples.Get().Select(model => CampaignMapper.ToEntity(model)).ToList(); var campaignStore = new MockCampaignStore(campaigns); var campaignSearch = new SimpleCampaignSearch(campaignStore); var stringWriter = new StringWriter(stringBuilder ?? new StringBuilder()); var pushNotificationProviderFactory = new PushNotificationProviderFactory(stringWriter); var manager = new VisitManager(visitDataStore, campaignSearch, pushNotificationProviderFactory); return(new VisitsController(manager, logger: null)); }
/// <summary> /// Obtiene todas las campañas /// </summary> /// <returns>Enumerable con todas las campañas</returns> public IEnumerable <CampaignDTO> GetAll() { IUnitOfWork iUnitOfWork = new UnitOfWork(new DigitalSignageDbContext()); IList <CampaignDTO> campaignAux = new List <CampaignDTO>(); CampaignMapper campaignMapper = new CampaignMapper(); IEnumerable <Campaign> campaignEnum = iUnitOfWork.campaignRepository.GetAll(); cLogger.Info("Obteniendo todas las campañas."); //Comvierte a DTO IEnumerator e = campaignEnum.GetEnumerator(); while (e.MoveNext()) { campaignAux.Add((campaignMapper.SelectorExpression.Compile()((Campaign)e.Current))); } return(campaignAux); }
/// <summary> /// Elimina una campaña /// </summary> /// <param name="pId">Id de la campaña a eliminar</param> public void Delete(int pId) { IUnitOfWork iUnitOfWork = new UnitOfWork(new DigitalSignageDbContext()); CampaignMapper campaignMapper = new CampaignMapper(); Campaign oldCampaign = new Campaign(); try { oldCampaign = iUnitOfWork.campaignRepository.Get(pId); iUnitOfWork.campaignRepository.Remove(oldCampaign); iUnitOfWork.Complete(); cLogger.Info("Campaña eliminada"); } catch (NullReferenceException) { throw new IndexOutOfRangeException(); } }
/******************************************************************/ /********************************CRUD******************************/ /******************************************************************/ /// <summary> /// Añade una campaña /// </summary> /// <param name="pCampaignDTO">Campaña a agregar</param> public void Create(CampaignDTO pCampaignDTO) { IUnitOfWork iUnitOfWork = new UnitOfWork(new DigitalSignageDbContext()); CampaignMapper campaignMapper = new CampaignMapper(); Campaign campaign = new Campaign(); try { campaignMapper.MapToModel(pCampaignDTO, campaign); iUnitOfWork.campaignRepository.Add(campaign); iUnitOfWork.Complete(); cLogger.Info("Nueva campaña agregada"); } catch (ArgumentException) { throw new ArgumentException(); } }
public ActionResult PostBatch([FromBody] IEnumerable <Campaign> campaigns) { var validations = campaigns.Select(campaign => campaign.Validate()).ToArray(); var summaryValidation = new CommandNotification(validations); if (summaryValidation.IsInvalid) { return(StatusCode(500, summaryValidation.Notifications)); } var entities = campaigns.Select(model => CampaignMapper.ToEntity(model)).ToList(); var result = _campaignManager.Load(entities); if (result.IsInvalid) { return(StatusCode(500, result.Notifications)); } return(Ok()); }
public void GivenACreatedCampaignDto_WhenToNewDomain_ThenReturnCampaignObjectWithIdGuidAndStatusActive() { //given var newDTO = new CreateCampaignDto() { Name = "testCampaign", Client = "testClient", ClassStartDate = DateTime.Today.AddDays(5), StartDate = DateTime.Today.AddDays(5), Comment = "testComment" }; var campaignMapper = new CampaignMapper(); //when var newDomain = campaignMapper.ToNewDomain(newDTO); //then Assert.IsType<Guid>(newDomain.Id); Assert.Equal(CampaignStatus.Active, newDomain.Status); }
public CampaignsController(ICampaignService campaignService, CampaignMapper campaignMapper) { _campaignService = campaignService; _campaignMapper = campaignMapper; }
public JobApplicationMapper(CampaignMapper campaignMapper, CandidateMapper candidateMapper) { _campaignMapper = campaignMapper; _candidateMapper = candidateMapper; _selectionStepMapper = new SelectionStepMapper(); }