public bool CompleteCatcoTypeTransfersWS(string storeNumber, int transferNumber, int destinationStoreNumber, string tranType, out string errormessage) { bool transferWebService = false; if (storeNumber != string.Empty && transferNumber != 0 && destinationStoreNumber != 0) { //TransferService.storeToStoreRequestType requestdata = new TransferService.storeToStoreRequestType(); TransferService.JSUPRequestType requestdata = new JSUPRequestType(); requestdata.serviceInformation = new serviceInformationType(); requestdata.serviceInformation.source = new endpointType(); //to do: what should the source values be? requestdata.serviceInformation.source.systemId = "P2"; requestdata.serviceInformation.source.systemName = "Cashlinx Phase 2"; requestdata.serviceInformation.source.systemVersion = "4.0"; var conf = SecurityAccessor.Instance.EncryptConfig; var transferEsb = conf.GetMDSETransferService(); requestdata.serviceInformation.domain = conf.DecryptValue(transferEsb.Domain); requestdata.serviceInformation.shopNumber = ShopNumber; requestdata.serviceInformation.terminalID = TerminalID; requestdata.serviceInformation.userID = UserID; requestdata.serviceInformation.transactionID = TransactionID; requestdata.serviceInformation.timeStamp = CurrentDateTime; requestdata.serviceData = new TransferService.JSUPRequestTypeServiceData(); requestdata.serviceData.JSUPtransfer = new JSUPtransferType(); requestdata.serviceData.JSUPtransfer.storeNumber = storeNumber; requestdata.serviceData.JSUPtransfer.transferNumber = transferNumber.ToString(); requestdata.serviceData.JSUPtransfer.destination = destinationStoreNumber.ToString(); requestdata.serviceData.JSUPtransfer.transferType = tranType; JSUPReplyType replydata = null; try { replydata = portClient.JSUPTransferOut(requestdata); } catch (Exception ee) { errormessage = "Transfer web service call failed for" + transferNumber; FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Transfer web service call failed for" + transferNumber + " " + ee); return(false); } transferWebService = HandleJSUPWSResponse(replydata, transferNumber); } else { ErrorMessage = "Invalid storeNumber or transferNumber or destinationStoreNumber"; } errormessage = ErrorMessage; portClient.Close(); return(transferWebService); }
private bool HandleJSUPWSResponse(JSUPReplyType replydata, int transferNumber) { bool transferWebService = false; if (replydata.serviceInformation != null) { //check whether there is a general exception if (replydata.serviceInformation.status != null && replydata.serviceInformation.status.exceptionCode != null) { ErrorMessage = replydata.serviceInformation.status.exceptionCode.ToString() + replydata.serviceInformation.status.sourceMessage; FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Transfer web service came back with errors for" + transferNumber + replydata.serviceInformation.status.exceptionCode.ToString() + replydata.serviceInformation.status.sourceMessage); //return false; } if (replydata.serviceData != null && replydata.serviceData.Items != null) { if (replydata.serviceData.Items[0].GetType() != typeof(businessExceptionType)) { //check the reply transferWebService = true; } else { transferWebService = false; businessExceptionType returnData = (businessExceptionType)replydata.serviceData.Items[0]; ErrorMessage = returnData.responseCode.ToString() + returnData.message; FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Transfer web service returned with business exception " + transferNumber + " " + returnData.responseCode.ToString() + returnData.message); } } else //No data came back from the web service call...log it { transferWebService = true; FileLogger.Instance.logMessage(LogLevel.ERROR, this, "Transfer JSUP web service No data returned for" + transferNumber); } } return(transferWebService); }
public bool CompleteAllTypeTransfers(string storeNumber, int transferNumber, int destinationStoreNumber, string tranType, out string errormessage) { bool transferWebService = false; if (storeNumber != string.Empty && transferNumber != 0 && destinationStoreNumber != 0) { //TransferService.storeToStoreRequestType requestdata = new TransferService.storeToStoreRequestType(); var requestdata = new JSUPRequestType(); requestdata.serviceInformation = new serviceInformationType(); requestdata.serviceInformation.source = new endpointType(); //to do: what should the source values be? requestdata.serviceInformation.source.systemId = "CS"; requestdata.serviceInformation.source.systemName = "Cashlinx Support"; requestdata.serviceInformation.source.systemVersion = "4.0"; var conf = SecurityAccessor.Instance.EncryptConfig; var transferEsb = conf.GetMDSETransferService(); requestdata.serviceInformation.domain = conf.DecryptValue(transferEsb.Domain); requestdata.serviceInformation.shopNumber = ShopNumber; requestdata.serviceInformation.terminalID = TerminalID; requestdata.serviceInformation.userID = UserID; requestdata.serviceInformation.transactionID = TransactionID; requestdata.serviceInformation.timeStamp = CurrentDateTime; requestdata.serviceData = new JSUPRequestTypeServiceData(); requestdata.serviceData.JSUPtransfer = new JSUPtransferType(); requestdata.serviceData.JSUPtransfer.storeNumber = storeNumber; requestdata.serviceData.JSUPtransfer.transferNumber = transferNumber.ToString(); requestdata.serviceData.JSUPtransfer.destination = destinationStoreNumber.ToString(); requestdata.serviceData.JSUPtransfer.transferType = tranType; JSUPReplyType replydata = portClient.JSUPTransferOut(requestdata); transferWebService = HandleJSUPWSResponse(replydata); } errormessage = ErrorMessage; //request = null; //portClient.Close(); return(transferWebService); }