コード例 #1
0
        /// <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);
            }
        }
コード例 #2
0
        /// <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);
                }
            }
        }
コード例 #3
0
        /// <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);
            }
        }