CRL.Business.OnlinePay.Company.Alipay.AlipayCompany.CheckOrder C# (CSharp) Method

CheckOrder() public method

查询订单状态,返回是否成功
public CheckOrder ( IPayHistory order, string &message ) : bool
order IPayHistory
message string
return bool
        public override bool CheckOrder(IPayHistory order,out string message)
        {
            string url = AliPay.CreateQueryOrderUrl(company_gateway, "single_trade_query", partner, sign_type, order.OrderId, key, _input_charset);
            string responseTxt = CoreHelper.HttpRequest.HttpGet(url, Encoding.Default);
            try
            {
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(responseTxt);
                XmlNode node = doc.SelectSingleNode("alipay/response/trade/trade_status");
                if (node == null)
                {
                    message = "服务器返回:" + responseTxt;
                    return false;
                }
                if (node != null)
                {
                    string trade_status = node.InnerText;
                    if (trade_status == "TRADE_FINISHED" || trade_status == "TRADE_SUCCESS")
                    {
                        if (order.Status != OrderStatus.已确认)
                        {
                            Confirm(order, GetType(), order.Amount);
                        }
                        message = "成功";
                        return true;
                    }
                }

            }
            catch(Exception ero)
            {
                message = "出现错误:" + ero.Message;
                return false;
            }
            message = "失败";
            return false;
        }