示例#1
0
        public ExpenseHeadViewModel ModifyExpenseHead(ExpenseHeadDE mod)
        {
            ExpenseHeadViewModel model = new ExpenseHeadViewModel();

            try
            {
                DBOperations op = mod.IsActive ? DBOperations.Update : DBOperations.Delete;
                mod.SiteCode = AppConstants.SITE_CODE;
                model.ExpenseHead = mod;
                model.IsValid = model.Validate();
                if (model.IsValid)
                {
                    _bdmSvc.ModifyExpenseHead(mod);

                    model = RefreshExpenseHead();
                    model.Message = op == DBOperations.Update ? string.Format(AppConstants.CRUD_UPDATE, "ExpenseHead") : string.Format(AppConstants.CRUD_DELETE, "ExpenseHead");
                }
            }
            catch (Exception ex)
            {
                model.TranslateException(ex);
                if (ex.Message.Contains("Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. See http://go.microsoft.com/fwlink/?LinkId=472540 for information on understanding and handling optimistic concurrency exceptions."))
                {
                    model.IsActive = false;
                    model.Message = "Unable to modify ExpenseGroup Code";
                }
            }
            return model;
        }
示例#2
0
        public ExpenseHeadViewModel AddExpenseHead(ExpenseHeadViewModel model)
        {
            try
            {
                model.IsValid = model.Validate();
                if (model.IsValid)
                {
                    if (_bdmSvc.ExpenseHeadCodeExists(AppConstants.SITE_CODE, model.ExpenseHead.ExpenseHeadCode))
                    {
                        model.FieldId = "groupCode";
                        model.Message = string.Format(AppConstants.VALIDATION_ALREADY_EXISTS, "ExpenseHead Code");
                        model.IsValid = false;
                    }

                    if (model.IsValid)
                    {
                        model.ExpenseHead.SiteCode = AppConstants.SITE_CODE;
                        _bdmSvc.AddExpenseHead(model.ExpenseHead);

                        model = RefreshExpenseHead();
                        model.Message = string.Format(AppConstants.CRUD_CREATE, "ExpenseHead");
                    }
                }
            }
            catch (Exception ex)
            {
                model.TranslateException(ex);
            }

            return model;
        }