public void TestCreateRetailOrder() { OrderCreateInfo orderCreateInfo = new OrderCreateInfo(); orderCreateInfo.MchOrderId = String.Format("ORDER{0}", DateTime.Now.Ticks); orderCreateInfo.Title = "付款码下单订单"; orderCreateInfo.Price = 12300; orderCreateInfo.Expire = "10m"; string authCode = "284896288107264920"; string deviceId = "111"; ChannelOrder channelOrder = geekChannelOrderFactory.RetailOrder(); OrderInfo orderInfo = channelOrder.Create(orderCreateInfo, authCode, deviceId); Assert.NotEmpty(orderInfo.MchSerialNo); Assert.NotEmpty(orderInfo.OrderId); Assert.Equal(orderCreateInfo.MchOrderId, orderInfo.MchOrderId); Assert.Equal(orderCreateInfo.Price, orderInfo.Price); Assert.Equal(0, orderInfo.MchDiscount); Assert.Equal(0, orderInfo.PlatformDiscount); Assert.True(orderInfo.TotalAmount > 0); Assert.True(orderInfo.PayAmount > 0); Assert.True(orderInfo.ToSettleAmount > 0); Assert.NotEmpty(orderInfo.Channel); Assert.NotEmpty(orderInfo.CreateTime); Assert.NotEmpty(orderInfo.PayTime); Assert.NotEmpty(orderInfo.OrderStatus); Console.WriteLine(JsonConvert.SerializeObject(orderInfo)); }
public ToPayOrderInfo Create(OrderCreateInfo orderCreateInfo, string deviceId) { JObject requestContent = GenerateRequestContent(orderCreateInfo, deviceId); string url = uriComponent.RetailQROrderUri().Expand(appId, orderCreateInfo.MchOrderId).Sign(new JObject(requestContent)).ToUriString(); JObject responseContent = geekEndPoint.Put(url, requestContent); return(responseParser.Parse(responseContent)); }
public ToPayNativeOrderInfo Create(OrderCreateInfo orderCreateInfo, string channel) { JObject requestBody = GenerateRequestContent(orderCreateInfo, channel); string url = uriComponents.NativeQROrderUri().Expand(appId, orderCreateInfo.MchOrderId).Sign(new JObject(requestBody)).ToUriString(); JObject contentData = geekEndPoint.Put(url, requestBody); return(responseParser.Parse(contentData)); }
public ToPayOrderInfo Create(OrderCreateInfo orderCreateInfo, bool direct) { JObject requestBody = GenerateRequestContent(orderCreateInfo, direct); string url = uriComponents.QROrderUri().Expand(appId, orderCreateInfo.MchOrderId).Sign(new JObject(requestBody)).ToUriString(); JObject responseData = geekEndPoint.Put(url, requestBody); return(responseParser.Parse(responseData)); }
private JObject GenerateRequestContent(OrderCreateInfo orderCreateInfo, string deviceId) { JObject requestContent = new JObject(); requestContent.Add(new JProperty("title", orderCreateInfo.Title)); requestContent.Add(new JProperty("price", orderCreateInfo.Price)); requestContent.Add(new JProperty("expire", orderCreateInfo.Expire)); requestContent.Add(new JProperty("device_id", deviceId)); requestContent.Add(new JProperty("notify_url", notifyUrl)); return(requestContent); }
private JObject GenerateRequestContent(OrderCreateInfo orderCreateInfo, string channel) { JObject requestContent = new JObject(); requestContent.Add(new JProperty("title", orderCreateInfo.Title)); requestContent.Add(new JProperty("price", orderCreateInfo.Price)); requestContent.Add(new JProperty("expire", orderCreateInfo.Expire)); requestContent.Add(new JProperty("channel", channel)); requestContent.Add(new JProperty("return_url", returnUrl)); requestContent.Add(new JProperty("notify_url", notifyUrl)); return(requestContent); }
private OrderInfo CreateOrder() { GeekChannelOrderFactory geekChannelOrderFactory = new GeekChannelOrderFactory(); OrderCreateInfo orderCreateInfo = new OrderCreateInfo(); orderCreateInfo.MchOrderId = string.Format("ORDER{0}", DateTime.Now.Ticks); orderCreateInfo.Title = "付款码下单订单"; orderCreateInfo.Price = 12300; orderCreateInfo.Expire = "10m"; string authCode = "284896288107264920"; string deviceId = "111"; ChannelOrder channelOrder = geekChannelOrderFactory.RetailOrder(); return(channelOrder.Create(orderCreateInfo, authCode, deviceId)); }
public void TestCreateRetailOrder() { OrderCreateInfo orderCreateInfo = new OrderCreateInfo(); orderCreateInfo.MchOrderId = String.Format("ORDER{0}", DateTime.Now.Ticks); orderCreateInfo.Title = "聚合订单码下单订单"; orderCreateInfo.Price = 12300; orderCreateInfo.Expire = "10m"; String deviceId = "111"; ToPayChannelOrder channelOrder = geekChannelOrderFactory.RetailQROrder(); ToPayOrderInfo orderInfo = channelOrder.Create(orderCreateInfo, deviceId); Assert.NotEmpty(orderInfo.MchSerialNo); Assert.NotEmpty(orderInfo.OrderId); Assert.Equal(orderCreateInfo.MchOrderId, orderInfo.MchOrderId); Assert.NotEmpty(orderInfo.PayUrl); Assert.NotEmpty(orderInfo.ResultCode); Assert.NotEmpty(orderInfo.GateWay); Console.WriteLine(JsonConvert.SerializeObject(orderInfo)); }
public void TestCreateRetailOrder() { OrderCreateInfo orderCreateInfo = new OrderCreateInfo(); orderCreateInfo.MchOrderId = String.Format("ORDER{0}", DateTime.Now.Ticks); orderCreateInfo.Title = "原生二维码下单订单"; orderCreateInfo.Price = 12300; orderCreateInfo.Expire = "10m"; String channel = "wechat"; ToPayNativeChannelOrder channelOrder = geekChannelOrderFactory.NativeQROrder(); ToPayNativeOrderInfo orderInfo = channelOrder.Create(orderCreateInfo, channel); Assert.NotEmpty(orderInfo.MchSerialNo); Assert.NotEmpty(orderInfo.OrderId); Assert.Equal(orderCreateInfo.MchOrderId, orderInfo.MchOrderId); Assert.NotEmpty(orderInfo.PayUrl); Assert.NotEmpty(orderInfo.ResultCode); Assert.NotEmpty(orderInfo.QRCode); Assert.NotEmpty(orderInfo.CodeImgUrl); Console.WriteLine(JsonConvert.SerializeObject(orderInfo)); }
public void Test() { OrderCreateInfo orderCreateInfo = new OrderCreateInfo(); orderCreateInfo.MchOrderId = String.Format("ORDER{0}", DateTime.Now.Ticks); orderCreateInfo.Title = "聚合下单订单"; orderCreateInfo.Price = 12300; orderCreateInfo.Expire = "10m"; bool direct = false; GeekChannelOrderFactory geekChannelOrderFactory = new GeekChannelOrderFactory(); ToPayAggregateChannelOrder channelOrder = geekChannelOrderFactory.QROrder(); ToPayOrderInfo orderInfo = channelOrder.Create(orderCreateInfo, direct); Assert.NotEmpty(orderInfo.MchSerialNo); Assert.NotEmpty(orderInfo.OrderId); Assert.Equal(orderCreateInfo.MchOrderId, orderInfo.MchOrderId); Assert.NotEmpty(orderInfo.PayUrl); Assert.NotEmpty(orderInfo.ResultCode); Assert.NotEmpty(orderInfo.GateWay); Console.WriteLine(JsonConvert.SerializeObject(orderInfo)); }