Ejemplo n.º 1
0
        public async Task CreateTask(TaskContract contract, string ownerId)
        {
            var group = await _repository.GetGroup(contract.GroupId);

            if (group.OwnerId != ownerId && group.CoOwnerId != ownerId)
            {
                throw new UserNotOwnerException();
            }
            if (group.Tasks.Any(t => t.Name == contract.Name))
            {
                throw new NameAlreadyUsedException(contract.Name);
            }
            var task = _taskModelMapper.Map(contract);
            await _repository.AddTask(task);
        }