예제 #1
0
        /// <summary>
        /// Crea una nueva Solicitud en SOS IT de Celistics
        /// </summary>
        /// <param name="request">Objeto que contiene todos los datos de autenticacion del usuario e información de la Solicitud a consultar</param>
        /// <returns>Respuesta de la consulta de una determinada solicitud</returns>
        public GetSolicitudeResponse GetSolicitude(GetSolicitudeRequest request)
        {
            string methodName = string.Format("{0}", System.Reflection.MethodBase.GetCurrentMethod().Name);

            this.LogRequest(request);

            GetSolicitudeResponse response = new GetSolicitudeResponse();

            string sessionId = this.GetSessionId(request, response, out this.errorMessage);

            if (this.errorMessage != ErrorMessagesMnemonics.None)
            {
                return(response);
            }

            if (!request.IsValidRequest())
            {
                this.SetResponseErrorCode(response, ErrorMessagesMnemonics.InvalidRequiredFields);
                return(response);
            }

            GetSolicitudeOperation OperationRequest = new GetSolicitudeOperation();

            //Llamado REST al API SOS IT
            response = (GetSolicitudeResponse)OperationRequest.CallOperation(this.urlApi, this.technicianKey, this.TimeOutSOSIT, Request.EnumOperation.GET_REQUEST, request.Workorderid, -1, -1, null, null);

            if (request.WhitConversations)
            {
                ListConversationsRequest requestConversation = new ListConversationsRequest();
                requestConversation.AuthenticationData = request.AuthenticationData;
                requestConversation.DeviceType         = request.DeviceType;
                requestConversation.Platform           = request.Platform;
                requestConversation.Workorderid        = request.Workorderid;
                ListConversationsResponse responseConversation = ListConversations(requestConversation);

                if (responseConversation != null && responseConversation.ResponseCode == 0)
                {
                    response.Conversations = responseConversation.Conversations;
                }
            }


            return(response);
        }
예제 #2
0
 /// <summary>
 /// Consulta de una Solicitud en SOS IT dado el Id
 /// </summary>
 /// <param name="request">Objeto que contiene toda la informacion asignada a una solicitud</param>
 /// <returns>Respuesta de la Consulta</returns>
 private GetSolicitudeResponse GetSolicitude(GetSolicitudeRequest request)
 {
     return((new Provider.SOSIT.SolicitudeProvider()).GetSolicitude(request));
 }
예제 #3
0
 GetSolicitudeResponse ISOSITApiSoap.GetSolicitude(GetSolicitudeRequest request)
 {
     return(this.GetSolicitude(request));
 }