public NotifyResult ParseNotifyResponse(string responseValue) { NotifyResponse response = XmlSerializerHelper.FromXmlString <NotifyResponse>(responseValue); if (!response.IsSuccess) { NotifyResult result1 = new NotifyResult(); result1.ErrorCode = response.ErrCode; result1.ErrorMessage = this.GetErrorMessage(response, "ParseNotifyResponse"); return(result1); } if (!this.ValidateResponse <NotifyResponse>(response)) { NotifyResult result2 = new NotifyResult(); result2.ErrorMessage = "返回结果响应结果不正确"; return(result2); } NotifyResult result3 = new NotifyResult(); result3.IsSuccess = true; result3.Attach = response.Attach; result3.OutTradeNo = response.OutTradeNo; result3.TimeEnd = response.TimeEnd; result3.TotalFee = ((double)response.TotalFee.GetValueOrDefault()) / 100.0; result3.TransactionId = response.TransactionId; result3.Bank = WeChatBankTypes.GetBank(response.BankType); return(result3); }
public QueryOrderResult QueryOrderAsync(QueryOrderParameter queryOrderParameter) { string str; if (!this.ValidateParameter <QueryOrderParameter>(queryOrderParameter, out str)) { QueryOrderResult result1 = new QueryOrderResult(); result1.ErrorMessage = str; return(result1); } OrderQueryRequest request = new OrderQueryRequest { AppId = this.m_AppId, MerchantId = queryOrderParameter.MerchantId, NonceString = WeChatSignHelper.CreateRandomString(), OutTradeNo = queryOrderParameter.OutTradeNo }; OrderQueryResponse response = this.InvokeApiAsync <OrderQueryRequest, OrderQueryResponse>(_OrderQueryUrl, request); if (!response.IsSuccess) { QueryOrderResult result3 = new QueryOrderResult(); result3.ErrorCode = response.ErrCode; result3.ErrorMessage = response.ReturnMsg; return(result3); } QueryOrderResult result2 = new QueryOrderResult(); result2.IsSuccess = true; result2.EndTime = response.TimeEnd; result2.OutTradeNo = response.OutTradeNo; result2.TotalFee = ((double)response.TotalFee.GetValueOrDefault()) / 100.0; result2.TradeState = (TradeState)Enum.Parse(typeof(TradeState), response.TradeState, true); result2.TradeStateDescription = response.TradeStateDesc; result2.TransactionId = response.TransactionId; result2.Bank = WeChatBankTypes.GetBank(response.BankType); return(result2); }