/// <summary> /// 根据业务订单ID,查询本地达达订单 /// </summary> /// <param name="orderID">业务订单ID</param> /// <returns>达达订单</returns> public static DaDaOrder FindDaDaOrderByOrderID(string orderID) { DaDaOrder dadaOrder = null; try { using (SqlConnection conn = new SqlConnection(Config.ConnStr)) { conn.Open(); using (SqlCommand cmdDaDaOrder = conn.CreateCommand()) { SqlParameter paramOrderID = cmdDaDaOrder.CreateParameter(); paramOrderID.ParameterName = "@OrderID"; paramOrderID.SqlDbType = System.Data.SqlDbType.VarChar; paramOrderID.SqlValue = orderID; cmdDaDaOrder.Parameters.Add(paramOrderID); cmdDaDaOrder.CommandText = "select * from DaDaOrder where OrderID = @OrderID"; using (SqlDataReader sdrDaDaOrder = cmdDaDaOrder.ExecuteReader()) { if (sdrDaDaOrder.Read()) { dadaOrder = new DaDaOrder(); //加载对应的业务订单 dadaOrder.ProductOrder = new ProductOrder(sdrDaDaOrder["OrderID"].ToString()); dadaOrder.ID = int.Parse(sdrDaDaOrder["Id"].ToString()); dadaOrder.ShopNo = sdrDaDaOrder["ShopNo"] as string; dadaOrder.CityCode = sdrDaDaOrder["CityCode"] as string; dadaOrder.PayForSupplierFee = sdrDaDaOrder["PayForSupplierFee"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["PayForSupplierFee"].ToString()) : 0; dadaOrder.FetchFromReceiverFee = sdrDaDaOrder["FetchFromReceiverFee"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["FetchFromReceiverFee"].ToString()) : 0; dadaOrder.DeliverFee = sdrDaDaOrder["DeliverFee"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["DeliverFee"].ToString()) : 0; dadaOrder.Tips = sdrDaDaOrder["Tips"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["Tips"].ToString()) : 0; dadaOrder.CreateTime = DateTime.Parse(sdrDaDaOrder["CreateTime"].ToString()); dadaOrder.AcceptTime = sdrDaDaOrder["AcceptTime"] != DBNull.Value ? (DateTime?)DateTime.Parse(sdrDaDaOrder["AcceptTime"].ToString()) : null; dadaOrder.FetchTime = sdrDaDaOrder["FetchTime"] != DBNull.Value ? (DateTime?)DateTime.Parse(sdrDaDaOrder["FetchTime"].ToString()) : null; dadaOrder.FinishTime = sdrDaDaOrder["FinishTime"] != DBNull.Value ? (DateTime?)DateTime.Parse(sdrDaDaOrder["FinishTime"].ToString()) : null; dadaOrder.CancelTime = sdrDaDaOrder["CancelTime"] != DBNull.Value ? (DateTime?)DateTime.Parse(sdrDaDaOrder["CancelTime"].ToString()) : null; dadaOrder.UpdateTime = sdrDaDaOrder["UpdateTime"] != DBNull.Value ? (DateTime?)DateTime.Parse(sdrDaDaOrder["UpdateTime"].ToString()) : null; dadaOrder.Info = sdrDaDaOrder["Info"] as string; dadaOrder.CargoType = sdrDaDaOrder["CargoType"] != DBNull.Value ? int.Parse(sdrDaDaOrder["CargoType"].ToString()) : 0; dadaOrder.CargoWeight = sdrDaDaOrder["CargoWeight"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["CargoWeight"].ToString()) : 0; dadaOrder.CargoPrice = sdrDaDaOrder["CargoPrice"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["CargoPrice"].ToString()) : 0; dadaOrder.CargoNum = sdrDaDaOrder["CargoNum"] != DBNull.Value ? int.Parse(sdrDaDaOrder["CargoNum"].ToString()) : 0; dadaOrder.IsPrepay = bool.Parse(sdrDaDaOrder["IsPrepay"].ToString()); dadaOrder.ExpectedFetchTime = DateTime.Parse(sdrDaDaOrder["ExpectedFetchTime"].ToString()); dadaOrder.ExpectedFinishTime = sdrDaDaOrder["ExpectedFinishTime"] != DBNull.Value ? (DateTime?)(sdrDaDaOrder["ExpectedFinishTime"]) : null; dadaOrder.InvoiceTitle = sdrDaDaOrder["InvoiceTitle"] as string; dadaOrder.ReceiverName = sdrDaDaOrder["ReceiverName"] as string; dadaOrder.ReceiverAddress = sdrDaDaOrder["ReceiverAddress"] as string; dadaOrder.ReceiverPhone = sdrDaDaOrder["ReceiverPhone"] as string; dadaOrder.ReceiverLat = sdrDaDaOrder["ReceiverLat"] != DBNull.Value ? double.Parse(sdrDaDaOrder["ReceiverLat"].ToString()) : 0; dadaOrder.ReceiverLng = sdrDaDaOrder["ReceiverLng"] != DBNull.Value ? double.Parse(sdrDaDaOrder["ReceiverLng"].ToString()) : 0; dadaOrder.DeliverLockerCode = sdrDaDaOrder["DeliverLockerCode"] as string; dadaOrder.PickupLockerCode = sdrDaDaOrder["PickupLockerCode"] as string; dadaOrder.Distance = sdrDaDaOrder["Distance"] != DBNull.Value ? float.Parse(sdrDaDaOrder["Distance"].ToString()) : 0; dadaOrder.Fee = sdrDaDaOrder["Fee"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["Fee"].ToString()) : 0; dadaOrder.OrderStatus = sdrDaDaOrder["OrderStatus"] != DBNull.Value ? (DaDaOrderStatus)sdrDaDaOrder["OrderStatus"] : DaDaOrderStatus.Accepting; dadaOrder.CancelReason = sdrDaDaOrder["CancelReason"] as string; dadaOrder.DMID = sdrDaDaOrder["DMID"] != DBNull.Value ? int.Parse(sdrDaDaOrder["DMID"].ToString()) : 0; dadaOrder.DMName = sdrDaDaOrder["DMName"] as string; dadaOrder.DMMobile = sdrDaDaOrder["DMMobile"] as string; dadaOrder.DeductFee = sdrDaDaOrder["DeductFee"] != DBNull.Value ? decimal.Parse(sdrDaDaOrder["DeductFee"].ToString()) : 0; dadaOrder.DeliveryNo = sdrDaDaOrder["DeliveryNo"] as string; } } } } } catch (Exception ex) { Log.Error("DaDaOrder", ex.ToString()); throw ex; } return(dadaOrder); }