Esempio n. 1
0
        public Boolean DeleteMenu(Int32 id) {
            ItemService _itemService = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            try {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    ChecksMenu menuItem = db.ChecksMenus.FirstOrDefault(m => m.id == id);
                    if (menuItem != default(ChecksMenu)) {
                        db.ChecksMenus.DeleteOnSubmit(menuItem);
                        IEnumerable<ChecksMenuProduct> products = db.ChecksMenuProducts.Where(m => m.CheckMenuId == id);
                        if (products.Any()) {
                            db.ChecksMenuProducts.DeleteAllOnSubmit(products);
                            foreach (ChecksMenuProduct product in products) {
                                IEnumerable<ChecksMenuProductItem> items = db.ChecksMenuProductItems.Where(m => m.ProductId == product.id);
                                db.ChecksMenuProductItems.DeleteAllOnSubmit(items);
                            }
                        }
                    }
                    db.SubmitChanges();
                }
            }
            catch (Exception ex) {
                return false;
            }
            return true;
        }
Esempio n. 2
0
        public void SaveItem(Int32 productId, Int32 knopaId, CommonUnit.ProductType type)
        {
            ItemService      _itemService      = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            ChecksMenuProductItem query = null;

            if (productId != 0 && knopaId != 0)
            {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    if (type == CommonUnit.ProductType.Alternatives)
                    {
                        query = db.ChecksMenuProductItems.FirstOrDefault(m => m.ProductId == productId);
                        if (query != default(ChecksMenuProductItem))
                        {
                            query.ItemId = knopaId;
                        }
                    }
                    else if (type == CommonUnit.ProductType.Addons)
                    {
                        query = db.ChecksMenuProductItems.FirstOrDefault(m => m.ProductId == productId && m.ItemId == knopaId);
                        if (query == default(ChecksMenuProductItem))
                        {
                            query           = new ChecksMenuProductItem();
                            query.ItemId    = knopaId;
                            query.ProductId = productId;
                            db.ChecksMenuProductItems.InsertOnSubmit(query);
                        }
                        else
                        {
                            db.ChecksMenuProductItems.DeleteOnSubmit(query);
                        }
                    }
                    db.SubmitChanges();
                }
            }
        }
Esempio n. 3
0
        public ChecksMenu SaveMenuItem(Item menuItem, Int32 tableId, Int32 orderId, Int32 userId)
        {
            ItemService      _itemService      = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            ChecksMenu orderCheckMenu;

            try {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    // New order
                    TableOrder tableOrder = db.TableOrders.FirstOrDefault(m => m.TableId == tableId && m.Status != (Int32)CommonUnit.TableOrderStatus.Closed);
                    if (tableOrder == default(TableOrder))
                    {
                        tableOrder         = new TableOrder();
                        tableOrder.TableId = tableId;
                        tableOrder.Status  = (Int32)CommonUnit.TableOrderStatus.Open;
                        db.TableOrders.InsertOnSubmit(tableOrder);
                        db.SubmitChanges();
                    }

                    Check orderCheck = db.Checks.FirstOrDefault(m => m.id == orderId);
                    if (orderCheck == default(Check))
                    {
                        orderCheck = new Check();
                        orderCheck.TableOrderId = tableOrder.id;
                        orderCheck.Type         = (Int32)CommonUnit.CheckType.Guest;
                        orderCheck.Status       = (Int32)CommonUnit.CheckStatus.Active;
                        orderCheck.UserId       = userId;
                        db.Checks.InsertOnSubmit(orderCheck);
                        db.SubmitChanges();
                    }

                    orderCheckMenu         = new ChecksMenu();
                    orderCheckMenu.CheckId = orderCheck.id;
                    orderCheckMenu.MenuId  = menuItem.id;
                    orderCheckMenu.Status  = (Int32)CommonUnit.MenuItemStatus.Active;
                    db.ChecksMenus.InsertOnSubmit(orderCheckMenu);
                    db.SubmitChanges();

                    foreach (ItemProduct itemProduct in menuItem.ItemProducts)
                    {
                        ChecksMenuProduct product = new ChecksMenuProduct();
                        product.CheckMenuId = orderCheckMenu.id;
                        product.ItemId      = itemProduct.id;
                        db.ChecksMenuProducts.InsertOnSubmit(product);
                        db.SubmitChanges();
                        if (itemProduct.ItemProductAssociations.Count() > 0)
                        {
                            ChecksMenuProductItem item = new ChecksMenuProductItem();
                            item.ProductId = product.id;
                            item.ItemId    = itemProduct.ItemProductAssociations[0].id;
                            db.ChecksMenuProductItems.InsertOnSubmit(item);
                            db.SubmitChanges();
                        }
                    }
                }
            }
            catch (Exception ex) {
                return(null);
            }
            return(orderCheckMenu);
        }
Esempio n. 4
0
        public Boolean UpdateInventory(Int32 checkId) {
            List<Services.ChecksMenu> menus;
            List<ChecksMenuProduct> products;
            ItemService _itemService = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            try {
                menus = GetMenuItems(checkId);

                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    Check check = db.Checks.Where(m => m.id == checkId).FirstOrDefault();
                    foreach (Services.ChecksMenu menuItem in menus) {
                        /// We need to make sure that we are not double logging inventory
                        if (!db.InventoryRegistryCheckMenus.Any(m => m.ChecksMenuId == menuItem.id)) {
                            Item itemMenu = _itemService.GetItem(menuItem.MenuId);
                            foreach (ItemInventoryAssociation association in itemMenu.ItemInventoryAssociations) {
                                _inventoryService.AddInventoryRegistry(association, menuItem);
                            }

                            products = GetProducts(menuItem.id);
                            if (products.Any()) {
                                foreach (Services.ChecksMenuProduct productItem in products) {
                                    foreach (Services.ChecksMenuProductItem associatedItem in productItem.ChecksMenuProductItems) {
                                        Item prodItem = _itemService.GetItemProductAssosiationsById(associatedItem.ItemId);
                                        foreach (ItemInventoryAssociation association in prodItem.ItemInventoryAssociations) {
                                            _inventoryService.AddInventoryRegistry(association, menuItem);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                return true;
            }
            catch (Exception ex) {
                return false;
            }
        }
Esempio n. 5
0
        public ChecksMenu SaveMenuItem(Item menuItem, Int32 tableId, Int32 orderId, Int32 userId) {
            ItemService _itemService = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            ChecksMenu orderCheckMenu;
            try {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    // New order
                    TableOrder tableOrder = db.TableOrders.FirstOrDefault(m => m.TableId == tableId && m.Status != (Int32)Common.TableOrderStatus.Closed);
                    if (tableOrder == default(TableOrder)) {
                        tableOrder = new TableOrder();
                        tableOrder.TableId = tableId;
                        tableOrder.Status = (Int32)Common.TableOrderStatus.Open;
                        db.TableOrders.InsertOnSubmit(tableOrder);
                        db.SubmitChanges();
                    }

                    Check orderCheck = db.Checks.FirstOrDefault(m => m.id == orderId);
                    if (orderCheck == default(Check)) {
                        orderCheck = new Check();
                        orderCheck.TableOrderId = tableOrder.id;
                        orderCheck.Type = (Int32)Common.CheckType.Guest;
                        orderCheck.Status = (Int32)Common.CheckStatus.Active;
                        orderCheck.UserId = userId;
                        db.Checks.InsertOnSubmit(orderCheck);
                        db.SubmitChanges();
                    }

                    orderCheckMenu = new ChecksMenu();
                    orderCheckMenu.CheckId = orderCheck.id;
                    orderCheckMenu.MenuId = menuItem.id;
                    orderCheckMenu.Status = (Int32)Common.MenuItemStatus.Active;
                    db.ChecksMenus.InsertOnSubmit(orderCheckMenu);
                    db.SubmitChanges();

                    foreach (ItemProduct itemProduct in menuItem.ItemProducts) {
                        ChecksMenuProduct product = new ChecksMenuProduct();
                        product.CheckMenuId = orderCheckMenu.id;
                        product.ItemId = itemProduct.id;
                        db.ChecksMenuProducts.InsertOnSubmit(product);
                        db.SubmitChanges();
                        if (itemProduct.ItemProductAssociations.Count() > 0) {
                            ChecksMenuProductItem item = new ChecksMenuProductItem();
                            item.ProductId = product.id;
                            item.ItemId = itemProduct.ItemProductAssociations[0].id;
                            db.ChecksMenuProductItems.InsertOnSubmit(item);
                            db.SubmitChanges();
                        }
                    }
                }
            }
            catch (Exception ex) {
                return null;
            }
            return orderCheckMenu;
        }
Esempio n. 6
0
        public void SaveItem(Int32 productId, Int32 knopaId, Common.ProductType type) {
            ItemService _itemService = new ItemService();
            InventoryService _inventoryService = new InventoryService();

            ChecksMenuProductItem query = null;
            if (productId != 0 && knopaId != 0) {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    if (type == Common.ProductType.Alternatives) {
                        query = db.ChecksMenuProductItems.FirstOrDefault(m => m.ProductId == productId);
                        if (query != default(ChecksMenuProductItem)) {
                            query.ItemId = knopaId;
                        }
                    }
                    else if (type == Common.ProductType.Addons) {
                        query = db.ChecksMenuProductItems.FirstOrDefault(m => m.ProductId == productId && m.ItemId == knopaId);
                        if (query == default(ChecksMenuProductItem)) {
                            query = new ChecksMenuProductItem();
                            query.ItemId = knopaId;
                            query.ProductId = productId;
                            db.ChecksMenuProductItems.InsertOnSubmit(query);
                        }
                        else {
                            db.ChecksMenuProductItems.DeleteOnSubmit(query);
                        }
                    }
                    db.SubmitChanges();
                }
            }
        }