Exemplo n.º 1
0
        /// <summary>
        /// Проверка сохраняемой строки справочника кодировок дирекций.
        /// </summary>
        /// <param name="Row">Строка.</param>
        /// <param name="error"></param>
        /// <returns></returns>
        public bool ValidateDepartmentManagementRow(StaffDepartmentManagementDto Row, out string error)
        {
            //решил сделать все проврки здесь, чтобы все было в одном месте.
            error = string.Empty;

            //проверка на заполнение полей
            if (string.IsNullOrEmpty(Row.mName) || string.IsNullOrWhiteSpace(Row.mName) || string.IsNullOrEmpty(Row.mCode) || string.IsNullOrWhiteSpace(Row.mCode))
            {
                error = "Поля Название и Код дирекции должны быть заполнены!";
                return false;
            }

            //проверка на правильное заполнение поля с кодом
            if (Row.mCode.Trim().Length != 3)
            {
                error = "Код дирекции должен состоять из трех символов!";
                return false;
            }

            //проверка на повтор полей
            IList<StaffDepartmentManagement> db = StaffDepartmentManagementDao.LoadAll();
            if (db != null && db.Count != 0)
            {
                if (db.Where(x => x.Name == Row.mName && x.Id != Row.mId).Count() > 0)
                {
                    error = "Строка с таким названием филиала уже существует!";
                    return false;
                }

                if (db.Where(x => x.Code == Row.mCode && x.Id != Row.mId).Count() > 0)
                {
                    error = "Строка с таким кодом филиала уже существует!";
                    return false;
                }

                //проверка на вторичную привязку к подразделениям СКД
                if (db.Where(x => x.Department != null)
                    .Where(x => x.Department.Id == Row.mDepartmentId && x.Id != Row.mId)
                    .Count() > 0)
                {
                    error = "Это подразделение из СКД уже привязано к другой дирекции Финграда!";
                    return false;
                }
            }

            return true;
        }
Exemplo n.º 2
0
        public ActionResult AddEditStaffDepartmentMenegment(StaffDepartmentManagementDto itemToAddEdit)
        {
            string error = String.Empty;
            bool result = false;

            if (ValidateModel(itemToAddEdit, out error))
            {
                if (StaffListBl.SaveStaffDepartmentManagement(itemToAddEdit, out error))
                    result = true;
            }

            StaffDepartmentManagementModel model = StaffListBl.GetStaffDepartmentManagement(new StaffDepartmentManagementModel());
            ViewBag.Error = error;

            return Json(new { ok = result, msg = error, model.Managements });
        }
Exemplo n.º 3
0
        /// <summary>
        /// Сохраняем данные справочника кодировок дирекций.
        /// </summary>
        /// <param name="itemToAddEdit"></param>
        /// <param name="error"></param>
        /// <returns></returns>
        public bool SaveStaffDepartmentManagement(StaffDepartmentManagementDto itemToAddEdit, out string error)
        {
            error = string.Empty;
            User curUser = UserDao.Load(AuthenticationService.CurrentUser.Id);

            StaffDepartmentManagement entity = itemToAddEdit.mId == 0 ? null : StaffDepartmentManagementDao.Load(itemToAddEdit.mId);
            if (entity == null)
            {
                entity = new StaffDepartmentManagement()
                {
                    Code = itemToAddEdit.mCode,
                    Name = itemToAddEdit.mName,
                    DepartmentBranch = itemToAddEdit.BranchId == 0 ? null : StaffDepartmentBranchDao.Get(itemToAddEdit.BranchId),
                    Department = itemToAddEdit.mDepartmentId == 0 ? null : DepartmentDao.Load(itemToAddEdit.mDepartmentId),
                    Creator = curUser,
                    CreateDate = DateTime.Now
                };
            }
            else
            {
                entity.Code = itemToAddEdit.mCode;
                entity.Name = itemToAddEdit.mName;
                entity.DepartmentBranch = itemToAddEdit.BranchId == 0 ? null : StaffDepartmentBranchDao.Get(itemToAddEdit.BranchId);
                entity.Department = itemToAddEdit.mDepartmentId == 0 ? null : DepartmentDao.Load(itemToAddEdit.mDepartmentId);
                entity.Editor = curUser;
                entity.EditDate = DateTime.Now;
            }

            try
            {
                StaffDepartmentManagementDao.SaveAndFlush(entity);
                error = "Данные сохранены!";
            }
            catch (Exception ex)
            {
                StaffDepartmentManagementDao.RollbackTran();
                error = string.Format("Произошла ошибка при сохранении данных! Исключение:{0}", ex.GetBaseException().Message);
                return false;
            }

            return true;
        }
Exemplo n.º 4
0
 protected bool ValidateModel(StaffDepartmentManagementDto EditRow, out string error)
 {
     error = string.Empty;
     return StaffListBl.ValidateDepartmentManagementRow(EditRow, out error);
 }