Ejemplo n.º 1
0
        public async Task <ActionResult> CreateNurseAsync([FromBody] NurseCreateModel nurseCM)
        {
            MyUser user = null;

            try
            {
                //asp.net user_ create account
                user             = nurseCM.Adapt <MyUser>();
                user.IsActive    = false;
                user.DateCreated = DateTime.Now;
                user.UserName    = nurseCM.HisCode;
                var currentUser = await _userManager.CreateAsync(user, DefaultPassword.PasswordNurse);

                if (currentUser.Succeeded)
                {
                    if (!(await _userManager.AddToRoleAsync(user, nameof(UserRoles.Nurse))).Succeeded)
                    {
                        _userManager.DeleteAsync(user);
                        return(BadRequest(user + "\n Add role fail!"));
                    }

                    //create nurse basic
                    Nurse nurse = nurseCM.Adapt <Nurse>();
                    nurse.Id = user.Id;

                    _nurseService.CreateNurse(nurse, (await _userManager.GetUserAsync(User)).UserName);
                }
                else
                {
                    if (user != null)
                    {
                        _userManager.DeleteAsync(user);
                    }
                    return(BadRequest(currentUser.Errors));
                }
                _nurseService.Save();
                return(StatusCode(201));
            }
            catch (Exception e)
            {
                if (user != null)
                {
                    _userManager.DeleteAsync(user);
                }
                return(BadRequest(e.Message));
            }
        }
Ejemplo n.º 2
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            String type = txtType.SelectedItem.ToString();

            if (isANewPerson)
            {
                objPerson             = new person();
                objPerson.name        = txtName.Text.ToString();
                objPerson.lastName    = txtLastName.Text.ToString();
                objPerson.age         = Decimal.ToInt32(numericAge.Value);
                objPerson.email       = txtEmail.Text.ToString();
                objPerson.address     = txtAddress.Text.ToString();
                objPerson.phone       = Decimal.ToInt32(numericPhoneNumber.Value);
                objPerson.nationality = txtNationality.Text.ToString();
                objPerson.DNI         = Decimal.Parse(txtDNI2.Text.ToString());
                objPerson.gender      = cmbGender.SelectedItem.ToString();
                objPerson.dateOfBith  = dateOfBirth.Value.Date;
                personServ.CreatePerson(objPerson);
            }
            String name        = objPerson.name;
            char   firstletter = name[0];
            int    dniValue    = Decimal.ToInt32(objPerson.DNI);

            username = firstletter + dniValue.ToString();
            //Verifico si tiene usuario y si no es estoy creando paciente
            if (userService.GetUserByUsername(username) == null && type != "Patient")
            {
                objUser          = new user();
                objUser.username = username;
                objUser.email    = txtEmail.Text.ToString();
                objUser.password = "******";
                userService.CreateUser(objUser);
            }
            //VERIFICAR TIPO DE USUARIO
            if (type.Equals("Admin"))
            {
                admin objAdmin = new admin();
                //Buscamos el usuario
                objUser = userService.GetUserByUsername(username);
                //Buscamos la persona
                objPerson = personServ.GetPersonByDni(dniValue);
                //Lo asignamos al admin
                objAdmin          = new admin();
                objAdmin.userId   = objUser.id;
                objAdmin.personId = objPerson.ID;
                //lo creamos
                if (adminService.GetAdminByUserId(objAdmin.userId) != null)
                {
                    MessageBox.Show("This user is already an Admin");
                }
                else
                {
                    adminService.CreateAdmin(objAdmin);
                    MessageBox.Show("New Admin Saved");
                    enableTextbox(false);
                    initialize();
                }
            }

            else if (type.Equals("Doctor"))
            {
                doctor objDoctor = new doctor();
                //Buscamos el usuario
                objUser = userService.GetUserByUsername(username);
                //Buscamos la persona
                objPerson = personServ.GetPersonByDni(dniValue);
                //Lo asignamos al admin
                objDoctor                  = new doctor();
                objDoctor.userId           = objUser.id;
                objDoctor.personId         = objPerson.ID;
                objDoctor.dateOfEnrollment = DateTime.Today;
                objDoctor.status           = true;
                //lo creamos
                if (docService.GetDoctorByUserId(objDoctor.userId) != null)
                {
                    MessageBox.Show("This user is already a Doctor");
                }
                else
                {
                    docService.CreateDoctor(objDoctor);
                    MessageBox.Show("New Doctor Saved");
                    enableTextbox(false);
                    initialize();
                }
            }

            else if (type.Equals("Nurse"))
            {
                nurse objNurse = new nurse();
                //Buscamos el usuario
                objUser = userService.GetUserByUsername(username);
                //Buscamos la persona
                objPerson = personServ.GetPersonByDni(dniValue);
                //Lo asignamos al admin
                objNurse          = new nurse();
                objNurse.userid   = objUser.id;
                objNurse.personId = objPerson.ID;
                //lo creamos
                if (nurService.GetNurseByUserId(objNurse.userid) != null)
                {
                    MessageBox.Show("This user is already a Nurse");
                }
                else
                {
                    nurService.CreateNurse(objNurse);
                    MessageBox.Show("New Nurse Saved");
                    enableTextbox(false);
                    initialize();
                }
            }
            else if (type.Equals("Patient"))
            {
                patient objPatient = new patient();
                //Buscamos el usuario
                objUser = userService.GetUserByUsername(username);
                //Buscamos la persona
                objPerson = personServ.GetPersonByDni(dniValue);
                //Lo asignamos al admin
                objPatient          = new patient();
                objPatient.personId = objPerson.ID;
                //lo creamos
                if (patientServ.GetPatientByPersonId(objPatient.personId) != null)
                {
                    MessageBox.Show("This user is already a Patient");
                }
                else
                {
                    patientServ.CreatePatient(objPatient);
                    MessageBox.Show("New Patient Saved");
                    enableTextbox(false);
                    initialize();
                }
            }
        }