Exemple #1
0
        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);
 }
Exemple #4
0
        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);
        }
Exemple #5
0
 public async Task <Response <RemarkDto> > CreateRemarkAsync(CreateRemark command)
 => await PostAsync <RemarkDto>("api/remarks", command);