private string CreateOrUpdateBatch(Batch batch) { var batchDAO = new BatchDAO(); batch.Id = batchDAO.GetExistingBatchId(batch.User, batch.Name); if (string.IsNullOrEmpty(batch.Id)) { batch.Id = Guid.NewGuid().ToString(); batch.CreationDate = DateTime.Now; batchDAO.Save(batch); } return(batch.Id); }
private async Task CheckSavePermissions(List <TReference> references, User user) { if (user.IsAdmin) { return; } var batchIds = references.Select(x => x.BatchId).Distinct().ToList(); var batchDAO = new BatchDAO(); foreach (var id in batchIds) { var batch = await batchDAO.Get(id); if (batch.User != user.Email) { throw new Exception("Unauthorized"); } } }