public IActionResult Post([FromBody] ModifySubscriptionViewModel addSubscriptionViewModel) { if (ModelState.IsValid) { if (IsMerchant()) { return(BadRequest(new { error = "Handelaars kunnen zich niet abonneren op andere handelaars." })); } if (!IsCustomer()) { return(BadRequest(new { error = "De voorziene token voldoet niet aan de eisen." })); } Establishment establishment = _establishmentRepository.getById(addSubscriptionViewModel.EstablishmentId); if (establishment == null) { return(BadRequest(new { error = "Het opgegeven vestiging bestaat niet." })); } Customer customer = _customerRepository.getById(int.Parse(User.FindFirst("userId")?.Value)); if (customer.EstablishmentSubscriptions.Any(es => es.EstablishmentId == establishment.EstablishmentId)) { return(BadRequest(new { error = "U bent reeds geabonneerd op deze vestiging." })); } EstablishmentSubscription establishmentSubscription = new EstablishmentSubscription() { Customer = customer, Establishment = establishment, DateAdded = DateTime.Now, EstablishmentId = establishment.EstablishmentId }; _customerRepository.addSubscription(customer.UserId, establishmentSubscription); return(Ok(new { message = "U bent succesvol geabonneerd op deze vestiging!" })); } //Als we hier zijn is is modelstate niet voldaan dus stuur error 400, slechte aanvraag string errorMsg = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)); return(BadRequest(new { error = "De ingevoerde waarden zijn onvolledig of voldoen niet aan de eisen voor een login. Foutboodschap: " + errorMsg })); }
public IActionResult Post([FromBody] AddEventViewModel eventToAdd) { if (!IsMerchant()) { return(BadRequest(new { error = "De voorziene token voldoet niet aan de eisen." })); } //modelstate werkt niet op lijsten :-D if (eventToAdd.Images == null || !eventToAdd.Images.Any()) { return(BadRequest(new { error = "Geen afbeelding(en) meegeven." })); } if (!ContainsJpgs(eventToAdd.Images)) { return(BadRequest(new { error = "Geen jpg afbeelding(en) meegeven" })); } if (eventToAdd.StartDate == null) { return(BadRequest(new { error = "Geen start datum meegeven." })); } if (eventToAdd.EndDate == null) { return(BadRequest(new { error = "Geen eind datum meegeven." })); } if (ModelState.IsValid) { Establishment establishmentFromDb = _establishmentRepository.getById(eventToAdd.EstablishmentId ?? 0); if (establishmentFromDb == null) { return(BadRequest(new { error = "Vestiging met opgegeven id niet gevonden" })); } if (!_establishmentRepository.isOwnerOfEstablishment(int.Parse(User.FindFirst("userId")?.Value), establishmentFromDb.EstablishmentId)) { return(BadRequest(new { error = "Vestiging behoord niet tot uw vestigingen" })); } Event newEvent = new Event { Name = eventToAdd.Name, Message = eventToAdd.Message, StartDate = (DateTime)eventToAdd.StartDate, EndDate = (DateTime)eventToAdd.EndDate }; _eventRepository.addEvent(eventToAdd.EstablishmentId ?? 0, newEvent); //we hebben id nodig voor img path dus erna newEvent.Images = ConvertFileViewModelToImages(eventToAdd.Images, newEvent.EventId); newEvent.Attachments = ConvertFileViewModelToAttachments(eventToAdd.Attachments, newEvent.EventId); _eventRepository.SaveChanges(); return(Ok(new { bericht = "Het evenement werd succesvol toegevoegd." })); } //Als we hier zijn is is modelstate niet voldaan dus stuur error 400, slechte aanvraag string errorMsg = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)); return(BadRequest(new { error = errorMsg })); }
public Establishment Get(int id) { return(_establishmentRepository.getById(id)); }