public UpdateProjectTypeResponse UpdateProjectType(UpdateProjectTypeRequest request) { UpdateProjectTypeResponse response = new UpdateProjectTypeResponse(); response.ExceptionState = false; ProjectType projectType = new ProjectType(); projectType.Id = request.Id; projectType.Name = request.Name.ToUpper(new CultureInfo("tr-TR")); projectType.Description = string.IsNullOrEmpty(request.Description) ? string.Empty : request.Description.ToUpper(new CultureInfo("tr-TR")); if (projectType.Name != _projectTypeRepository.FindBy(request.Id).Name) { Query query = new Query(); query.Add(Criterion.Create<ProjectType>(c => c.Name, projectType.Name, CriteriaOperator.Equal)); if (_projectTypeRepository.FindBy(query).Count() > 0) { response.ExceptionState = true; response.ExceptionMessage = @"Bu isimde bir projec tipi zaten var. Lütfen proje tipi adını benzersiz bir isim olarak düzenleyin."; response.ProjectType = projectType.ConvertToProjectTypeView(); return response; } } _projectTypeRepository.Save(projectType); _unitOfWork.Commit(); response.ProjectType = projectType.ConvertToProjectTypeView(); return response; }
/*********************************************************/ /* ProjectType Implementations */ /*********************************************************/ #region ProjectType Implementations public CreateProjectTypeResponse CreateProjectType(CreateProjectTypeRequest request) { CreateProjectTypeResponse response = new CreateProjectTypeResponse(); response.ExceptionState = false; ProjectType projectType = new ProjectType(); projectType.Name = request.Name.ToUpper(new CultureInfo("tr-TR")); projectType.Description = string.IsNullOrEmpty(request.Description) ? string.Empty : request.Description.ToUpper(new CultureInfo("tr-TR")); Query query = new Query(); query.Add(Criterion.Create<ProjectType>(c => c.Name, projectType.Name, CriteriaOperator.Equal)); if (_projectTypeRepository.FindBy(query).Count() > 0) { response.ExceptionState = true; response.ExceptionMessage = @"Bu isimde bir proje tipi zaten var. Lütfen proje tipi adını benzersiz bir isim olarak düzenleyin."; response.ProjectType = projectType.ConvertToProjectTypeView(); return response; } object identityToken = _projectTypeRepository.Add(projectType); _unitOfWork.Commit(); if (identityToken == null) { response.ExceptionState = true; response.ExceptionMessage = @"Proje tipi kaydedilemedi. Lütfen daha sonra tekrar deneyin."; return response; } response.ProjectType = _projectTypeRepository.FindBy((int)identityToken).ConvertToProjectTypeView(); return response; }