public async Task <AssignAlertResponse> Handle(AssignAlertCommand request, CancellationToken cancellationToken) { var alerts = await _repo.FindAsync((a => a.AnalystId == request.OldAnalystId && a.AlertId == request.AlertId), request.OldAnalystId.ToString()); var alert = alerts.FirstOrDefault(); if (alert != null) { var oldAnalystId = alert.AnalystId.ToString(); var oldId = alert.Id.ToString(); alert.AnalystId = request.NewAnalystId; alert.UpdateDateUtc = DateTime.UtcNow; alert.Id = Guid.NewGuid(); await _repo.SaveAsync(alert, alert.AnalystId.ToString()); await _repo.DeleteAsync(oldId, oldAnalystId); //(alert.Id.ToString()); //request.OldAnalystId.ToString()); return(new AssignAlertResponse { AlertId = alert.AlertId, AnalystId = alert.AnalystId, UpdateDate = alert.UpdateDateUtc }); } else { throw new Exception("Alert not found"); } }
public async Task <IActionResult> Delete([FromRoute] int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var Alert = await _alertRepository.DeleteAsync(id); return(Ok(Alert)); }