public HttpResponseMessage GetSessionCountBySpeakerId(int codeCampId, int speakerId)
        {
            try
            {
                var allSessions     = SessionDataAccess.GetItems(codeCampId);
                var sessionSpeakers = SessionSpeakerDataAccess.GetItemsBySpeakerId(speakerId).Select(s => s.SessionId);
                var sessions        = allSessions.Where(s => sessionSpeakers.Contains(s.SessionId));

                var response = new ServiceResponse <int> {
                    Content = sessions.Any() ? sessions.Count() : 0
                };

                if (!sessions.Any())
                {
                    ServiceResponseHelper <int> .AddNoneFoundError("sessions", ref response);
                }

                return(Request.CreateResponse(HttpStatusCode.OK, response.ObjectToJson()));
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ERROR_MESSAGE));
            }
        }
Exemplo n.º 2
0
        public HttpResponseMessage UpdateSessionSpeaker(SessionSpeakerInfo speaker)
        {
            try
            {
                SessionSpeakerDataAccess.UpdateItem(speaker);

                var response = new ServiceResponse <string> {
                    Content = SUCCESS_MESSAGE
                };

                return(Request.CreateResponse(HttpStatusCode.OK, response.ObjectToJson()));
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ERROR_MESSAGE));
            }
        }
Exemplo n.º 3
0
        public HttpResponseMessage GetSessionSpeaker(int itemId, int sessionId)
        {
            try
            {
                var speaker  = SessionSpeakerDataAccess.GetItem(itemId, sessionId);
                var response = new ServiceResponse <SessionSpeakerInfo> {
                    Content = speaker
                };

                if (speaker == null)
                {
                    ServiceResponseHelper <SessionSpeakerInfo> .AddNoneFoundError("speaker", ref response);
                }

                return(Request.CreateResponse(HttpStatusCode.OK, response.ObjectToJson()));
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ERROR_MESSAGE));
            }
        }
Exemplo n.º 4
0
        public HttpResponseMessage CreateSessionSpeaker(SessionSpeakerInfo speaker)
        {
            try
            {
                SessionSpeakerDataAccess.CreateItem(speaker);

                var sessionSpeakers = SessionSpeakerDataAccess.GetItems(speaker.SessionId);

                var sessionSpeaker =
                    sessionSpeakers.OrderByDescending(s => s.SessionSpeakerId).FirstOrDefault(s => s.SpeakerId == speaker.SpeakerId);

                var response = new ServiceResponse <SessionSpeakerInfo> {
                    Content = sessionSpeaker
                };

                return(Request.CreateResponse(HttpStatusCode.OK, response.ObjectToJson()));
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ERROR_MESSAGE));
            }
        }