public IActionResult Delete(Guid id, [FromBody] Deletion deletion) { logger.LogInformation($"Looking for timesheet {id}"); Timecard timecard = repository.Find(id); if (timecard == null) { return(NotFound()); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } var transition = new Transition(deletion, TimecardStatus.Deleted); logger.LogInformation($"Deleting timesheet {transition}"); timecard.Transitions.Add(transition); repository.Delete(id); return(Ok(transition)); }
public IActionResult DeleteTimecard(string id, Deletion deletion) { Timecard timecard = Database.Find(id); if (timecard == null) { return(NotFound()); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } // This verifies that timecard deleter is timecard resource if (deletion.Resource != timecard.Resource) { return(StatusCode(409, new ResourceDoesNotManageError())); } Database.Delete(timecard); return(Ok()); }
public IActionResult Delete(Guid id) { logger.LogInformation($"Looking for timesheet {id}"); Timecard timecard = repository.Find(id); if (timecard == null) { return(NotFound()); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } /************************************/ var deletePerson = new DocumentPerson(); if (timecard.Employee == deletePerson.Id) { repository.Delete(id); return(Ok()); } return(StatusCode(403, new InvalidAccessError())); }
public IActionResult Delete(Guid id, [FromQuery] int reqid) { logger.LogInformation($"Looking for timesheet {id}"); Timecard timecard = repository.Find(id); if (timecard == null) { return(NotFound()); } if (reqid != timecard.Employee) { return(StatusCode(403, new TimecardPersonError() { })); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } repository.Delete(id); return(Ok()); }
public IActionResult DeleteLine(string id) { Timecard timecard = Database.Find(id); if (timecard == null) { return(NotFound()); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } Database.Delete(id); return(Ok()); }
public IActionResult Delete(Guid id, [FromBody] Delection delection) { logger.LogInformation($"Looking for timesheet {id}"); Timecard timecard = repository.Find(id); if (timecard == null) { return(NotFound()); } if (timecard.Status != TimecardStatus.Draft || timecard.Status != TimecardStatus.Cancelled) { return(StatusCode(409, new InvalidStateError() { })); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } //check if it's the same person to delete the card if (delection.Deleter != timecard.Employee) { return(StatusCode(409, new NoPermissionError() { })); } var transition = new Transition(delection, TimecardStatus.Deleted); logger.LogInformation($"Adding delection {transition}"); timecard.Transitions.Add(transition); repository.Delete(id); return(Ok(transition)); }
public IActionResult Delete(Guid id) { logger.LogInformation($"Looking for timesheet {id}"); Timecard timecard = repository.Find(id); if (timecard == null) { return(NotFound(new NotFoundError())); } if (timecard.CanBeDeleted() == false) { return(StatusCode(409, new InvalidStateError() { })); } repository.Delete(id); return(Ok()); }