public void AddProjectRole(ProjectRoleDto projectRoleDto) { try { if (projectRoleDto.projectId == 0 || projectRoleDto.userId == 0 || projectRoleDto.projectName == null || projectRoleDto.userName == null) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.BadRequest; } else { Data.Database.projectroles projectroles = new Data.Database.projectroles { id = projectRoleDto.id, projectid = projectRoleDto.projectId, userid = projectRoleDto.userId }; unitOfWork.GetRepository <Data.Database.projectroles>().Add(projectroles); unitOfWork.Complete(); ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK; } } catch (Exception) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.InternalServerError; throw; } }
public string SetProjectRole(ProjectRoleDto projectRoleDto) //Projectrole'ü update etmeye yarayan kod. { using (UnitOfWorkPattern unitOf = new UnitOfWorkPattern()) { projectrole prole = unitOf.RepositoryPattern <projectrole>().Get(projectRoleDto.Id); if (prole != null) { try { prole.projectid = projectRoleDto.ProjectId; prole.userid = projectRoleDto.UserId; unitOf.RepositoryPattern <projectrole>().Update(prole); unitOf.Save(); return("Kayıt güncellendi"); } catch { return("Güncellerken bir hata oluştu"); } } else { return("Kayıt bulunamadı"); } } }
public async Task <IActionResult> CreateRole([FromBody] ProjectRoleDto role) { if (role == null) { return(BadRequest()); } var newRole = new ProjectRoles { Name = role.Name, System = false }; _db.ProjectRoles.Add(newRole); await _db.SaveChangesAsync(); if (role.Permissions != null) { var permissionSlugs = role.Permissions.Select(p => p.ProjectPermissionSlug); var existingPermissions = await _db.ProjectPermissions.Where(p => permissionSlugs.Contains(p.ProjectPermissionSlug)).ToListAsync(); _db.ProjectRolePermissions.AddRange(existingPermissions.Select(p => new ProjectRolePermissions { ProjectRoleId = newRole.ProjectRoleId, ProjectPermissionSlug = p.ProjectPermissionSlug })); await _db.SaveChangesAsync(); } return(Ok(new ProjectRoleDto(newRole))); }
public void SetProjectRole(ProjectRoleDto projectRoleDto) { try { if (projectRoleDto.id == 0 || projectRoleDto.projectId == 0 || projectRoleDto.projectName == null || projectRoleDto.userId == 0 || projectRoleDto.userName == null) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.BadRequest; } var result = unitOfWork.GetRepository <Data.Database.projectroles>().Get(projectRoleDto.id); if (result == null) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.NotFound; } else { result.projectid = projectRoleDto.projectId; result.userid = projectRoleDto.userId; unitOfWork.GetRepository <Data.Database.projectroles>().Set(result); unitOfWork.Complete(); ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK; } } catch (Exception) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.InternalServerError; throw; } }
public void AddProjectRole(ProjectRoleDto prdto) //ProjectRole eklemeyi sağlayan servis. Parametre olarak ProjectDto alır. { using (UnitOfWorkPattern unitOf = new UnitOfWorkPattern()) { projectrole prol = new projectrole() //Yukarıdaki işlemin aynısını uyguladık. { userid = prdto.UserId, projectid = prdto.ProjectId }; unitOf.RepositoryPattern <projectrole>().Add(prol); unitOf.Save(); } }
public string SetProjectRole(ProjectRoleDto projectRoleDto) { using (UnitOfWork unitOfWork = new UnitOfWork(masterContext)) { ProjectRole projectRole = unitOfWork.GetRepository <ProjectRole>().Get(projectRoleDto.Id); projectRole.Id = projectRoleDto.Id; projectRole.UserId = projectRoleDto.UserId; projectRole.ProjectId = projectRoleDto.ProjectId; unitOfWork.GetRepository <ProjectRole>().Update(projectRole); unitOfWork.SaveChange(); } return("ProjectRole güncelleme başarılı"); }
public string AddProjectRole(ProjectRoleDto projectRoleDto) { using (UnitOfWork unitOfWork = new UnitOfWork(masterContext)) { ProjectRole projectRole = new ProjectRole() { Id = projectRoleDto.Id, UserId = projectRoleDto.UserId, ProjectId = projectRoleDto.ProjectId }; unitOfWork.GetRepository <ProjectRole>().Add(projectRole); unitOfWork.SaveChange(); } return("ProjectRole başarı ile kaydedildi"); }
public string AddProjectRole(ProjectRoleDto projectRoleDto) { using (UnitOfWork unitOfWork = new UnitOfWork(masterContext)) { ProjectRoles projectRoles = new ProjectRoles() { Id = projectRoleDto.Id, Projectid = projectRoleDto.Projectid, Userid = projectRoleDto.Userid }; unitOfWork.GetRepository <ProjectRoles>().Add(projectRoles); unitOfWork.SaveChanges(); return("Kayıt başarılı"); } }
public string DelProjectRole(ProjectRoleDto projectRoleDto) //ProjectRoleDto alıp delete işlemi uygulayan servis. { using (UnitOfWorkPattern unitOf = new UnitOfWorkPattern()) { projectrole prol = unitOf.RepositoryPattern <projectrole>().Get(projectRoleDto.Id); if (prol != null) { unitOf.RepositoryPattern <projectrole>().Delete(prol); unitOf.Save(); return("Kayıt silindi"); } else { return("Kayıt bulunamadı"); } } }
public List <ProjectRoleDto> GetProjectRoles(int id) { try { if (id == 0) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.BadRequest; return(new List <ProjectRoleDto>()); } var result = unitOfWork.GetRepository <Data.Database.projectroles>().GetProjectRoles(id); if (result == null) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.NotFound; return(new List <ProjectRoleDto>()); } else { List <ProjectRoleDto> projectRoleDtos = new List <ProjectRoleDto>(); foreach (var item in result) { var project = unitOfWork.GetRepository <Data.Database.project>().Get((int)item.projectid); var user = unitOfWork.GetRepository <Data.Database.user>().Get((int)item.userid); Data.DTO.ProjectRoleDto projectRoleDto = new ProjectRoleDto { id = item.id, projectId = (int)item.projectid, userId = (int)item.userid, projectName = project.name, userName = user.username }; projectRoleDtos.Add(projectRoleDto); } ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK; return(projectRoleDtos); } } catch (Exception) { ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.InternalServerError; throw; } }
public async Task <IActionResult> UpdateRole([FromRoute] int id, [FromBody] ProjectRoleDto updatedRole) { if (updatedRole == null) { return(BadRequest()); } var role = await _db.ProjectRoles.Include(r => r.ProjectRolePermissions).ThenInclude(rp => rp.ProjectPermissionSlugNavigation).SingleOrDefaultAsync(r => r.ProjectRoleId == id); if (role == null) { return(NotFound()); } if (role.System) { throw new Exception("System role is immutable"); } role.Name = updatedRole.Name; if (role.ProjectRolePermissions == null) { role.ProjectRolePermissions = new List <ProjectRolePermissions>(); } if (updatedRole.Permissions != null) { var toDelete = role.ProjectRolePermissions.Where(uc => !updatedRole.Permissions.Select(c => c.ProjectPermissionSlug).Contains(uc.ProjectPermissionSlug) && uc.ProjectRoleId == id).Select(uc => uc.ProjectPermissionSlug); var toAdd = updatedRole.Permissions.Where(u => !role.ProjectRolePermissions.Select(uc => uc.ProjectPermissionSlug).Contains(u.ProjectPermissionSlug)).Select(c => c.ProjectPermissionSlug); _db.ProjectRolePermissions.RemoveRange(_db.ProjectRolePermissions.Where(uc => toDelete.Contains(uc.ProjectPermissionSlug) && uc.ProjectRoleId == id)); var existingPermissionsToAdd = await _db.ProjectPermissions.Where(uc => toAdd.Contains(uc.ProjectPermissionSlug)).ToListAsync(); _db.ProjectRolePermissions.AddRange(existingPermissionsToAdd.Select(c => new ProjectRolePermissions { ProjectRoleId = id, ProjectPermissionSlug = c.ProjectPermissionSlug })); } await _db.SaveChangesAsync(); return(Ok(new ProjectRoleDto(role))); }