예제 #1
0
        public void InserirComBusca()
        {
            especialidade = new Especialidade();
            especialidade.NomeDaEspecialidade = "Psicologia";

            paciente = new Paciente();
            paciente.Nome = "Marianne";
            paciente.CartaoSus = 345;

            medico = new Medico();
            medico.Nome = "Jonas";
            medico.Crm = 321;
            medico.especialidade = especialidade;

            consulta = new Consulta();
            consulta.Descricao = "Paciente com queixa de dor na coluna";
            consulta.Data = new DateTime(2015, 11, 04);
            consulta.Hora = DateTime.Now.Add(new TimeSpan(14, 20, 20));
            consulta.Paciente = paciente;
            consulta.Medico = medico;

            using (var contexto = new ConsultorioDbContext())
            {
                contexto.Especialidades.Add(especialidade);
                contexto.Medicos.Add(medico);
                contexto.Pacientes.Add(paciente);
                contexto.Consultas.Add(consulta);
                contexto.SaveChanges();
            }

            using (var contexto = new ConsultorioDbContext())
            {
                Assert.AreEqual("Marianne", contexto.Pacientes.Find(1).Nome);
                Assert.AreEqual("Jonas", contexto.Medicos.Find(1).Nome);
                Assert.AreEqual("Psicologia", contexto.Especialidades.Find(1).NomeDaEspecialidade);
                Assert.AreEqual("Paciente com queixa de dor na coluna", contexto.Consultas.Find(1).Descricao);
            }
        }
예제 #2
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            errorProvider.Clear();

            if (!ValidarCamposObligatoriosPaciente())
            {
                return;
            }

            var nuevoPaciente = new Paciente
            {
                Nombres         = txtBoxNombre.Text.ToUpper(),
                Apellidos       = txtBoxApellido.Text.ToUpper(),
                Email           = txtBoxEmail.Text,
                NumeroDocumento = Int64.Parse(txtBoxDocumento.Text),
                FechaNacimiento = dateTimePickerNacimiento.Value,
                Edad            = CalculateAge(dateTimePickerNacimiento.Value),
                Sexo            = radioBtnMasculino.IsChecked ? "Masculino" : "Femenino",
                PrimeraAtencion = true,
                TelCelular      = txtBoxTelefono.Text.Trim(),
                Direccion       = txtBoxDireccion.Text,
                CodigoPostal    = txtBoxCodigoPostal.Text,
                IdCiudad        = (int)dropDownCiudad.SelectedValue,
                IdProvincia     = (int)dropDownProvincia.SelectedValue,
                IdPais          = (int)dropDownPais.SelectedValue,
                GrupoSanguineo  = dropDownGrupoSanguineo.Text.Trim(),
                Donante         = checkBoxDonante.Checked,
                Transplantado   = checkBoxTrasplantado.Checked
            };

            if (!ValidarCamposObligatoriosHistoriaClinica())
            {
                return;
            }

            nuevoPaciente.HistoriaClinica.Add(new HistoriaClinica
            {
                FechaAtencion = DateTime.Now,
                Descripcion   = txtBoxAntecedentesMedicos.Text.Trim()
            });

            try
            {
                using (var entidades = new ClinicaEntities())
                {
                    // Insertar un nuevo Usuario en la tabla AspNetUsers
                    var userStore = new UserStore <IdentityUser>(new IdentityDbContext("IdentityDBConnection"));
                    var manager   = new UserManager <IdentityUser>(userStore);
                    var user      = new IdentityUser()
                    {
                        UserName = nuevoPaciente.Email, Email = nuevoPaciente.Email, EmailConfirmed = true
                    };
                    IdentityResult result = manager.Create(user, txtBoxDocumento.Text);
                    if (result.Succeeded)
                    {
                        // Asignar el usuario al Rol Paciente
                        var currentUser = manager.FindByName(user.UserName);
                        manager.AddToRole(currentUser.Id, "Paciente");

                        entidades.Paciente.Add(nuevoPaciente);
                        entidades.SaveChanges();

                        MessageBox.Show("Paciente Agregado con Éxito", "TurnARG", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("Hubo un error Agregando el Paciente: " + Environment.NewLine + string.Join(Environment.NewLine, result.Errors.ToArray()), "TurnARG", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }