public async Task <IActionResult> Delete(string id) { var _request = new ProjectDeleteRequest(id); var _result = await _mediator.Send(_request); return(_result.DeleteRecords > 0 ? (IActionResult)Ok(_result) : NotFound()); }
public static ProjectDeleteRequest GetProjectDeleteRequest() { var project = GetOrganizationOneProjectOne(); var request = new ProjectDeleteRequest(CurrentUserId, project.Uid); return(request); }
public async Task <ProjectDeleteResponse> DeleteProject(ProjectDeleteRequest request) { var response = new ProjectDeleteResponse(); var currentUser = _cacheManager.GetCachedCurrentUser(request.CurrentUserId); if (!currentUser.IsAdmin) { response.SetInvalid(); return(response); } var project = await _projectRepository.Select(x => x.Uid == request.ProjectUid); if (project.IsNotExist()) { response.SetInvalid(); response.ErrorMessages.Add("project_not_found"); return(response); } if (project.OrganizationId != currentUser.OrganizationId) { response.SetFailed(); return(response); } if (await _organizationRepository.Any(x => x.Id == project.OrganizationId && !x.IsActive)) { response.SetInvalid(); return(response); } if (await _labelRepository.Any(x => x.ProjectId == project.Id)) { response.SetInvalid(); response.ErrorMessages.Add("has_children"); return(response); } var result = await _projectRepository.Delete(request.CurrentUserId, project.Id); if (result) { response.Status = ResponseStatus.Success; return(response); } var uowResult = await _projectUnitOfWork.DoDeleteWork(request.CurrentUserId, project); if (uowResult) { response.Status = ResponseStatus.Success; return(response); } response.SetFailed(); return(response); }
public async Task <dynamic> DeleteAsync(Guid id, CancellationToken cancellationToken) { var request = new ProjectDeleteRequest() { Id = id }; var result = await _mediator.Send(request, cancellationToken); return(new HRAssistActionResult(result)); }
public ProjectDelete(ProjectDeleteRequest request) { if (request != null && request.Identifiers != null && request.Identifiers.Any()) { using (var dbContext = new ApplicationDbContext()) { var projectsToDelete = dbContext.Projects.Where(aProject => request.Identifiers.Contains(aProject.Identifier)); dbContext.Projects.RemoveRange(projectsToDelete); dbContext.SaveChanges(); } Response = new ProjectDeleteResponse(); } }
public void DeleteProject(ProjectDeleteRequest request) { if (!CheckProject(request.id)) { throw new NoSuchProjectException(); } var taskId = GetTaskId(request.id); using (var connection = new SqlConnection(connectionString)) using (var command = new SqlCommand()) { var tran = connection.BeginTransaction(); command.CommandText = "delete from project where idProject = @id"; command.Parameters.AddWithValue("id", request.id); DeleteTask(taskId, connection); tran.Commit(); } }
public async Task <IActionResult> Delete(Guid id) { var projectUid = id; if (projectUid.IsEmptyGuid()) { return(Forbid()); } var request = new ProjectDeleteRequest(CurrentUser.Id, projectUid); var response = await _projectService.DeleteProject(request); if (response.Status.IsNotSuccess) { return(Json(new CommonResult { IsOk = false, Messages = response.ErrorMessages })); } CurrentUser.IsActionSucceed = true; return(Json(new CommonResult { IsOk = true })); }
public ProjectDeleteResponse ProjectDelete(ProjectDeleteRequest request) => new ProjectDelete(request).Response;