public async Task <IActionResult> Create([FromBody] CreateRemarkRequest request) { var userId = HttpContext.GetUserId(); if (ModelState.IsValid == false) { return(BadRequest(ModelState)); } var command = new CreateRemark { Name = request.Name, CategoryId = request.CategoryId, Latitude = request.Latitude, Longitude = request.Longitude, Description = request.Description, UserId = userId }; var result = await _remarkService .CreateRemarkAsync(command) .OrFailAsync(); return(Ok(result)); }
public async Task <IActionResult> Post([FromBody] CreateRemark command) { var remark = await _remarkService.CreateAsync(command); var dto = new RemarkDto { Id = remark.Id }; return(Ok(dto)); }
protected static void Initialize() { InitializeBus(); ExceptionHandlerMock = new Mock <IExceptionHandler>(); Handler = new Handler(ExceptionHandlerMock.Object); FileResolverMock = new Mock <IFileResolver>(); FileValidatorMock = new Mock <IFileValidator>(); RemarkServiceMock = new Mock <IRemarkService>(); GroupServiceMock = new Mock <IGroupService>(); SocialMediaServiceMock = new Mock <ISocialMediaService>(); LocationServiceMock = new Mock <ILocationService>(); ResourceFactoryMock = new Mock <IResourceFactory>(); CreateRemarkPolicyMock = new Mock <ICreateRemarkPolicy>(); Command = new CreateRemark { RemarkId = Guid.NewGuid(), Request = new Request { Name = "create_remark", Id = Guid.NewGuid(), CreatedAt = DateTime.Now, Origin = "test", Resource = "" }, UserId = "userId", Category = "litter", Longitude = 1, Latitude = 1, Description = "test", Address = "address", Photo = new Collectively.Messages.Commands.Models.File { Base64 = "base64", Name = "file.png", ContentType = "image/png" } }; LocationServiceMock.Setup(x => x.GetAsync(Moq.It.IsAny <double>(), Moq.It.IsAny <double>())) .ReturnsAsync(new LocationResponse { Results = new List <LocationResult> { new LocationResult { FormattedAddress = Command.Address } } }); CreateRemarkHandler = new CreateRemarkHandler(Handler, BusClientMock.Object, FileResolverMock.Object, FileValidatorMock.Object, RemarkServiceMock.Object, GroupServiceMock.Object, SocialMediaServiceMock.Object, LocationServiceMock.Object, ResourceFactoryMock.Object, CreateRemarkPolicyMock.Object); }
public async Task <Remark> CreateAsync(CreateRemark command) { var remark = new Remark(command.Name, command.Description, command.Latitude, command.Longitude, command.CategoryId, command.UserId); var entry = await _context.Remarks.AddAsync(remark); await _context.SaveChangesAsync(); await _bus.Publish(new RemarkCreated { RemarkId = entry.Entity.Id }); return(entry.Entity); }
public async Task <Response <RemarkDto> > CreateRemarkAsync(CreateRemark command) => await PostAsync <RemarkDto>("api/remarks", command);