//
        // GET: /SaleOrIncomeCategory/Details/By ID
        public ActionResult Details(int id)
        {
            var errorViewModel = new ErrorViewModel();

            try
            {
                var saleOrIncomeCategory = _db.SaleOrIncomeCategories.Find(id);
                if (saleOrIncomeCategory != null)
                {
                    var viewModel = new SaleOrIncomeCategoryViewModel() { SaleOrIncomeCategoryId = saleOrIncomeCategory.SaleOrIncomeCategoryId, SaleOrIncomeCategoryName = saleOrIncomeCategory.SaleOrIncomeCategoryName };
                    return PartialView("_Details", viewModel);
                }

                errorViewModel = ExceptionHelper.ExceptionErrorMessageForNullObject();
            }
            catch (Exception ex)
            {
                errorViewModel = ExceptionHelper.ExceptionErrorMessageFormat(ex);
            }

            return PartialView("_ErrorPopup", errorViewModel);
        }
 //
 // GET: /SaleOrIncomeCategory/Add
 public ActionResult Add()
 {
     var viewModel = new SaleOrIncomeCategoryViewModel() { SaleOrIncomeCategoryId = 0 };
     //return View();
     return PartialView("_AddOrEdit", viewModel);
 }
        public ActionResult Save(SaleOrIncomeCategoryViewModel saleOrIncomeCategoryViewModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //add
                    if (saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryId == 0 && saleOrIncomeCategoryViewModel.ActionName == "Add")
                    {
                        var model = new SaleOrIncomeCategory() { SaleOrIncomeCategoryId = saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryId, SaleOrIncomeCategoryName = saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryName };
                        _db.SaleOrIncomeCategories.Add(model);
                    }
                    else if (saleOrIncomeCategoryViewModel.ActionName == "Edit") //edit
                    {
                        SaleOrIncomeCategory saleOrIncomeCategory = _db.SaleOrIncomeCategories.Find(saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryId);

                        if (saleOrIncomeCategory != null)
                        {

                            saleOrIncomeCategory.SaleOrIncomeCategoryId = saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryId;
                            saleOrIncomeCategory.SaleOrIncomeCategoryName = saleOrIncomeCategoryViewModel.SaleOrIncomeCategoryName;
                            _db.Entry(saleOrIncomeCategory).State = EntityState.Modified;

                        }
                        else
                        {
                            return Content(KendoUiHelper.GetKendoUiWindowAjaxSuccessMethod(Boolean.FalseString, MessageType.warning.ToString(), ExceptionHelper.ExceptionMessageForNullObject()));
                        }
                    }

                    _db.SaveChanges();

                    //return Content(KendoUiHelper.GetKendoUiWindowAjaxSuccessMethod(Boolean.TrueString, MessageType.success.ToString(), "Saved Successfully."));
                    return Content(KendoUiHelper.GetKendoUiWindowAjaxSuccessMethod(Boolean.TrueString, saleOrIncomeCategoryViewModel.ActionName, MessageType.success.ToString(), "Saved Successfully."));

                }

                return Content(KendoUiHelper.GetKendoUiWindowAjaxSuccessMethod(Boolean.TrueString, MessageType.success.ToString(), ExceptionHelper.ModelStateErrorFormat(ModelState)));
            }
            catch (Exception ex)
            {
                return Content(KendoUiHelper.GetKendoUiWindowAjaxSuccessMethod(Boolean.TrueString, MessageType.success.ToString(), ExceptionHelper.ExceptionMessageFormat(ex)));
            }
        }