public RemarkCommentModule(ICommandDispatcher commandDispatcher, IRemarkStorage remarkStorage, IValidatorResolver validatorResolver) : base(commandDispatcher, validatorResolver, modulePath: "remarks/{remarkId}/comments") { Post("", async args => await For <AddCommentToRemark>() .SetResourceId(x => x.CommentId) .OnSuccessAccepted(x => $"remarks/{x.RemarkId}/comments/" + "{0}") .DispatchAsync()); Put("{commentId}", async args => await For <EditRemarkComment>() .OnSuccessAccepted() .DispatchAsync()); Delete("{commentId}", async args => await For <DeleteRemarkComment>() .OnSuccessAccepted() .DispatchAsync()); Put("{commentId}/votes", async args => await For <SubmitRemarkCommentVote>() .Set(x => x.CreatedAt = DateTime.UtcNow) .OnSuccessAccepted() .DispatchAsync()); Delete("{commentId}/votes", async args => await For <DeleteRemarkCommentVote>() .OnSuccessAccepted() .DispatchAsync()); }
public RemarkActionModule(ICommandDispatcher commandDispatcher, IRemarkStorage remarkStorage, IValidatorResolver validatorResolver) : base(commandDispatcher, validatorResolver, modulePath: "remarks/{remarkId}/actions") { Post("", async args => await For <TakeRemarkAction>() .OnSuccessAccepted() .DispatchAsync()); Delete("", async args => await For <CancelRemarkAction>() .OnSuccessAccepted() .DispatchAsync()); }
public EmployeeManager(IEmployeeStorage storage, IRemarkStorage remarkStorage) { _storage = storage; _remarkStorage = remarkStorage; }
public RemarkModule(ICommandDispatcher commandDispatcher, IRemarkStorage remarkStorage, IValidatorResolver validatorResolver) : base(commandDispatcher, validatorResolver, modulePath: "remarks") { Get("", async args => await FetchCollection <BrowseRemarks, Remark> (async x => await remarkStorage.BrowseAsync(x)) .MapTo(MapToBasicRemark) .HandleAsync()); Get("similar", async args => await FetchCollection <BrowseSimilarRemarks, Remark> (async x => await remarkStorage.BrowseSimilarAsync(x)) .MapTo(MapToBasicRemark) .HandleAsync()); Get("categories", async args => await FetchCollection <BrowseRemarkCategories, RemarkCategory> (async x => await remarkStorage.BrowseCategoriesAsync(x)).HandleAsync()); Get("tags", async args => await FetchCollection <BrowseRemarkTags, Tag> (async x => await remarkStorage.BrowseTagsAsync(x)).HandleAsync()); Get("{id}", async args => await Fetch <GetRemark, Remark> (async x => await remarkStorage.GetAsync(x.Id, CurrentUserId)).HandleAsync()); Post("", async args => await For <CreateRemark>() .SetResourceId(x => x.RemarkId) .OnSuccessAccepted("remarks/{0}") .DispatchAsync()); Put("{remarkId}/photo", async args => await For <AddPhotosToRemark>() .Set(x => { var photo = ToFile(); x.Photos = new List <Collectively.Messages.Commands.Models.File> { photo }; }) .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Put("{remarkId}/photos", async args => await For <AddPhotosToRemark>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Patch("{remarkId}", async args => await For <EditRemark>( new EditRemark { RemarkId = args.remarkId }) .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Delete("{remarkId}/photos/{groupId}", async args => await For <RemovePhotosFromRemark>() .Set(x => x.Photos = new List <GroupedFile> { new GroupedFile { GroupId = args.groupId } }) .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Put("{remarkId}/resolve", async args => await For <ResolveRemark>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Put("{remarkId}/process", async args => await For <ProcessRemark>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Put("{remarkId}/renew", async args => await For <RenewRemark>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Put("{remarkId}/cancel", async args => await For <CancelRemark>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Delete("{remarkId}", async args => await For <DeleteRemark>() .OnSuccessAccepted() .DispatchAsync()); Put("{remarkId}/votes", async args => await For <SubmitRemarkVote>() .Set(x => x.CreatedAt = DateTime.UtcNow) .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Delete("{remarkId}/votes", async args => await For <DeleteRemarkVote>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); Delete("{remarkId}/states/{stateId}", async args => await For <DeleteRemarkState>() .OnSuccessAccepted($"remarks/{args.remarkId}") .DispatchAsync()); }
public EmployeeManager(IEmployeeStorage storage, IRemarkStorage remarkStorage, ICacheManager cManager) { _storage = storage; _remarkStorage = remarkStorage; _cManager = cManager; }