/// <summary>
        ///     Deletes the department.
        /// </summary>
        /// <param name="departmentId">The department identifier.</param>
        /// <returns></returns>
        public DepartmentResponse DeleteDepartment(string departmentId)
        {
            var response = new DepartmentResponse {
                Acknowledge = AcknowledgeType.Success
            };

            try
            {
                var departmentEntity = DepartmentDao.GetDepartment(departmentId);
                if (departmentEntity == null)
                {
                    response.Acknowledge = AcknowledgeType.Failure;
                    response.Message     = "Dữ liệu cần xóa không tồn tại!";
                    return(response);
                }
                using (var scope = new TransactionScope())
                {
                    response.Message = DepartmentDao.DeleteDepartment(departmentEntity);
                    if (!string.IsNullOrEmpty(response.Message))
                    {
                        response.Message     = @"Bạn không thể xóa phòng ban '" + departmentEntity.DepartmentCode + "' vì đã có phát sinh trong chứng từ hoặc danh mục liên quan!";
                        response.Acknowledge = AcknowledgeType.Failure;
                        return(response);
                    }
                    scope.Complete();
                }
                response.DepartmentId = departmentEntity.DepartmentId;
                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;
                return(response);
            }
        }
Пример #2
0
        /// <summary>
        /// Sets the departments.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public DepartmentResponse SetDepartments(DepartmentRequest request)
        {
            var response = new DepartmentResponse();

            var departmentEntity = request.Department;

            if (request.Action != PersistType.Delete)
            {
                if (!departmentEntity.Validate())
                {
                    foreach (string error in departmentEntity.ValidationErrors)
                    {
                        response.Message += error + Environment.NewLine;
                    }
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }
            }
            try
            {
                if (request.Action == PersistType.Insert)
                {
                    var departments = DepartmentDao.GetDepartmentsByDepartmentCode(departmentEntity.DepartmentCode);
                    if (departments.Count > 0)
                    {
                        response.Acknowledge = AcknowledgeType.Failure;
                        response.Message     = @"Mã phòng ban " + departmentEntity.DepartmentCode + @" đã tồn tại !";
                        return(response);
                    }
                    AutoNumberListDao.UpdateIncreateAutoNumberListByValue("Department");
                    departmentEntity.DepartmentId = DepartmentDao.InsertDepartment(departmentEntity);
                    response.Message = null;
                }
                else if (request.Action == PersistType.Update)
                {
                    response.Message = DepartmentDao.UpdateDepartment(departmentEntity);
                }
                else
                {
                    var departmentForUpdate = DepartmentDao.GetDepartment(request.DepartmentId);
                    response.Message = DepartmentDao.DeleteDepartment(departmentForUpdate);
                }
            }
            catch (Exception ex)
            {
                response.Acknowledge = AcknowledgeType.Failure;
                response.Message     = ex.Message;
                return(response);
            }
            response.DepartmentId = departmentEntity != null ? departmentEntity.DepartmentId : 0;
            if (response.Message == null)
            {
                response.Acknowledge  = AcknowledgeType.Success;
                response.RowsAffected = 1;
            }
            else
            {
                response.Acknowledge  = AcknowledgeType.Failure;
                response.RowsAffected = 0;
            }

            return(response);
        }
Пример #3
0
        public ActionResult DeleteDep(DepartmentModel model)
        {
            var result = _depRepository.DeleteDepartment(model.DepID);

            return(RedirectToAction("ListDeparts"));
        }