public static Address Get(short streetNumber, string streetName, City city) { Address address; if (Address.IsInDb(streetNumber, streetName, city)) { address = AddressLoader.Load(streetNumber, streetName, city); } else { address = AddressFactory.Create(streetNumber, streetName, city); address.RecordInDb(); } return(address); }
private UnifiedPayModel GetUnifiedPayModel(OnlineOrder order, string description) { UnifiedPayModel model = UnifiedPayModel.CreateUnifiedModel(order.CompanyID); if (string.IsNullOrWhiteSpace(order.PrepayId)) { WX_ApiConfig apiConfig = WXApiConfigServices.QueryWXApiConfig(order.CompanyID); string payNotifyAddress = string.Format("{0}{1}", apiConfig.Domain, "/WeiXinPayNotify/Index"); //预支付 string clientIp = AddressLoader.GetClientIP(); string postData = model.CreateH5PrePayPackage(order.OrderID.ToString(), ((int)(order.Amount * 100)).ToString(), description, payNotifyAddress, clientIp, apiConfig.Domain, "智慧停车系统"); UnifiedPrePayMessage result = PaymentServices.UnifiedPrePay(postData); if (result == null || !result.ReturnSuccess || !result.ResultSuccess || string.IsNullOrEmpty(result.Prepay_Id) || string.IsNullOrWhiteSpace(result.MWeb_Url)) { ExceptionsServices.AddExceptionToDbAndTxt("WeiXinPayment_Error", "预支付", string.Format("postData:{0}", postData), LogFrom.WeiXin); throw new Exception(string.Format("获取PrepayId 失败,Message:{0}", result.ToXmlString())); } OnlineOrderServices.UpdatePrepayIdById(result.Prepay_Id, result.MWeb_Url, order.OrderID); order.PrepayId = result.Prepay_Id; order.MWebUrl = result.MWeb_Url; } return(model); }
// construct properties and child objects protected override void Initialize() { base.Initialize(); addressLoader = new AddressLoader(this); }