public void update(MenuCategoryDto menu_category_dto)
 {
     try
     {
         using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
         {
             MenuCategory menuCategory = _menuCategoryRepo.getById(menu_category_dto.menu_category_id);
             if (menuCategory == null)
             {
                 throw new ItemNotFoundException($"The Item Category with id {menu_category_dto.menu_category_id} doesnot exist");
             }
             //if (menu_category_dto.image_name == null)
             //{
             //    menu_category_dto.image_name = menuCategory.image_name;
             //}
             //string oldImage = menuCategory.image_name;
             //if (!string.IsNullOrWhiteSpace(menu_category_dto.image_name))
             //{
             //    if (!string.IsNullOrWhiteSpace(oldImage))
             //    {
             //        deleteImage(oldImage);
             //    }
             //}
             _menuCategoryMaker.copy(menuCategory, menu_category_dto);
             _menuCategoryRepo.update(menuCategory);
             tx.Complete();
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
        public IActionResult add(MenuCategoryModel menu_category_model)
        {
            //var topCategory = _menuCategoryRepo.getQueryable().Where(a => a.parent_id == 0 && a.is_enabled == true).ToList();
            try
            {
                if (ModelState.IsValid)
                {
                    //if (file != null)
                    //{
                    //    string fileName = menu_category_model.name;
                    //    menu_category_model.image_name = _fileHelper.saveImageAndGetFileName(file, fileName);

                    //}
                    MenuCategoryDto menu_category_dto = getStockCategoryDtoFromModel(menu_category_model);
                    _menuCategoryService.save(menu_category_dto);
                    AlertHelper.setMessage(this, "Item Category added successfully.", messageType.success);
                    return(RedirectToAction("index"));
                }
            }
            catch (Exception ex)
            {
                AlertHelper.setMessage(this, ex.Message, messageType.error);
                return(RedirectToAction("add"));
            }
            return(View(menu_category_model));
        }
 public void copy(MenuCategory menu_category, MenuCategoryDto dto)
 {
     menu_category.menu_category_id = dto.menu_category_id;
     //menu_category.parent_id = dto.parent_id;
     menu_category.is_enabled = dto.is_enabled;
     //menu_category.image_name = dto.image_name;
     //menu_category.description = dto.description;
     menu_category.name = dto.name;
 }
 public void save(MenuCategoryDto menu_category_dto)
 {
     try
     {
         using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
         {
             var menuCategory = _menuCategoryRepo.getQueryable().Where(a => a.name == menu_category_dto.name).SingleOrDefault();
             if (menuCategory != null)
             {
                 throw new ItemUsedException($"Category Name with {menu_category_dto.name} already exist.");
             }
             MenuCategory menu_category = new MenuCategory();
             _menuCategoryMaker.copy(menu_category, menu_category_dto);
             _menuCategoryRepo.insert(menu_category);
             tx.Complete();
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
        public IActionResult edit(MenuCategoryModel menuCategoryModel)
        {
            try
            {
                //if (file != null)
                //{
                //    string fileName = menuCategoryModel.name;
                //    menuCategoryModel.image_name = _fileHelper.saveImageAndGetFileName(file, fileName);

                //}

                MenuCategoryDto menuCategoryDto = getStockCategoryDtoFromModel(menuCategoryModel);
                _menuCategoryService.update(menuCategoryDto);
                AlertHelper.setMessage(this, "Item Category Updated successfully.", messageType.success);
                return(RedirectToAction("index"));
            }
            catch (Exception ex)
            {
                AlertHelper.setMessage(this, ex.Message, messageType.error);
                return(RedirectToAction("index"));
            }
            return(View(menuCategoryModel));
        }