Пример #1
0
        public IActionResult RegisterGuest(PatientRegistrationDTO dto)
        {
            if (_registrationService.PatientExists(dto.Id, dto.Username))
            {
                return(BadRequest("Patient already exists"));
            }

            Patient patient = PatientRegistrationMapper.PatientRegistrationDTOtoPatient(dto);

            patient.IsGuestAccount = true;
            patient.Token          = RegistrationTokenService.GenerateGuidToken();
            Patient registeredPatient = _registrationService.Register(patient);

            if (registeredPatient == null)
            {
                return(BadRequest("Patient already exists"));
            }
            return(Ok());
        }
Пример #2
0
        public IActionResult Register(PatientRegistrationDTO dto)
        {
            try
            {
                ValidateRegistrationInput.Validate(dto);
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }

            if (_registrationService.PatientExists(dto.Id, dto.Username))
            {
                return(BadRequest("Patient already exists"));
            }


            Patient patient = PatientRegistrationMapper.PatientRegistrationDTOtoPatient(dto);

            patient.Token = RegistrationTokenService.GenerateGuidToken();

            Patient registeredPatient = _registrationService.Register(patient);

            if (registeredPatient == null)
            {
                return(BadRequest("Patient already exists"));
            }


            _patientDocumentsGateway.SaveMedicalRecord(new MedicalRecord
            {
                PatientId = dto.Id,
                BloodType = PatientEnumMapper.StringToBloodType(dto.BloodType)
            });

            GenerateEmailInfo(patient);

            return(Ok("Please check your mail to confirm registration"));
        }