示例#1
0
        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);
        }
示例#2
0
        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");
                }
            }
        }