/// <summary> /// Equivalent to Upload Order. /// </summary> /// <param name="order">The order.</param> /// <param name="storageAccountUrl">The storage account URL.</param> /// <param name="storageAccountKey">The storage account key.</param> /// <param name="serviceBusConnectionString">The service bus connection string.</param> /// <returns></returns> public static async Task <HttpStatusCode> NextOrderUpload(Order order, string storageAccountUrl, string storageAccountKey, string serviceBusConnectionString) { DateTime date = DateTime.Now; var stringDate = date.ToString("yyyy-MM-dd"); OrderBlob orderBlob = new OrderBlob(); int weeknumber = (DateTime.Now.DayOfYear / 7) + 1; try { orderBlob = JsonConvert.DeserializeObject <OrderBlob>(GetDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", storageAccountUrl, storageAccountKey)); List <Order> orders = new List <Order>(); orders.Add(order); HttpStatusCode status = await PutDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); return(status); } catch // enters if blob dont exist { List <Order> orders = new List <Order>(); orders.Add(order); HttpStatusCode status = await PutDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); return(status); } }
/// <summary> /// Uploads for other day. /// </summary> /// <param name="order">The order.</param> /// <param name="day">The day.</param> /// <param name="storageAccountUrl">The storage account URL.</param> /// <param name="storageAccountKey">The storage account key.</param> /// <param name="serviceBusConnectionString">The service bus connection string.</param> /// <returns></returns> public static async Task <HttpStatusCode> UploadForOtherDay(Order order, DateTime day, string storageAccountUrl, string storageAccountKey, string serviceBusConnectionString) { string stringDate = day.ToString("yyyy-MM-dd"); try { OrderBlob orderBlob = new OrderBlob(); orderBlob.OrderList = new List <Order>(); orderBlob = JsonConvert.DeserializeObject <OrderBlob>(BotMethods.GetDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", storageAccountUrl, storageAccountKey)); orderBlob.OrderList.Add(order); HttpStatusCode status = await BotMethods.PutDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); return(status); } catch { try { OrderBlob orderBlob = new OrderBlob(); orderBlob.OrderList = new List <Order>(); order.Date = DateTime.Now; orderBlob.OrderList.Add(order); HttpStatusCode status = await BotMethods.PutDocument("orders", "orders_" + stringDate + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); return(status); } catch (Exception ex) { return(HttpStatusCode.BadRequest); } } }
/// <summary> /// delets the entry of your order. Equivalent zu DeleteOrder() /// </summary> /// <param name="order">The order.</param> /// <param name="storageAccountUrl">The storage account URL.</param> /// <param name="storageAccountKey">The storage account key.</param> /// <param name="serviceBusConnectionString">The service bus connection string.</param> public static void DeleteOrder(Order order, string storageAccountUrl, string storageAccountKey, string serviceBusConnectionString) { string date = order.Date.ToString("yyyy-MM-dd"); OrderBlob orderBlob = new OrderBlob(); int weeknumber = (DateTime.Now.DayOfYear / 7) + 1; try { orderBlob = JsonConvert.DeserializeObject <OrderBlob>(GetDocument("orders", "orders_" + date + "_" + order.Name + ".json", storageAccountUrl, storageAccountKey)); int orderID = orderBlob.OrderList.FindIndex(x => x.Name == order.Name); orderBlob.OrderList.RemoveAt(orderID); PutDocument("orders", "orders_" + date + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); } catch (Exception ex) // enters if blob dont exist { List <Order> orders = new List <Order>(); orders.Add(order); PutDocument("orders", "orders_" + date + "_" + order.Name + ".json", JsonConvert.SerializeObject(orderBlob), "q.planbutlerupdateorder", serviceBusConnectionString); } }