public async Task <IActionResult> UpdateAsync(int yearCourseId, UpdateSubjectRequest request)
        {
            var apiKey = Request.Headers.FirstOrDefault(h => string.Equals(h.Key, _options.ApiKeyHeaderName, StringComparison.CurrentCultureIgnoreCase))
                         .Value;

            if (yearCourseId != request.YearCourseId)
            {
                return(BadRequest(new ApiResponse
                {
                    Messages = new List <string>
                    {
                        "Year course ID doesn't match!"
                    }
                }));
            }

            var result = await _mediator.Send(new UpdateYearCourseSubjectCommand
            {
                YearCourseId = yearCourseId,
                Password     = apiKey,
                SubjectId    = request.SubjectId,
                Name         = request.Name,
                ShortName    = request.ShortName
            });

            if (!result.Succeeded)
            {
                return(StatusCode((int?)result.ErrorType ?? 400, new ApiResponse <int>
                {
                    Messages = result.ErrorMessages
                }));
            }

            return(Ok(new ApiResponse()));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Update(UpdateSubjectRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var result = await _subjectService.UpdateSubject(request);

            if (result.IsSuccessed == false)
            {
                return(BadRequest(result));
            }
            return(Ok(result));
        }
Ejemplo n.º 3
0
        public async Task <ApiResult <bool> > UpdateSubject(UpdateSubjectRequest request)
        {
            var subject = await _context.Subjects.FindAsync(request.Id_Subject);

            if (subject == null)
            {
                return(new ApiErrorResult <bool>("Không tìm thấy "));
            }
            subject.Name            = request.Name;
            subject.Description     = request.Description;
            subject.NumberOfCredits = request.NumberOfCredits;
            subject.Lesson          = request.Lesson;
            subject.DateUpdate      = DateTime.UtcNow.AddHours(7);
            await _context.SaveChangesAsync();

            return(new ApiSuccessResult <bool>("Cập nhật thành công"));
        }
        public async Task Update_Should_Return_Updated_Value(string name, string surname, string email, int id)
        {
            //Assert
            var entity = new UpdateSubjectRequest {
                Name = name, Surname = surname, Email = email
            };
            //Act
            var result = await _sut.Update(id, entity) as OkObjectResult;

            // Assert
            SubjectRepository.Verify(x => x.Update(It.IsAny <int>(), It.IsAny <Subject>()), Times.Once);

            var model = (SubjectResponseModel)result.Value;

            Assert.Equal(model.Name, entity.Name);
            Assert.Equal(model.Surname, entity.Surname);
            Assert.Equal(model.Email, entity.Email);
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> Update([Required] int id, [FromBody] UpdateSubjectRequest request)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    _logger.LogWarning(LoggingEvents.UPDATE_ITEM, ModelState.ToString());
                    return(BadRequest(ModelState));
                }

                var model  = _mapper.Map <UpdateSubjectRequest, Subject>(request);
                var result = await _service.Update(id, model);

                return(Ok(_mapper.Map <Subject, SubjectResponseModel>(result)));
            }
            catch (Exception e)
            {
                _logger.LogError(LoggingEvents.UPDATE_ITEM, e.ToString());
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }
        public async Task <ActionResult> ChangeSubject(string id, [FromBody] UpdateSubjectRequest request)
        {
            await this.mediator.Send(new UpdateEmailMessageSubject(new EmailMessageId(id), request.Subject));

            return(this.Ok());
        }