Пример #1
0
        public ActionResult ActualizarPerfil(Pacientes paciente, string telMovil, string telCasa,
                                             string estadoCivil, string sexo, HttpPostedFileBase file,
                                             string email, string passwordN)
        {
            var actualizado = "si";

            try
            {
                int       pacienteID = PacienteConsulta.FindPacienteEmail(User.Identity.Name, context).ID;
                Pacientes pacienteDB = context.Pacientes.Where(x => x.ID == pacienteID).FirstOrDefault();

                /*--------------------------------Paciente---*/
                if (file != null)
                {
                    pacienteDB.Foto = new byte[file.ContentLength];
                    file.InputStream.Read(pacienteDB.Foto, 0, file.ContentLength);
                }

                pacienteDB.Nombre          = paciente.Nombre;
                pacienteDB.Apellido        = paciente.Apellido;
                pacienteDB.Direccion       = paciente.Direccion;
                pacienteDB.FechaNacimiento = paciente.FechaNacimiento;
                pacienteDB.Cedula          = StringExtenssion.SinGuion(paciente.Cedula);
                pacienteDB.EstadoCivil     = estadoCivil;
                pacienteDB.Sexo            = sexo;
                context.SaveChanges();


                /*--------------------------------Telefono Paciente---*/
                TelefonoPaciente telPaciente = context.TelefonoPaciente.Where(x => x.PacienteID == pacienteDB.ID).FirstOrDefault();

                if (telMovil == "" || telMovil == null)
                {
                    telPaciente.TelefonoMovil = null;
                }
                else
                {
                    telPaciente.TelefonoMovil = StringExtenssion.SinGuion(telMovil);
                }

                if (telCasa == "" || telCasa == null)
                {
                    telPaciente.TelefonoCasa = null;
                }
                else
                {
                    telPaciente.TelefonoCasa = StringExtenssion.SinGuion(telCasa);
                }

                context.SaveChanges();


                /*--------------------------------Usuario---*/
                Usuarios usuario = context.Usuarios.Where(x => x.PacienteID == pacienteID).FirstOrDefault();
                usuario.Email = email;

                if (passwordN != "")
                {
                    usuario.Password = passwordN;
                }
                context.SaveChanges();


                FormsAuthentication.SetAuthCookie(Convert.ToString(email), false);
            }
            catch (Exception)
            {
                actualizado = "no";
            }


            TempData["Actualizado"] = actualizado;

            return(RedirectToAction("Perfil"));
        }
Пример #2
0
        public ActionResult SignupPaciente(Pacientes paciente, string email, string codMedico,
                                           string password, string telMovil, string telCasa,
                                           string estadoCivil, string sexo, HttpPostedFileBase file)
        {
            bool validar = false;
            var  codigos = (from a in context.Empleados.ToList()
                            join b in context.Usuarios.ToList() on a.ID equals b.EmpleadoID
                            where a.Tipo == "Medico" && b.Activo == true
                            select new { cod = a.Codigo }).ToList();

            for (int i = 0; i < codigos.Count; i++)
            {
                if (codMedico == codigos[i].cod)
                {
                    validar = true;
                }
            }

            if (validar == false || codMedico == "" || codMedico == null)
            {
                return(RedirectToAction("LoginUsuario"));
            }


            if (file != null)
            {
                paciente.Foto = new byte[file.ContentLength];
                file.InputStream.Read(paciente.Foto, 0, file.ContentLength);
            }
            else
            {
                paciente.Foto = null;
            }

            paciente.Cedula      = StringExtenssion.SinGuion(paciente.Cedula);
            paciente.EstadoCivil = estadoCivil;
            paciente.Sexo        = sexo;
            context.Pacientes.Add(paciente);
            context.SaveChanges();


            Pacientes pacienteDB = context.Pacientes.ToList().Last();

            TelefonoPaciente telPaciente = new TelefonoPaciente();

            if (telMovil == "")
            {
                telPaciente.TelefonoMovil = null;
            }
            else
            {
                telPaciente.TelefonoMovil = StringExtenssion.SinGuion(telMovil);
            }

            if (telCasa == "")
            {
                telPaciente.TelefonoCasa = null;
            }
            else
            {
                telPaciente.TelefonoCasa = StringExtenssion.SinGuion(telCasa);
            }
            telPaciente.PacienteID = pacienteDB.ID;
            context.TelefonoPaciente.Add(telPaciente);
            context.SaveChanges();


            Usuarios usuario = new Usuarios();

            usuario.Email      = email;
            usuario.Password   = password;
            usuario.Activo     = true;
            usuario.PacienteID = pacienteDB.ID;
            context.Usuarios.Add(usuario);
            context.SaveChanges();


            UsuarioRol usuarioRol = new UsuarioRol();

            usuarioRol.Rol       = "Paciente";
            usuarioRol.UsuarioID = context.Usuarios.ToList().Last().ID;
            context.UsuarioRol.Add(usuarioRol);
            context.SaveChanges();


            var medicoDB = (from a in context.Empleados.ToList() join
                            b in context.Medicos.ToList() on a.ID equals b.EmpleadoID
                            where a.Codigo == codMedico select new { id = b.ID }).FirstOrDefault();

            MedicoPaciente mp = new MedicoPaciente();

            mp.MedicoID   = medicoDB.id;
            mp.PacienteID = pacienteDB.ID;
            mp.Fecha      = DateTime.Now;
            context.MedicoPaciente.Add(mp);
            context.SaveChanges();


            FormsAuthentication.SetAuthCookie(email, false);
            return(RedirectToAction("HistorialMedico", "Paciente"));
        }