// Метод для создания заказа public bool createOrder(string menu_client_id, int client_id, string present_order_consist, string history_order_consist, decimal order_worth) { try { _Current_Order = new Order(menu_client_id, client_id, present_order_consist, history_order_consist, order_worth); } // Если не удалось создать объект заказа catch (Exception) { return false; } return true; }
public void OrderTest() { // Тест конструктора // Ожидаемые данные string expected_menu_client_id = "1"; int expected_client_id = 23456; string expected_present_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + '1' + '"' + "}]"; string expected_history_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + '6' + '"' + "}]"; string expected_order_state = "opened"; decimal expected_order_worth = 2100.00M; // Создаем объект заказа Order order = new Order(expected_menu_client_id, expected_client_id, expected_present_order_consist, expected_history_order_consist, expected_order_worth); // Полученные данные using (AOSDB aos_db = new AOSDB()) { // Ищем заказ в таблице заказов в БД с ID // равным ID заказа AOS_BD_ORDER order_info = (from item in aos_db.AOS_BD_ORDER.ToList<AOS_BD_ORDER>() .AsParallel<AOS_BD_ORDER>() where item.PK_AOS_ID_ORDER == order.Order_ID select item).ToList<AOS_BD_ORDER>().Single(); // Утверждения Assert.AreEqual(expected_menu_client_id, order_info.ORDER_EMENU_CLIENT_ID); Assert.AreEqual(expected_client_id, order_info.FK_AOS_ID_CLIENT); Assert.AreEqual(expected_present_order_consist, order_info.ORDER_PRESENT_CONSIST); Assert.AreEqual(expected_history_order_consist, order_info.ORDER_HISTORY_CONSIST); Assert.AreEqual(expected_order_state, order.getOrderState()); Assert.AreEqual(expected_order_worth, order_info.ORDER_WORTH); } // Тест обновления данных заказа // Ожидаемые данные expected_client_id = 34567; expected_present_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + '6' + '"' + "}]"; expected_history_order_consist = "[{" + '"' + "id" + '"' + ":" + '"' + '5' + '"' + ',' + '"' + "count" + '"' + ':' + '"' + "12" + '"' + "}]"; expected_order_worth = 4200.00M; // Обновляем данные о заказе order.updateOrderContent(expected_client_id, expected_present_order_consist, expected_history_order_consist, expected_order_worth); // Полученные данные using (AOSDB aos_db = new AOSDB()) { // Ищем заказ в таблице заказов в БД с ID // равным ID заказа AOS_BD_ORDER order_info = (from item in aos_db.AOS_BD_ORDER.ToList<AOS_BD_ORDER>() .AsParallel<AOS_BD_ORDER>() where item.PK_AOS_ID_ORDER == order.Order_ID select item).ToList<AOS_BD_ORDER>().Single(); // Утверждения Assert.AreEqual(expected_present_order_consist, order_info.ORDER_PRESENT_CONSIST); Assert.AreEqual(expected_history_order_consist, order_info.ORDER_HISTORY_CONSIST); Assert.AreEqual(expected_order_worth, order_info.ORDER_WORTH); } // Тест закрытия заказа // Ожидаемые данные expected_order_state = "ended"; // Закрываем заказ order.closeOrder(); // Полученные данные using (AOSDB aos_db = new AOSDB()) { // Ищем заказ в таблице заказов в БД с ID // равным ID заказа AOS_BD_ORDER order_info = (from item in aos_db.AOS_BD_ORDER.ToList<AOS_BD_ORDER>() .AsParallel<AOS_BD_ORDER>() where item.PK_AOS_ID_ORDER == order.Order_ID select item).ToList<AOS_BD_ORDER>().Single(); // Утверждения Assert.AreEqual(expected_order_state, order.getOrderState()); // Очищаем БД от добавленного тестового значения aos_db.AOS_BD_ORDER.Remove(order_info); aos_db.SaveChanges(); } }
// Метод для закрытия сессии меню public bool getBill() { try { // Пересчитываем скидку клиента if (_Current_Client != null && _Current_Client.Client_ID != 0) _Current_Client.setClientDiscount(); // Закрываем заказ и возвращаем сессию в состояние // при старте _lang_menu_flag = "RU"; _Current_Order.closeOrder(); _Current_Order = null; _Current_Client = null; } // Если не удалось закрыть заказ catch (Exception) { return false; } return true; }