public async Task <CampaignType> CreateCampaignType(UpsertCampaignTypeRequest request) { var campaignType = new DbCampaignType { Id = Guid.NewGuid(), Name = request.Name }; DbContext.CampaignTypes.Add(campaignType); await DbContext.SaveChangesAsync(); return(new CampaignType { Id = campaignType.Id, Name = campaignType.Name }); }
/// <summary> /// Creates a new campaign type. /// </summary> /// <param name="campaignType">The request model used to create a new campaign type.</param> public async Task <CampaignResult> CreateType(UpsertCampaignTypeRequest campaignType) { var validator = ServiceProvider.GetRequiredService <UpsertCampaignTypeRequestValidator>(); var validationResult = validator.Validate(campaignType); if (!validationResult.IsValid) { var errorMessages = validationResult.Errors.Select(x => x.ErrorMessage).ToArray(); return(CampaignResult.Fail(errorMessages)); } var createdCampaignType = await CampaignService.CreateCampaignType(campaignType); campaignType.Id = createdCampaignType.Id; return(CampaignResult.Success()); }
public async Task <IActionResult> UpdateCampaignType([FromRoute] Guid campaignTypeId, [FromBody] UpsertCampaignTypeRequest request) { var campaignType = await CampaignService.GetCampaignTypeById(campaignTypeId); if (campaignType is null) { return(NotFound()); } await CampaignService.UpdateCampaignType(campaignTypeId, request); return(NoContent()); }
public async Task <IActionResult> CreateCampaignType([FromBody] UpsertCampaignTypeRequest request) { var campaign = await CampaignService.CreateCampaignType(request); return(Ok(campaign)); }