public override IMovilwayApiResponse PerformKinacuOperation(IMovilwayApiRequest requestObject, SaleInterface kinacuWS, String sessionID) { if (sessionID.Equals("0") && !sessionID.Equals("1013")) { return new ChangePinResponseBody() { ResponseCode = 90, ResponseMessage = "error session", TransactionID = 0 } } ; ChangePinRequestBody request = requestObject as ChangePinRequestBody; ChangePinResponseBody response = null; string message; ManagementInterface managementWS = new ManagementInterface(); var session = new ServiceExecutionDelegator <GetSessionResponseBody, GetSessionRequestBody>().ResolveRequest( new GetSessionRequestBody() { Username = request.AuthenticationData.Username, Password = request.AuthenticationData.Password, DeviceType = request.DeviceType }, ApiTargetPlatform.Kinacu, ApiServiceName.GetSession); if (session.ResponseCode == 1013 || session.ResponseCode == 10133 || session.ResponseCode == 1017) { logger.InfoLow("[KIN] " + base.LOG_PREFIX + "[ChangePinProvider] [SEND-DATA] ChangeUserPasswordByAccessIdParameters {AccessId=" + request.AuthenticationData.Username + ",OldPassword=******,NewPassword=******,AccessType=" + request.DeviceType + "}"); bool result = managementWS.ChangeUserPasswordByAccessId(request.AuthenticationData.Username, request.OldPin, request.NewPin, request.DeviceType, out message); logger.InfoLow("[KIN] " + base.LOG_PREFIX + "[ChangePinProvider] [RECV-DATA] ChangeUserPasswordByAccessIdResult {response=" + result + ",message=" + message + "}"); response = new ChangePinResponseBody() { ResponseCode = (result ? 0 : 99), ResponseMessage = (result ? "exito" : message), TransactionID = new Random().Next(100000, 999999) }; } else { logger.InfoLow("[KIN] " + base.LOG_PREFIX + "[ChangePinProvider] [SEND-DATA] ChangeUserPasswordParameters {UserId=" + sessionID + ",OldPassword=******,NewPassword=******}"); bool result = managementWS.ChangeUserPassword(int.Parse(sessionID), request.OldPin, request.NewPin, out message); logger.InfoLow("[KIN] " + base.LOG_PREFIX + "[ChangePinProvider] [RECV-DATA] ChangeUserPasswordResult {response=" + result + ",message=" + message + "}"); response = new ChangePinResponseBody() { ResponseCode = (result ? 0 : 99), ResponseMessage = (result ? "exito" : message), TransactionID = new Random().Next(100000, 999999) }; } return(response); } }
internal static ChangePinResponse ChangePin(ChangePinRequest externalRequest) { ChangePinRequestInternal internalRequest = new ChangePinRequestInternal() { Initiator = externalRequest.Request.Initiator, DeviceType = externalRequest.Request.DeviceType, NewPin = externalRequest.Request.NewPin, SessionID = externalRequest.Request.SessionID, CurrentPin = externalRequest.Request.CurrentPin }; ChangePinResponseInternal internalResponse = ChangePinInternal(internalRequest); ChangePinResponse externalResponse = new ChangePinResponse(); ChangePinResponseBody externalResponseBody = new ChangePinResponseBody() { ResponseCode = internalResponse.ResponseCode, ResponseMessage = internalResponse.ResponseMessage, TransactionID = internalResponse.TransactionID }; externalResponse.Response = externalResponseBody; return(externalResponse); }
public override IMovilwayApiResponse PerformUtibaOperation(IMovilwayApiRequest requestObject, UMarketSCClient utibaClientProxy, String sessionID) { ChangePinRequestBody request = requestObject as ChangePinRequestBody; ChangePinResponseBody response = null; logger.InfoLow("[UTI] " + base.LOG_PREFIX + "[ChangePinProvider] [SEND-DATA] pinRequest {sessionId=" + sessionID + ",device_type=" + request.DeviceType + ",new_pin=******,pin=******,initiator=" + request.Agent + "}"); string currentPinHash = Utils.GenerateHash(sessionID, request.Agent, request.OldPin); //string newPinHash = Utils.GenerateHash(sessionID, internalRequest.Initiator, internalRequest.CurrentPin); pinResponse pinChangeUtiba = utibaClientProxy.pin(new pin() { pinRequest = new pinRequestType() { sessionid = sessionID, device_type = request.DeviceType, new_pin = request.NewPin, pin = currentPinHash, initiator = request.Agent } }); logger.InfoLow("[UTI] " + base.LOG_PREFIX + "[ChangePinProvider] [RECV-DATA] pinResponse {transid=" + pinChangeUtiba.pinReturn.transid + ",result=" + pinChangeUtiba.pinReturn.result + ",result_namespace=" + pinChangeUtiba.pinReturn.result_namespace + ",result_message=" + pinChangeUtiba.pinReturn.result_message + "}"); if (pinChangeUtiba != null) { response = new ChangePinResponseBody() { ResponseCode = Utils.BuildResponseCode(pinChangeUtiba.pinReturn.result, pinChangeUtiba.pinReturn.result_namespace), ResponseMessage = pinChangeUtiba.pinReturn.result_message, TransactionID = pinChangeUtiba.pinReturn.transid }; } return(response); }
public ChangePinResponse() { Response = new ChangePinResponseBody(); }