public async Task <AddFamilyTaskPayload> AddFamilyTaskAsync( AddFamilyTaskInput input, [GlobalStateAttribute("currentUserId")] int?currentUserId, [ScopedService] ApplicationDbContext context, CancellationToken cancellationToken) { if (currentUserId == null) { return(new AddFamilyTaskPayload( new UserError("Please sign in and try again", "NOT_AUTHORIZED"))); } var familyTask = new FamilyTask { ShortDescription = input.ShortDescription, Payment = input.Payment, FamilyId = input.FamilyId, isCompleted = false, CreatedById = currentUserId, createdOn = DateTime.UtcNow, updatedOn = DateTime.UtcNow }; context.FamilyTasks.Add(familyTask); await context.SaveChangesAsync(cancellationToken); return(new AddFamilyTaskPayload(familyTask)); }
public async Task <ClaimTaskPayload> ClaimTask( ClaimTaskInput input, [GlobalStateAttribute("currentUserId")] int?currentUserId, [ScopedService] ApplicationDbContext context, CancellationToken cancellationToken ) { if (currentUserId == null) { return(new ClaimTaskPayload( new UserError("Please sign in and try again", "NOT_AUTHORIZED"))); } User user = await context.Users.FirstOrDefaultAsync( u => u.Id == currentUserId, cancellationToken); if (user == null) { return(new ClaimTaskPayload( new UserError("No valid user was found", "USER_NOT_VALID"))); } foreach (var taskId in input.TaskIds) { var newTask = new FamilyTask { Id = taskId, }; context.FamilyTasks.Attach(newTask); newTask.AssignedToId = user.Id; } await context.SaveChangesAsync(cancellationToken); return(new ClaimTaskPayload(user)); }
public async Task <FamilyTask> CreateTask(int accountId, int creator, string description, decimal value, DateTimeOffset whenCreated, DateTimeOffset?whenCompleted, int?completedBy) { var task = new FamilyTask { TaskId = Guid.NewGuid(), AccountId = accountId, Description = description, Value = value, CreatedBy = creator, WhenCreated = whenCreated, WhenCompleted = whenCompleted, WhenApproved = whenCompleted, CompletedBy = completedBy, ApprovedBy = whenCompleted.HasValue ? (int?)creator : null }; var result = await _db.CreateDocumentAsync( UriFactory.CreateDocumentCollectionUri("FamilyCents", "FamilyTasks"), task); return(task); }
protected FamilyTaskPayloadBase(FamilyTask familyTask) { FamilyTask = familyTask; }
public FamilyTaskWrapper(FamilyItem element, FamilyTask task) { Element = element; Task = task; }
public AddFamilyTaskPayload(FamilyTask familyTask) : base(familyTask) { }