示例#1
0
        public Response DeleteEvent(EventDeleteRequest request)
        {
            var validationResult = deleteRequestValidator.Validate(request);

            if (!validationResult.IsValid)
            {
                return(Response.CreateResponse(validationResult.Messages));
            }

            var @event = eventQuery.GetEvent(request.EventId);

            if (@event == null)
            {
                return(Response.CreateResponse(new EntityNotFoundException("The specified event was not found")));
            }
            else if (@event.ClubId != request.ClubId)
            {
                return(Response.CreateResponse(new IllegalOperationException("The specified event belongs does not belong to this club")));
            }


            try {
                eventRepository.DeleteEvent(request.ClubId, request.EventId);
            } catch (Exception ex) {
                return(Response.CreateResponse(ex));
            }
            return(Response.CreateSuccessResponse());
        }
示例#2
0
        public HttpResponseMessage Delete(int id, EventDeleteRequest deleteModel)
        {
            if (deleteModel == null)
            {
                return(Request.CreateErrorResponse(
                           HttpStatusCode.NotAcceptable,
                           "No data was sent to the server."));
            }
            ;

            if (deleteModel.Id != id)
            {
                return(Request.CreateErrorResponse(
                           HttpStatusCode.NotAcceptable,
                           "The Id on the URL and data body does not match."));
            }
            ;

            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(
                           HttpStatusCode.BadRequest,
                           ModelState));
            }
            ;

            eventsService.Delete(deleteModel);
            SuccessResponse successResponse = new SuccessResponse();

            return(Request.CreateResponse(HttpStatusCode.OK, successResponse));
        }
示例#3
0
 public void Delete(EventDeleteRequest deleteModel)
 {
     dataProvider.ExecuteNonQuery(
         "Events_Delete",
         inputParamMapper: param =>
     {
         param.AddWithValue("@Id", deleteModel.Id);
     },
         returnParameters: null);
 }
示例#4
0
        public async Task <EventDeleteResponse> DeleteEventAsync(EventDeleteRequest request)
        {
            await ValidateRequestAsync(request);

            var entity = _eventRepository.FindOne(x => x.Id == request.Id);

            if (entity == null)
            {
                throw new EntityNotFoundException();
            }
            _eventRepository.Remove(entity);
            return(new EventDeleteResponse());
        }