public async Task <ActionResult <PatientViewModel> > Put(Guid id, [FromBody] PatientRequestViewModel patientRequestViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Invalid JSON"));
            }

            try
            {
                _logger.LogInformation($"Update patient FirstName :{patientRequestViewModel.FirstName} ");
                var model = _mapper.Map <PatientModel>(patientRequestViewModel);
                model.Id = id;
                model    = await _patientManager.UpdatePatientAsync(model);

                if (model == null)
                {
                    return(NotFound("No such patient exists"));
                }

                var result = _mapper.Map <PatientViewModel>(model);
                return(Ok(result));
            }
            catch (Exception e)
            {
                throw new HttpStatusCodeException(500,
                                                  "Error happend when update a patient." + e.Message);
            }
        }
Exemple #2
0
        public async Task <IActionResult> Create(PatientRequestViewModel patientRequestView)
        {
            if (ModelState.IsValid)
            {
                var newPatient = _map.Map <Patient>(patientRequestView);
                newPatient.History = _map.Map <VisitHistory>(patientRequestView);
                var createdPatient = await _uow.Patients.CreateAsync(newPatient);

                await _uow.Save();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(patientRequestView));
        }
Exemple #3
0
        public async Task PatientControllerPostSuccessTest()
        {
            var testRequestModel = new PatientRequestViewModel()
            {
                FirstName   = "test",
                LastNanme   = "test",
                Gender      = Gender.male,
                DateOfBirth = new DateTime(2019, 1, 1),
                Email       = "*****@*****.**",
                Phone       = "04240521321",
                IsActive    = false
            };
            var model = _mapper.Map <PatientModel>(testRequestModel);

            _mockPatientManager.Setup(r => r.AddNewPatientAsync(model)).ReturnsAsync(model);

            var     patientController = new PatientsController(_mockLogger.Object, _mockPatientManager.Object, _mapper);
            dynamic result            = await patientController.Post(testRequestModel);

            Assert.AreEqual(201, result.Result.StatusCode);
        }
        public async Task <ActionResult <PatientViewModel> > Post([FromBody] PatientRequestViewModel patientRequestViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Invalid JSON"));
            }

            try
            {
                _logger.LogInformation($"Add new patient FirstName :{patientRequestViewModel.FirstName} ");
                var model = _mapper.Map <PatientModel>(patientRequestViewModel);
                model = await _patientManager.AddNewPatientAsync(model);

                var result = _mapper.Map <PatientViewModel>(model);
                return(StatusCode(201, result));
            }
            catch (Exception e)
            {
                throw new HttpStatusCodeException(500,
                                                  "Error happend when create new patient." + e.Message);
            }
        }