private async Task <OnlineOrder[]> QueryOnineOrders(TradeStates[] includeStates, TradeStates[] excludeStates) { var url = string.Format(Constants.API, "QueryOnlineOrders"); var result = url.GetUriJsonContent <OnlineOrder[]>((http) => { var queryFilter = new OnineOrderQueryFilter() { MchId = 1, States = includeStates, ExcludeStates = excludeStates, Type = TradeTypes.Consume, Start = DateTime.Now.Date.AddDays(-1) }; http.Method = "POST"; http.ContentType = "application/json"; using (var stream = http.GetRequestStream()) { var body = queryFilter.SerializeToJson(); var buffers = UTF8Encoding.UTF8.GetBytes(body); stream.Write(buffers, 0, buffers.Length); stream.Flush(); } return(http); }); return(result); }
public OnlineOrder[] QueryOnlineOrders(OnineOrderQueryFilter filter) { Guard.ArgumentNotNull(filter, "filter"); if (filter.Keys == null || filter.Keys.Length.Equals(0)) { filter.Start = filter.Start ?? DateTime.Now.Date; filter.End = filter.End ?? DateTime.Now.Date.AddDays(1); } filter.Type = filter.Type ?? TradeTypes.Consume; return(client.QueryOnlineOrders(filter)); }
public OnlineOrder[] QueryOnlineOrders(OnineOrderQueryFilter filter) { using (var database = this.databaseFactory.GenerateDatabase(isWriteOnly: false)) { var queryString = string.Concat("SELECT TradeId,TradeCode,TradeState,CreatedDateTime,Attach FROM [dbo].[Trade]", filter.GenernateWhereCase()); var results = database.SqlQuery <TradeDetails>(queryString); if (results == null || results.Count().Equals(0)) { return new OnlineOrder[] { } } ; return(results.Select((ctx) => { return ctx.Attach.DeserializeToObject <OrderContext>().Convert(ctx.TradeId, ctx.TradeCode, ctx.TradeState); }).ToArray()); } }