public async Task <ResponseModel> AddEventAsync(CrudEvent serviceModel) { var httpClient = new HttpClient { BaseAddress = new Uri("https://localhost:44323/") }; var request = new HttpRequestMessage(HttpMethod.Post, "/events"); var content = JsonConvert.SerializeObject(serviceModel); request.Content = new StringContent(content, Encoding.UTF8, "application/json"); var response = await httpClient.SendAsync(request); if (response.StatusCode == HttpStatusCode.OK) { return new ResponseModel { IsSuccess = true } } ; return(new ResponseModel { IsSuccess = false, ErrorMessage = response.ReasonPhrase }); } }
public CrudEvent AddEvent(CrudEvent crudEvent) { // Create Event var e = new Event(new EventId(Guid.NewGuid().ToString().Substring(31)), new ClientId(crudEvent.ClientId), new EventTitle(crudEvent.Title), new EventDescription(crudEvent.Description), new Location(crudEvent.Address, crudEvent.LocationType), new EventDate(crudEvent.StartsAt.Year, crudEvent.StartsAt.Month, crudEvent.StartsAt.Day, crudEvent.StartsAt.Hour, crudEvent.StartsAt.Minute), new EventDate(crudEvent.EndsAt.Year, crudEvent.EndsAt.Month, crudEvent.EndsAt.Day, crudEvent.EndsAt.Hour, crudEvent.EndsAt.Minute), crudEvent.Type, crudEvent.Audience, new EventPublishDate(crudEvent.PublishDate), crudEvent.IsActive); var eFromDB = _eventsRepository.AddEvent(e); crudEvent.Id = eFromDB.Id.Value; // Create Pictures var pictures = crudEvent.Pictures .Where(p => p != null) .Select(p => new Picture(new EventId(crudEvent.Id), null, p)) .ToList(); _picturesRepository.AddPicturesToEvent(pictures); return(crudEvent); }
public void EditEvent(CrudEvent crudEvent) { // Update Event var e = new Event(new EventId(crudEvent.Id), new ClientId(crudEvent.ClientId), new EventTitle(crudEvent.Title), new EventDescription(crudEvent.Description), new Location(crudEvent.Address, crudEvent.LocationType), new EventDate(crudEvent.StartsAt.Year, crudEvent.StartsAt.Month, crudEvent.StartsAt.Day, crudEvent.StartsAt.Hour, crudEvent.StartsAt.Minute), new EventDate(crudEvent.EndsAt.Year, crudEvent.EndsAt.Month, crudEvent.EndsAt.Day, crudEvent.EndsAt.Hour, crudEvent.EndsAt.Minute), crudEvent.Type, crudEvent.Audience, new EventPublishDate(crudEvent.PublishDate), crudEvent.IsActive); _eventsRepository.EditEvent(e); // Update Pictures _picturesRepository.DeleteAllPicturesFromEvent(e.Id.ToString()); var pictures = crudEvent.Pictures .Where(p => p != null) .Select(p => new Picture(e.Id.ToString(), null, p)) .ToList(); _picturesRepository.AddPicturesToEvent(pictures); }
public SubmitResult Handle(CrudEvent <T> command) { switch (command.Type) { case ActionType.Add: Merge(command.Data); break; case ActionType.Update: Merge(command.Data); break; case ActionType.Delete: Delete(command.Data); break; } return(UnitOfWork.SaveChanges()); }
public virtual Task Handle <TObject>(CrudEvent <TObject> item) where TObject : class { return(Task.Run(() => { try { var res = Store.GetInstance <IEntityHandler <TObject> >().Handle(item); RecordResult(res, item); } catch (Exception ex) { SubmitResult re = new SubmitResult(1); re.SetException(ex); RecordResult(re, item); Logger.WriteException(ex); throw; } })); }
public void Update(string id, CrudEventViewModel crudEventViewModel) { var crudEvent = new CrudEvent() { Id = id, ClientId = crudEventViewModel.ClientId, Title = crudEventViewModel.Title, Description = crudEventViewModel.Description, Address = crudEventViewModel.Address, LocationType = crudEventViewModel.LocationType, Audience = crudEventViewModel.Audience, EndsAt = crudEventViewModel.EndsAt, Type = crudEventViewModel.Type, PublishDate = crudEventViewModel.PublishDate, IsActive = crudEventViewModel.IsActive, StartsAt = crudEventViewModel.StartsAt, Pictures = crudEventViewModel.Pictures }; _clientEventsService.EditEvent(crudEvent); }
public string Create(CrudEventViewModel crudEventViewModel) { var crudEvent = new CrudEvent() { //ClientId = User.FindFirstValue(ClaimTypes.NameIdentifier), ClientId = crudEventViewModel.ClientId, Title = crudEventViewModel.Title, Description = crudEventViewModel.Description, Address = crudEventViewModel.Address, LocationType = crudEventViewModel.LocationType, Audience = crudEventViewModel.Audience, EndsAt = crudEventViewModel.EndsAt, Type = crudEventViewModel.Type, PublishDate = crudEventViewModel.PublishDate, IsActive = crudEventViewModel.IsActive, StartsAt = crudEventViewModel.StartsAt, Pictures = crudEventViewModel.Pictures }; var result = _clientEventsService.AddEvent(crudEvent); return(result.Id); }
public CrudEvent GetCrudEventViewModelById(string eventId) { var e = _eventsRepository.GetEventById(eventId); var crudEvent = new CrudEvent { Id = e.Id.Value, ClientId = e.ClientId.Value, Title = e.Title.TitleValue, StartsAt = e.StartsAt.Value, Address = e.Location.Address, LocationType = e.Location.Type, Description = e.Description.DescriptionValue, EndsAt = e.EndsAt.Value, Audience = e.Audience, Type = e.Type, Pictures = _picturesRepository.GetPicturesForEvent(e.Id.Value).Select(p => p.Link).ToList(), IsActive = e.IsActive, PublishDate = e.PublishDate.Value }; return(crudEvent); }