public TransferStockExtendedResponse TransferStockExtended(TransferStockExtendedRequest externalRequest) { Log(Logger.LogMessageType.Info, "-> -------------------- Comienza la ejecución del método Stock.TransferStock", Logger.LoggingLevelType.Medium); LoginRequestInternal loginRequest = new LoginRequestInternal() { DeviceType = externalRequest.Request.DeviceType, Password = externalRequest.Request.Password, User = externalRequest.Request.Username }; LoginResponseInternal loginResponse = AuthenticationProvider.LoginInternal(loginRequest); TransferStockRequestInternal internalRequest = new TransferStockRequestInternal() { Agent = externalRequest.Request.Agent, Amount = externalRequest.Request.Amount, DeviceType = externalRequest.Request.DeviceType, SessionID = loginResponse.SessionID }; TransferStockResponseInternal internalResponse = TransferStockInternal(internalRequest); TransferStockExtendedResponse externalResponse = new TransferStockExtendedResponse() { Response = new TransferStockExtendedResponseBody() { ResponseCode = internalResponse.ResponseCode, ResponseMessage = internalResponse.ResponseMessage, TransactionID = internalResponse.TransactionID, Fee = internalResponse.Fee } }; Log(Logger.LogMessageType.Info, "-> -------------------- Termina la ejecución del método Stock.TransferStock", Logger.LoggingLevelType.Medium); return(externalResponse); }
public TransferStockResponse TransferStock(TransferStockRequest externalRequest) { Log(Logger.LogMessageType.Info, "-> -------------------- Comienza la ejecución del método Stock.TransferStock", Logger.LoggingLevelType.Medium); TransferStockRequestInternal internalRequest = new TransferStockRequestInternal() { Agent = externalRequest.Request.Agent, Amount = externalRequest.Request.Amount, DeviceType = externalRequest.Request.DeviceType, SessionID = externalRequest.Request.SessionID }; TransferStockResponseInternal internalResponse = TransferStockInternal(internalRequest); TransferStockResponse externalResponse = new TransferStockResponse() { Response = new TransferStockResponseBody() { ResponseCode = internalResponse.ResponseCode, ResponseMessage = internalResponse.ResponseMessage, TransactionID = internalResponse.TransactionID, Fee = internalResponse.Fee } }; Log(Logger.LogMessageType.Info, "-> -------------------- Termina la ejecución del método Stock.TransferStock", Logger.LoggingLevelType.Medium); return(externalResponse); }
private TransferStockResponseInternal TransferStockInternal(TransferStockRequestInternal internalRequest) { TransferStockResponseInternal internalResponse = null; try { UMarketSCClient utibaClient = new UMarketSCClient(); transferStockResponse utibaTransferStockResponse = null; using (OperationContextScope scope = new OperationContextScope(utibaClient.InnerChannel)) { HttpRequestMessageProperty messageProperty = new HttpRequestMessageProperty(); messageProperty.Headers.Add(HttpRequestHeader.UserAgent, UserAgent); OperationContext.Current.OutgoingMessageProperties.Add(HttpRequestMessageProperty.Name, messageProperty); utibaTransferStockResponse = utibaClient.transferStock(new transferStock() { transferStockRequest = new transferStockRequestType() { sessionid = internalRequest.SessionID, amount = internalRequest.Amount.ToString(), device_type = internalRequest.DeviceType, to = internalRequest.Agent } }); } if (utibaTransferStockResponse != null) { internalResponse = new TransferStockResponseInternal() { ResponseCode = utibaTransferStockResponse.transferStockReturn.result, ResponseMessage = utibaTransferStockResponse.transferStockReturn.result_message, Fee = utibaTransferStockResponse.transferStockReturn.fee, TransactionID = utibaTransferStockResponse.transferStockReturn.transid }; } } catch (Exception ex) { Log(Logger.LogMessageType.Error, "Ocurrio una exception procesando el metodo Stock.TransferStockInternal, los detalles son: " + ex.ToString(), Logger.LoggingLevelType.Low); return(null); } return(internalResponse); }