public async Task <ActionResult> EditStep(int stepId, LogChecklistSteps step) { step.Idstep = stepId; _repo.EditStep(step); var history = FileHistory(step, "Draft", "Edited a Step"); _repo.Add(history); await _repo.SaveAll(); return(NoContent()); }
private LogChecklistHistory FileHistory(LogChecklistSteps step, string status, string action) { return(new LogChecklistHistory { Idchecklist = step.Idchecklist, Version = step.Version, Status = status, FileTime = DateTime.Now, FileAction = action, FileBy = user }); }
public async Task <ActionResult> CreateDraft(int id, short ver, LogChecklist checklist) { if (id < 0 || ver < 0) { return(BadRequest("Id or version was not supplied")); } if (checklist.Status != "Approved") { return(BadRequest("Invalid Status")); } if (await _repo.CheckForDraft(id) != null) { return(BadRequest("Draft already exists")); } var steps = new List <LogChecklistSteps>(); short newVer = ver += 1; foreach (var step in checklist.LogChecklistSteps) { var copy = new LogChecklistSteps { Idchecklist = id, Version = newVer, Step = step.Step, StepText = step.StepText, Title = step.Title }; steps.Add(copy); } var newChecklist = new LogChecklist { Idchecklist = id, Version = newVer, Status = "Draft", Title = checklist.Title, ProdLine = checklist.ProdLine, Rel = checklist.Rel, Scope = checklist.Scope, Type = checklist.Type, LogChecklistSteps = steps }; _repo.Add(newChecklist); _repo.Add(LogHistory(newChecklist, "Create new Checklist Version", newChecklist.Version)); await _repo.SaveAll(); return(CreatedAtAction("GetbyId", new { id = newChecklist.Idchecklist, ver = newChecklist.Version }, newChecklist)); }
public async Task <ActionResult> AddStep(LogChecklistSteps step) { //get count var stepCount = _repo.GetStepCount(step); step.Step = (short)stepCount; _repo.Add(step); var history = FileHistory(step, "Draft", "Added a Step"); _repo.Add(history); await _repo.SaveAll(); return(CreatedAtRoute("GetStep", new { stepId = step.Idstep }, step)); }
public async Task <ActionResult> DeleteStep(int stepId, LogChecklistSteps step) { _repo.Delete(step); var checklist = await _repo.GetChecklist(step.Idchecklist, step.Version); var stepNum = 1; var steps = checklist.LogChecklistSteps.OrderByDescending(s => s.Step); foreach (var s in steps) { s.Step = (short)stepNum; stepNum++; } _repo.Add(FileHistory(step, "Draft", "Deleted a Step")); if (await _repo.SaveAll()) { return(NoContent()); } return(BadRequest("There was a problem deleting this step. Please try again")); }
public void ReorderSteps(LogChecklistSteps step) { //_ctx.LogChecklistSteps.Update(step); _ctx.Attach(step); _ctx.Entry(step).Property("Step").IsModified = true; }
public void EditStep(LogChecklistSteps step) { _ctx.Entry(step).State = EntityState.Modified; }
public int GetStepCount(LogChecklistSteps step) { return(_ctx.LogChecklistSteps.Where(x => x.Idchecklist == step.Idchecklist && x.Version == step.Version).Count() + 1); }