public async override Task <NPCEResult> InviaAsync() { LetteraSubmit letteraBE = SetLetteraSubmit(); letteraBE.IdRichiesta = IdRichiesta; LetteraResponse letteraResult = null; CE.Header.GUIDMessage = IdRichiesta; CE.Body = SerializationUtility.SerializeToXmlElement(letteraBE); try { SubmitRequestRequest request = new SubmitRequestRequest(CE); var response = await WsCEClient.SubmitRequestAsync(request); try { letteraResult = SerializationUtility.Deserialize <LetteraResponse>(response.CE.Body); return(letteraResult.CreateResult(response.CE)); } catch (Exception ex) { throw (ex); } } finally { WsCEClient.InnerChannel.Close(); } }
//public LOLPil(NPCE_Client.Model.Servizio servizio, Ambiente ambiente, string idRichiesta) : base(servizio, ambiente, idRichiesta) //{ //} public override async Task <NPCEResult> ConfermaAsync(string idRichiesta) { OrderResponse preConfirmResult; string idOrdine; try { OrderRequest preconfirmRequest = GetPreConfirmRequest(idRichiesta); CE.Header.GUIDMessage = IdRichiesta; CE.Body = SerializationUtility.SerializeToXmlElement(preconfirmRequest); SubmitRequestRequest request = new SubmitRequestRequest(CE); var response = await WsCEClient.SubmitRequestAsync(request); preConfirmResult = SerializationUtility.Deserialize <OrderResponse>(response.CE.Body); idOrdine = preConfirmResult.IdOrder; ConfirmOrder confirmRequest = GetConfirmRequest(idOrdine, preConfirmResult.PaymentTypes[0].TypeDescription); CE.Header.GUIDMessage = IdRichiesta; CE.Body = SerializationUtility.SerializeToXmlElement(confirmRequest); request = new SubmitRequestRequest(CE); response = await WsCEClient.SubmitRequestAsync(request); return(new NPCEResult { Code = "I", Description = "Conferma avvenuta correttamente", IdOrdine = idOrdine, IdRichiesta = idRichiesta }); } finally { WsCEClient.InnerChannel.Close(); } }