public async Task <ActionResult> Update(ClassificationModel model)
        {
            if (!_permissionService.Authorize(PermissionProvider.ManageDepartment))
            {
                return(AccessDeniedView());
            }
            var classification = await _classificationService.GetByIdAsync(model.Id);

            if (classification == null)
            {
                throw new ArgumentException("No classification found with the specified id");
            }

            var existedClassification = await _classificationService.GetClassificationByClassificationCode(model.Code);

            if (existedClassification != null && existedClassification.Id != classification.Id)
            {
                return(Content("Classification Code has Existed!"));
            }


            classification.Code              = model.Code;
            classification.Name              = model.Name;
            classification.Description       = model.Description;
            classification.Severity          = model.Severity;
            classification.Dectability       = model.Dectability;
            classification.FoundByFunctionId = model.FoundByFunction.Id == 0 ? null : (int?)model.FoundByFunction.Id;
            await _classificationService.UpdateAsync(classification);

            return(Json(new
            {
                status = "success",
            }));
        }