public void processaPedido() { AnyMarket anyMarket = new AnyMarket(); AnyFeed anyFeed = anyMarket.GetFeed(); foreach (Feed f in anyFeed.lstFeed) { RootOrder rootOrder = anyMarket.GetPedido(Convert.ToString(f.id)); if (rootOrder.orders != null) { foreach (Order o in rootOrder.orders) { Db db = new Db(); if (db.ProcessaPedido(o)) { anyMarket.PutFeed(f.id.ToString(), f.token); } else { // anyMarket.PutFeed(f.id.ToString(), f.token); } } } } }
private List <RootOrder> GetPed() { List <RootOrder> lstPages = new List <RootOrder>(); RootOrder root = new RootOrder(); var url = baseUrl + "orders?status=PAID_WAITING_SHIP?limit=30&page=1"; var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.Headers.Add("gumgaToken", token); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "GET"; try { var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { var result = streamReader.ReadToEnd(); result = result.Replace("content", "orders"); root = JsonConvert.DeserializeObject <RootOrder>(result); lstPages.Add(root); foreach (Link l in root.links) { if (l.rel == "Next") { RootOrder rootOrder = GetPedidos(l.href, false); lstPages.Add(rootOrder); } } } } catch (Exception ex) { string message = ex.Message; } return(lstPages); }
public RootOrder GetPedidos(string url, Boolean isFeed) { RootOrder root = new RootOrder(); var httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.Headers.Add("gumgaToken", token); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "GET"; string nextUrl = ""; try { var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { var result = streamReader.ReadToEnd(); result = result.Replace("content", "orders"); if (!isFeed) { root = JsonConvert.DeserializeObject <RootOrder>(result); } else { Order order = JsonConvert.DeserializeObject <Order>(result); root.orders = new List <Order>(); root.orders.Add(order); } lstPages.Add(root); if (root.orders != null) { if (root.orders.Count() == 5) { foreach (Link l in root.links) { if (l.rel == "next") { nextUrl = l.href; } } } } else { nextUrl = ""; } } if (nextUrl != "") { RootOrder rootOrder = GetPedidos(nextUrl, isFeed); nextUrl = ""; } } catch (Exception ex) { string message = ex.Message; } return(root); }