Example #1
0
        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);
        }
Example #2
0
        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);
 }