/// <summary> /// used to Cancel the booked ticket of Indian Railways /// </summary> /// <param name="apiUrl"></param> /// <param name="Request"></param> /// <param name="userSession"></param> /// <returns></returns> public object CancelTicket(string apiUrl, CancelTicketRequest Request, long?userSession, string authInfo) { string FormatedApiUrl = apiUrl + "/" + Request.reservationId + "/" + Request.agentTxnId + "/" + Request.psgnToken; var response = _service.GetResponse("", "GET", FormatedApiUrl, userSession, authInfo); return(response); }
public CancelTicketResponse CancelTicket(long hostId, CancelTicketRequest value, out string status) { AdmissionServices admissionServices = new AdmissionServices(); var ticket = admissionServices.GetTicketByTicketNo(hostId, value.TicketNumber); if (ticket == null) { status = CancelTicketStatuses.TicketNotFound; return(null); } else { return(CancelAndRefundTicket(hostId, ticket.TicketId.Value, out status)); } }
public HttpResponseMessage CancelTicket(CancelTicketRequest request) { CancelTicketResponse responseData = null; try { //Authenticate API key long?hostId = HostServices.GetCallerHostId(); if (!hostId.HasValue) { Log.Warn(ResponseMessages.InvalidAPIKey); return(Request.CreateResponse(new GenericResponse(null, ResponseCodes.InvalidAPIKey, ResponseMessages.InvalidAPIKey))); } //Validate input if (request == null || string.IsNullOrEmpty(request.TicketNumber)) { return(Request.CreateResponse(new GenericResponse(null, ResponseCodes.InvalidParam, ResponseMessages.InvalidParam))); } //Perform transaction EventsServices eventsService = new EventsServices(); string status = null; responseData = eventsService.CancelTicket(hostId.Value, request, out status); if (status == CancelTicketStatuses.TicketNotFound) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.TicketNotFound, "TicketNotFound"))); } else if (status == CancelTicketStatuses.TicketAlreadyCancelled) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.TicketAlreadyCancelled, "TicketAlreadyCancelled"))); } else if (status == CancelTicketStatuses.TicketAlreadyUsed) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.TicketAlreadyUsed, "TicketAlreadyUsed"))); } else if (status == CancelTicketStatuses.EventNotFound) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.EventNotFound, "EventNotFound"))); } else if (status == CancelTicketStatuses.EventNotActive) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.EventNotActive, "Event is already cancelled or closed."))); } else if (status == CancelTicketStatuses.EventHasAlreadyStarted) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.EventHasAlreadyStarted, "EventHasAlreadyStarted"))); } else if (status == CancelTicketStatuses.CustomerNotFound) { return(Request.CreateResponse(new GenericResponse(null, CancelTicketStatuses.CustomerNotFound, "CustomerNotFound"))); } else if (status == CancelTicketStatuses.Success) { return(Request.CreateResponse(new GenericResponse(responseData, ResponseCodes.Success, ResponseMessages.Success))); } else { Log.Error("Unrecognized status: " + status); return(Request.CreateResponse(new GenericResponse(null, ResponseCodes.Error, ResponseMessages.Error))); } } catch (Exception ex) { Log.Exception(ex); return(Request.CreateResponse(new GenericResponse(null, ResponseCodes.Error, ResponseMessages.Error))); } }