public async Task <IActionResult> AddProjectCycle([FromBody] [Bind("projectId", "user", "cycleName", "cycleDescription", "startDate", "endDate")] AddProjectCycle projectCycle) { if (ModelState.IsValid) { ProjectCycle pC = await _projectRepository.AddCycleToProjectAsync(projectCycle); if (pC != null) { ProjectCycle c = new ProjectCycle { CycleActive = pC.CycleActive, CycleName = pC.CycleName, CycleDescription = pC.CycleDescription, CyclePlannedStart = pC.CyclePlannedStart, CyclePlannedEnd = pC.CyclePlannedEnd, Unique_CycleIdString = pC.Unique_CycleIdString, CycleNumber = pC.CycleNumber }; return(Ok(c)); } else { return(Ok("error")); } } else { return(BadRequest()); } }
public async Task <ProjectCycle> AddCycleToProjectAsync(AddProjectCycle pC) { Project p = await GetProjectByUniqueId(pC.projectId); p.NumberOfProjectCycles = p.NumberOfProjectCycles + 1; ProjectCycle c = new ProjectCycle { }; c.ProjectId = p.ProjectId; c.CycleActive = false; c.CycleDescription = pC.cycleDescription; c.CycleName = pC.cycleName; c.CycleNumber = p.NumberOfProjectCycles; c.CyclePlannedStart = pC.startDate; c.CyclePlannedEnd = pC.endDate; c.CycleRegistered = DateTime.Now; c.Unique_CycleIdString = getGuid(); p.ProjectCycles.Add(c); _db.Update(p); if (await _db.SaveChangesAsync() > 0) { ProjectCycle newCycle = await GetProjectCycleByUniqueId(c.Unique_CycleIdString); return(newCycle); } else { return(null); } }
public async Task <IActionResult> ViewProjectCycle([FromRoute] string id) { ProjectCycle c = await _projectRepository.GetProjectCycleByUniqueId(id); ViewProjectCycleViewModel model = new ViewProjectCycleViewModel { ProjectCycle = c }; return(View(model)); }
public async Task <IActionResult> ViewProjectCycleTask([FromRoute] string id) { ProjectCycleTask t = await _projectRepository.GetProjectCycleTaskByUniqueId(id); ProjectCycle c = await _projectRepository.GetProjectCycleByUniqueId(t.ProjectCycleId); Project p = await _projectRepository.GetProjectByUniqueId(c.ProjectId); ViewProjectCycleTaskViewModel model = new ViewProjectCycleTaskViewModel { ProjectCycleTask = await _projectRepository.GetProjectCycleTaskByUniqueId(id), ProjectCycle = c, Project = p }; return(View(model)); }
public async Task <IActionResult> EditProjectCycle([FromRoute] string id) { ProjectCycle c = await _projectRepository.GetProjectCycleByUniqueId(id); EditProjectCycleViewModel model = new EditProjectCycleViewModel { unique_CycleIdString = c.Unique_CycleIdString, cycleName = c.CycleName, cycleDescription = c.CycleDescription, startDate = c.CyclePlannedStart, endDate = c.CyclePlannedEnd, cycleActive = c.CycleActive, cycleFinished = c.CycleFinished }; return(View(model)); }
/////////////// ////////////// /////////////// Project ////////////// /////////////// ////////////// public async Task <string> CreateProject(AddProject project) { Project p = new Project { }; p.ProjectName = project.ProjectName; p.ProjectClient = project.ProjectClient; p.ProjectDescription = project.ProjectDescription; p.ProjectPlannedStart = project.ProjectPlannedStart; p.ProjectPlannedEnd = project.ProjectPlannedEnd; p.ProjectCreatedByUser = project.ProjectCreatedByUser; p.ProjectRegistered = DateTime.Now; p.Unique_ProjectIdString = getGuid(); ProjectCycle initCycle = new ProjectCycle { CycleName = "Mine Oppgaver", CycleRegistered = DateTime.Now, Unique_CycleIdString = getGuid(), CycleNumber = 1, CyclePlannedStart = project.ProjectPlannedStart, CyclePlannedEnd = project.ProjectPlannedEnd, CycleDescription = "Du kan opprette alle oppgaver under denne syklusen, eller du kan lage flere sykluser. Hver syklus kan ha mange arbeidsoppgaver." }; List <ProjectCycle> initList = new List <ProjectCycle>(); initList.Add(initCycle); p.ProjectCycles = initList; p.NumberOfProjectCycles = initList.Count; _db.Project.Add(p); if (await _db.SaveChangesAsync() > 0) { return(p.Unique_ProjectIdString); } else { return(null); } }
// TODO: Edit all updates correct -ie comleted, active... public async Task <bool> EditProjectCycleAsync(EditProjectCycle pC) { ProjectCycle c = await GetProjectCycleByUniqueId(pC.unique_CycleIdString); if (pC.cycleActive != c.CycleActive) { c.CycleActive = pC.cycleActive; } if (pC.cycleDescription != c.CycleDescription) { c.CycleDescription = pC.cycleDescription; } if (pC.cycleFinished != c.CycleFinished) { c.CycleFinished = pC.cycleFinished; } if (pC.cycleName != c.CycleName) { c.CycleName = pC.cycleName; } if (pC.endDate != c.CyclePlannedEnd) { c.CyclePlannedEnd = pC.endDate; } if (pC.startDate != c.CyclePlannedStart) { c.CyclePlannedStart = pC.startDate; } _db.Update(c); if (await _db.SaveChangesAsync() > 0) { return(true); } else { return(false); } }
public async Task <string> DeleteProjectCycleAsync(string unique_id) { ProjectCycle c = await GetProjectCycleByUniqueId(unique_id); if (c != null) { string projectUniqueId = await getProjectCycleId(c.ProjectId); _db.RemoveRange(c); if (await _db.SaveChangesAsync() > 0) { return(projectUniqueId); } else { return(null); } } else { return(null); } }