예제 #1
0
        public async Task UpdateClassAsync(Guid classId, UpsertClassDto classDto)
        {
            var result = await _executor.ExecuteAsync(new UpdateClassCommand(classId, classDto));

            if (!await _context.CommitAsync())
            {
                throw new Exception("Updating an class failed on save.");
            }
            if (result.Success)
            {
                await _hubContext.Clients.All.InvokeAsync("refresh");
            }
        }
예제 #2
0
        public async Task <Guid> AddClassAsync(UpsertClassDto classDto)
        {
            var @class = await _executor.ExecuteAsync(new AddClassCommand(classDto));

            if (!await _context.CommitAsync())
            {
                throw new Exception("Creating an class failed on save.");
            }
            if (@class.ClassId != null)
            {
                await _hubContext.Clients.All.InvokeAsync("refresh");
            }
            return(@class.ClassId);
        }
예제 #3
0
        public async Task <IActionResult> UpdateBookForAuthor(Guid classId, [FromBody] UpsertClassDto classDto)
        {
            if (classDto == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(StatusCode(StatusCodes.Status422UnprocessableEntity));
            }

            await _classesService.UpdateClassAsync(classId, classDto);

            return(NoContent());
        }
예제 #4
0
        public async Task <IActionResult> CreateClass([FromBody] UpsertClassDto classDto)
        {
            if (classDto == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(StatusCode(StatusCodes.Status422UnprocessableEntity));
            }

            var id = await _classesService.AddClassAsync(classDto);

            return(Ok(id));
        }
예제 #5
0
        public async Task CreateStudent_ShouldSucceded()
        {
            // Arrange
            var responseResult = Guid.NewGuid();
            var upsertDto      = new UpsertClassDto()
            {
                Location = "test",
                Name     = "test",
                Teacher  = "Mr Jones"
            };

            _classesService.Setup(x => x.AddClassAsync(It.IsAny <UpsertClassDto>())).ReturnsAsync(responseResult);

            // Act
            var result = await _controller.CreateClass(upsertDto);

            // Assert
            var okResult = result.Should().BeOfType <OkObjectResult>().Subject;
            var guid     = okResult.Value.Should().BeAssignableTo <Guid>().Subject;

            NUnit.Framework.Assert.AreEqual(responseResult, guid);
        }
예제 #6
0
 public AddClassCommand(UpsertClassDto dto)
 {
     _dto = dto;
 }
예제 #7
0
 public UpdateClassCommand(Guid classId, UpsertClassDto dto)
 {
     _classId = classId;
     _dto     = dto;
 }