Ejemplo n.º 1
0
        protected void LlenarHoras(string dni, string espe, int id)
        {
            try
            {
                HorarioMedico HM = new HorarioMedico();
                HM.dni     = dni;
                HM.id_espe = int.Parse(espe);

                HorarioMedicoNegocio HMN = new HorarioMedicoNegocio();
                HM.horarios = HMN.LeerHorario(HM.dni, HM.id_espe);

                List <FechaTurno> FT = TN.ListaFechas(HM);

                FechaTurno IT = FT.ElementAt(id);

                List <HoraTurno> HT = TN.ListaHorarios(HM, IT);
                ////////////

                this.ddlHora.DataSource = HT;
                this.ddlHora.DataBind();
            }
            catch (Exception ex)
            {
            }
        }
Ejemplo n.º 2
0
        //metodos insertar, modificar, quitar de la clase horariomedico
        public void InsertarHorariosMedico(HorarioMedico objHorario)
        {
            string strQuery = "INSERT INTO horariomedico " +
                              "(id_medico, id_dia, horainicio_a, horafin_a, horainicio_b, horafin_b, " +
                              "duracion_turnos)" +
                              "VALUES(@idMedico, @idDia, @horaInicioA, @horaFinA, @horaInicioB, @horaFinB, " +
                              "@duracionTurnos);";

            CD_Conexion conexion = new CD_Conexion(); //¿este puede ir afuera del metodo como mysql.comando tambien PERO el cerrar la conexion cuando termine la funcion y no en otra funcion puede ser problema porq son parte de la misma instancia?

            MySqlCommand comando = new MySqlCommand();

            comando.Connection  = conexion.AbrirConexion();
            comando.CommandText = strQuery;

            comando.Parameters.Add("@idMedico", MySqlDbType.Int32).Value       = objHorario.IdMedico;
            comando.Parameters.Add("@idDia", MySqlDbType.Int32).Value          = Convert.ToInt32(objHorario.Dia);
            comando.Parameters.Add("@horaInicioA", MySqlDbType.VarChar).Value  = objHorario.HoraInicio_A;
            comando.Parameters.Add("@horaFinA", MySqlDbType.VarChar).Value     = objHorario.HoraFin_A;
            comando.Parameters.Add("@horaInicioB", MySqlDbType.VarChar).Value  = objHorario.HoraInicio_B;
            comando.Parameters.Add("@horaFinB", MySqlDbType.VarChar).Value     = objHorario.HoraFin_B;
            comando.Parameters.Add("@duracionTurnos", MySqlDbType.Int32).Value = objHorario.DuracionTurnos;

            comando.ExecuteNonQuery();

            conexion.CerrarConexion();
        }
        private void InsertarHM()
        {
            try
            {
                for (int i = 0; i < 5; i++)
                {
                    CheckBox oCheckbox = null;
                    oCheckbox = (CheckBox)this.FindName($"ckBoxDia{i + 1}");
                    if (oCheckbox != null && oCheckbox.IsChecked == true)
                    {
                        HorarioMedico oHm = new HorarioMedico();
                        string        dia = Enum.GetName(typeof(DayOfWeek), i + 1);
                        oHm.Dia = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), dia);

                        oHm.IdMedico       = this.idMedico; //Para el id del medico
                        oHm.HoraInicio_A   = ((ComboBox)this.FindName($"horaIni{i + 1}")).Text;
                        oHm.HoraFin_A      = ((ComboBox)this.FindName($"horaFin{i + 1}")).Text;
                        oHm.HoraInicio_B   = ((ComboBox)this.FindName($"horaIni{i + 1}b")).Text;
                        oHm.HoraFin_B      = ((ComboBox)this.FindName($"horaFin{i + 1}b")).Text;
                        oHm.DuracionTurnos = Convert.ToInt32(((ComboBox)this.FindName($"cmboxdur{i + 1}")).Text);

                        oHmCCM.Insertar(oHm);
                    }
                }

                MessageBox.Show("Informacion horaria actualizada");
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error al agregar horarios" + ex);
                throw;
            }
        }
        private void ModificarHM()
        {
            bool       updateHM;
            List <int> guiaCheckedBorrar = recdiaCheckedMod; //van a quedar los dias que seran eliminados aqui

            try
            {
                for (int i = 0; i < 5; i++)
                {
                    updateHM = false;
                    CheckBox oCheckbox = null;
                    oCheckbox = (CheckBox)this.FindName($"ckBoxDia{i + 1}");
                    if (oCheckbox != null && oCheckbox.IsChecked == true)
                    {
                        for (int j = 0; j < this.recdiaCheckedMod.Count; j++)
                        {
                            if ((i + 1) == recdiaCheckedMod[j])
                            {
                                updateHM = true;
                                guiaCheckedBorrar.RemoveAt(j);
                                break;
                            }
                        }

                        HorarioMedico oHm = new HorarioMedico();
                        string        dia = Enum.GetName(typeof(DayOfWeek), i + 1);
                        oHm.Dia = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), dia);

                        oHm.IdMedico       = this.idMedico; //Para el id del medico
                        oHm.HoraInicio_A   = ((ComboBox)this.FindName($"horaIni{i + 1}")).Text;
                        oHm.HoraFin_A      = ((ComboBox)this.FindName($"horaFin{i + 1}")).Text;
                        oHm.HoraInicio_B   = ((ComboBox)this.FindName($"horaIni{i + 1}b")).Text;
                        oHm.HoraFin_B      = ((ComboBox)this.FindName($"horaFin{i + 1}b")).Text;
                        oHm.DuracionTurnos = Convert.ToInt32(((ComboBox)this.FindName($"cmboxdur{i + 1}")).Text);

                        if (updateHM == true)
                        {
                            oHmCCM.Modificar(oHm);
                        }
                        else
                        {
                            oHmCCM.Insertar(oHm);
                        }
                    }
                }

                for (int i = 0; i < guiaCheckedBorrar.Count; i++)
                {
                    oHmCCM.Eliminar(idMedico, guiaCheckedBorrar[i]);
                }

                MessageBox.Show("Informacion horaria modificada correctamente");
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error al modificar horarios" + ex);
                throw;
            }
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> Edit(int id, [Bind("HorarioMedicoId,DataInicioTurno,Duracao,DataFimTurno,TurnoId,MedicoId")] HorarioMedico horarioMedico)
        {
            if (id != horarioMedico.HorarioMedicoId)
            {
                return(RedirectToAction(nameof(Error)));
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(horarioMedico);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!HorarioMedicoExists(horarioMedico.HorarioMedicoId))
                    {
                        return(RedirectToAction(nameof(Error)));
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["MedicoId"] = new SelectList(_context.Medicos, "MedicoId", "CC", horarioMedico.MedicoId);
            ViewData["TurnoId"]  = new SelectList(_context.Turnos, "TurnoId", "TurnoId", horarioMedico.TurnoId);
            return(View(horarioMedico));
        }
Ejemplo n.º 6
0
        public void ModificarHorariosMedico(HorarioMedico objHorario)
        {
            string strQuery = "UPDATE horariomedico " +  //fijarse bien el nombre de la tabla
                              "SET horainicio_a=@horaInicioA, horafin_a=@horaFinA, " +
                              "horainicio_b=@horaInicioB, horafin_b=@horaFinB, duracion_turnos=@duracionTurnos " +
                              "WHERE id_dia=@idDia AND id_medico=@idMedico;";


            CD_Conexion conexion = new CD_Conexion(); //¿este puede ir afuera del metodo como mysql.comando tambien PERO el cerrar la conexion cuando termine la funcion y no en otra funcion puede ser problema porq son parte de la misma instancia?

            MySqlCommand comando = new MySqlCommand();

            comando.Connection  = conexion.AbrirConexion();
            comando.CommandText = strQuery;

            //comando.Parameters.Add("@idhorariomedico", MySqlDbType.Int32).Value = objHorario.IdHorarioMedico;
            comando.Parameters.Add("@idMedico", MySqlDbType.Int32).Value       = objHorario.IdMedico;
            comando.Parameters.Add("@idDia", MySqlDbType.Int32).Value          = Convert.ToInt32(objHorario.Dia);
            comando.Parameters.Add("@horaInicioA", MySqlDbType.VarChar).Value  = objHorario.HoraInicio_A;
            comando.Parameters.Add("@horaFinA", MySqlDbType.VarChar).Value     = objHorario.HoraFin_A;
            comando.Parameters.Add("@horaInicioB", MySqlDbType.VarChar).Value  = objHorario.HoraInicio_B;
            comando.Parameters.Add("@horaFinB", MySqlDbType.VarChar).Value     = objHorario.HoraFin_B;
            comando.Parameters.Add("@duracionTurnos", MySqlDbType.Int32).Value = objHorario.DuracionTurnos;

            comando.ExecuteNonQuery();

            conexion.CerrarConexion();
        }
Ejemplo n.º 7
0
        public IActionResult SolicitarPedidoTrocaTurnoMedicoConfirmed(int idHor1, int idHor2)
        {
            DateTime dataPedido = DateTime.Now;

            // Verifica se já existe um pedido feito com os id's dos horários
            if (PedidoTrocaTurnoJaFoiEfetudado(idHor1, idHor2) == true)
            {
                TempData["PedidoAlreadyDone"] = "Já existe um pedido feito para a troca destes horários";
                return(RedirectToAction(nameof(Index)));
            }

            //Select MedicoID Where HorarioMedicoId = idHorario1
            var idMedRequerente = from h in _context.HorariosMedicos
                                  where h.HorarioMedicoId == idHor1
                                  select h.MedicoId;

            HorarioMedico horarioATrocar   = _context.HorariosMedicos.SingleOrDefault(h => h.HorarioMedicoId == idHor1);
            HorarioMedico horarioParaTroca = _context.HorariosMedicos.SingleOrDefault(h => h.HorarioMedicoId == idHor2);

            try
            {
                //Insert into HorarioATrocarMedico
                InsertDataIntoHorarioATrocarMedico(_context, horarioATrocar);

                //Insert into HorarioParaTrocaMedico
                InsertDataIntoHorarioParaTrocaMedico(_context, horarioParaTroca);
            }
            catch (DbUpdateConcurrencyException)
            {
                TempData["ErrorRequired"] = "Erro ao inserir pedido!";
                return(RedirectToAction(nameof(Index)));
            }

            HorarioATrocarMedico   horarioATrocarId   = _context.HorarioATrocarMedico.LastOrDefault(h => h.HorarioMedicoId == idHor1);
            HorarioParaTrocaMedico horarioParaTrocaId = _context.HorarioParaTrocaMedico.LastOrDefault(h => h.HorarioMedicoId == idHor2);

            Medico medicoRequerenteId = _context.Medicos.SingleOrDefault(e => e.MedicoId == idMedRequerente.Single());

            EstadoPedidoTroca estadoPedidoTrocaId = _context.EstadoPedidoTrocas.SingleOrDefault(e => e.Nome == "Pendente");

            //Insert into PedidoTrocaTurnos Table
            try
            {
                if (!PedidoTrocaTurnoJaFoiEfetudado(idHor1, idHor2))
                {
                    InsertDataIntoPedidoTrocaTurnoMedico(_context, dataPedido, medicoRequerenteId, horarioATrocarId, horarioParaTrocaId, estadoPedidoTrocaId);
                    TempData["SuccessRequired"] = "Pedido realizado com sucesso!";
                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateConcurrencyException)
            {
                TempData["ErrorRequired"] = "Erro ao inserir pedido!";
                return(RedirectToAction(nameof(Index)));
            }

            return(RedirectToAction(nameof(Index)));
        }
Ejemplo n.º 8
0
        /**
         * @param db
         * @param horarioParaTroca
         * @insert in the HorarioParaTrocaMedico table a record with the above parameters
         */
        private void InsertDataIntoHorarioParaTrocaMedico(HospitalDbContext db, HorarioMedico horarioParaTroca)
        {
            db.HorarioParaTrocaMedico.Add(

                new HorarioParaTrocaMedico {
                HorarioMedicoId = horarioParaTroca.HorarioMedicoId
            }

                );

            db.SaveChanges();
        }
Ejemplo n.º 9
0
 public void Actualizar(HorarioMedico HorarioMedico)
 {
     try
     {
         _HorarioMedicoRepository.Update(HorarioMedico);
         _HorarioMedicoRepository.Save();
     }
     catch (Exception ex)
     {
         Log.Error(ex.ToString());
     }
 }
Ejemplo n.º 10
0
 public void Alta(HorarioMedico HorarioMedico)
 {
     try
     {
         _HorarioMedicoRepository.Add(HorarioMedico);
         _HorarioMedicoRepository.Save();
     }
     catch (Exception ex)
     {
         Log.Error(ex.ToString());
     }
 }
Ejemplo n.º 11
0
        public async Task <IActionResult> Create([Bind("HorarioMedicoId,DataInicioTurno,Duracao,DataFimTurno,TurnoId,MedicoId")] HorarioMedico horarioMedico)
        {
            if (ModelState.IsValid)
            {
                _context.Add(horarioMedico);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["MedicoId"] = new SelectList(_context.Medicos, "MedicoId", "CC", horarioMedico.MedicoId);
            ViewData["TurnoId"]  = new SelectList(_context.Turnos, "TurnoId", "TurnoId", horarioMedico.TurnoId);
            return(View(horarioMedico));
        }
Ejemplo n.º 12
0
        public HorarioMedico ObtenerHorarioMedico(int id)
        {
            HorarioMedico HorarioMedico = new HorarioMedico();

            try
            {
                HorarioMedico = _HorarioMedicoRepository.Find(id);
            }
            catch (Exception ex)
            {
                Log.Error(ex.ToString());
            }
            return(HorarioMedico);
        }
Ejemplo n.º 13
0
        public List <HorarioMedico> GetlistHorariosByIdMed(int idMedico)
        {
            string strQuery = "SELECT * FROM horariomedico WHERE id_medico=@idMedico ORDER BY id_dia ASC;";  //Hacer inner join para traer el dia?
            List <HorarioMedico> listHorario = new List <HorarioMedico>();
            HorarioMedico        objHorario;

            CD_Conexion conexion = new CD_Conexion(); //¿este puede ir afuera del metodo como mysql.comando tambien PERO el cerrar la conexion cuando termine la funcion y no en otra funcion puede ser problema porq son parte de la misma instancia?

            MySqlCommand comando = new MySqlCommand();

            comando.Connection  = conexion.AbrirConexion();
            comando.CommandText = strQuery;
            comando.Parameters.Add("@idMedico", MySqlDbType.Int32).Value = idMedico;
            MySqlDataReader rdr = comando.ExecuteReader();

            if (rdr.HasRows)
            {
                while (rdr.Read())
                {
                    objHorario = new HorarioMedico();
                    objHorario.IdHorarioMedico = Convert.ToInt32(rdr["id_horariomedico"]);
                    objHorario.IdMedico        = Convert.ToInt32(rdr["id_medico"]);
                    objHorario.Dia             = (DayOfWeek)Convert.ToInt32(rdr["id_dia"]); //el Enum.parse devuelve un objeto (?) Enum.Parse(typeof(DayOfWeek), rdr["id_dia"].ToString());
                    objHorario.HoraInicio_A    = rdr["horainicio_a"].ToString();
                    objHorario.HoraFin_A       = rdr["horafin_a"].ToString();
                    objHorario.HoraInicio_B    = rdr["horainicio_b"].ToString();
                    objHorario.HoraFin_B       = rdr["horafin_b"].ToString();
                    objHorario.DuracionTurnos  = Convert.ToInt32(rdr["duracion_turnos"]);

                    listHorario.Add(objHorario);
                }
            }
            else
            {
                Console.WriteLine("No hay filas cargadas");
            }

            rdr.Close();
            conexion.CerrarConexion();

            return(listHorario);
        }
Ejemplo n.º 14
0
        private void Cargar_fecha(Medico medico, Especialidad especialidad)
        {
            this.HM = null;
            this.HM = new HorarioMedico();


            this.HM.dni     = medico.dni;
            this.HM.id_espe = especialidad.id;

            this.HM.horarios = HMN.LeerHorario(HM.dni, HM.id_espe);



            cbxFecha.DataSource = null;

            cbxFecha.DataSource = TN.ListaFechas(this.HM);

            if (cbxFecha.Items.Count > 0)
            {
                cbxFecha.SelectedIndex = 0;
            }
        }
Ejemplo n.º 15
0
        protected void LlenarFechas(string dni, string espe)
        {
            try
            {
                this.ddlHora.DataSource = null;
                HorarioMedico HM = new HorarioMedico();
                HM.dni     = dni;
                HM.id_espe = int.Parse(espe);

                HorarioMedicoNegocio HMN = new HorarioMedicoNegocio();
                HM.horarios = HMN.LeerHorario(HM.dni, HM.id_espe);

                List <FechaTurno> FT = this.TN.ListaFechas(HM);

                this.ddlFecha.DataSource = FT;
                this.ddlFecha.DataBind();

                this.LlenarHoras(dni, espe, 1);
            }
            catch (Exception ex)
            {
            }
        }
Ejemplo n.º 16
0
        //FILTRA LAS FECHAS QUE ATIENDE EL MEDICO//
        public List <FechaTurno> ListaFechas(HorarioMedico HM)
        {
            List <FechaTurno> lista = new List <FechaTurno>();
            int  dia = ahora.Day, mes = ahora.Month, anio = ahora.Year;
            byte dia_semana = DiaDeLaSemana();

            List <HoraTurno> listaH = null;

            for (int i = 0; i < 60; i++)
            {
                for (int j = 0; j < HM.horarios.Count(); j++)
                {
                    if (HM.horarios.ElementAt(j).dia == dia_semana)
                    {
                        FechaTurno aux = new FechaTurno();
                        aux.dia        = dia;
                        aux.mes        = mes;
                        aux.anio       = anio;
                        aux.dia_semana = dia_semana;

                        listaH = ListaHorarios(HM, aux);
                        if (listaH != null)
                        {
                            if (listaH.Count > 0)
                            {
                                lista.Add(aux);
                            }
                        }
                    }
                }
                incrementar(ref dia, ref mes, ref anio, ref dia_semana);
            }


            return(lista);
        }
Ejemplo n.º 17
0
 public void Insertar(HorarioMedico objHorario)
 {
     horarioMedicoABM.InsertarHorariosMedico(objHorario);
 }
Ejemplo n.º 18
0
        protected void CrearTurno(object sender, EventArgs e)
        {
            try
            {
                int           IdEspe     = int.Parse(this.ddlEspecialidad.SelectedValue);
                string        IdMedico   = this.ddlMedico.SelectedValue;
                string        IdPaciente = paciente.dni;
                string        obs        = this.tbxObservaciones.Text;
                int           IdFecha    = this.ddlFecha.SelectedIndex;
                int           IdHora     = this.ddlHora.SelectedIndex;
                HorarioMedico HM         = new HorarioMedico();
                HM.dni     = IdMedico;
                HM.id_espe = IdEspe;

                HorarioMedicoNegocio HMN = new HorarioMedicoNegocio();
                HM.horarios = HMN.LeerHorario(HM.dni, HM.id_espe);

                List <FechaTurno> FT = TN.ListaFechas(HM);

                FechaTurno IT = FT.ElementAt(IdFecha);

                List <HoraTurno> HT = TN.ListaHorarios(HM, IT);

                HoraTurno hora = HT.ElementAt(IdHora);

                Turno aux = new Turno();
                aux.comentario   = obs;
                aux.estado       = new Estado();
                aux.estado.ID    = 2;
                aux.fecha        = new DateTime(IT.anio, IT.mes, IT.dia);
                aux.hora         = hora.Hora;
                aux.medico       = new Medico();
                aux.medico.dni   = HM.dni;
                aux.paciente     = new Paciente();
                aux.paciente.dni = IdPaciente;


                if (TN.ExisteTurno(aux) == true)
                {
                    this.respuesta = "El turno solicitado está ocupado";
                    this.Session.Add("turno", respuesta);
                    this.Session.Add("dni", paciente.dni);
                    this.Session.Add("nombre", paciente.nombre);
                    this.Session.Add("apellido", paciente.apellido);
                    this.Session.Add("medico", "");
                    this.Session.Add("fecha", "");
                }
                else
                {
                    if (TN.CrearTurno(aux) == false)
                    {
                        this.respuesta = "No se pudo crear el turno";
                        this.Session.Add("turno", respuesta);
                        this.Session.Add("dni", paciente.dni);
                        this.Session.Add("nombre", paciente.nombre);
                        this.Session.Add("apellido", paciente.apellido);
                        this.Session.Add("medico", "");
                        this.Session.Add("fecha", "");
                    }
                    else
                    {
                        this.respuesta = "El turno se creó correctamente";
                        this.Session.Add("turno", respuesta);
                        this.Session.Add("dni", paciente.dni);
                        this.Session.Add("nombre", paciente.nombre);
                        this.Session.Add("apellido", paciente.apellido);

                        this.Session.Add("medico", this.ddlMedico.SelectedItem.Text);
                        this.Session.Add("fecha", this.ddlFecha.Text + "  " + this.ddlHora.Text);
                    }
                }
                this.Response.Redirect("Turno.aspx");
            }
            catch (Exception ex)
            {
            }
        }
Ejemplo n.º 19
0
        public async Task <IActionResult> Aprovar(int id)
        {
            /*
             * Algoritmo:
             * Alterar o Estado para Aprovado Se O DS aprovar
             * Alterar o Estado para Não Aprovado se o DS não aprovar
             * Caso Aprove, Então:
             * Update na tabela horários, em que as linhas dos horários apenas sofrem a alteração do nome
             *
             */

            var pedidoTrocaTurnosMedico = await _context.PedidoTrocaTurnosMedico.FindAsync(id);

            if (id != pedidoTrocaTurnosMedico.PedidoTrocaTurnosMedicoId)
            {
                return(RedirectToAction(nameof(Error)));
            }

            EstadoPedidoTroca idEstadoAprovado = _context.EstadoPedidoTrocas.SingleOrDefault(e => e.Nome == "Aprovado");

            pedidoTrocaTurnosMedico.EstadoPedidoTrocaId = idEstadoAprovado.EstadoPedidoTrocaId; //Estado_Aprovado

            //Update Estado no Pedido de Troca
            try
            {
                _context.Update(pedidoTrocaTurnosMedico);
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PedidoTrocaTurnosMedicoExists(pedidoTrocaTurnosMedico.PedidoTrocaTurnosMedicoId))
                {
                    return(RedirectToAction(nameof(Error)));
                }
                else
                {
                    throw;
                }
            }

            //Update Horario A Trocar
            int id1 = (from p in _context.PedidoTrocaTurnosMedico
                       where p.PedidoTrocaTurnosMedicoId == id
                       select p.HorarioATrocarMedico.HorarioMedicoId).Single();

            HorarioMedico idHor1 = _context.HorariosMedicos.SingleOrDefault(h => h.HorarioMedicoId == id1);

            var horarioATrocar = await _context.HorariosMedicos.FindAsync(idHor1.HorarioMedicoId);

            int nomeHor1 = (from p in _context.PedidoTrocaTurnosMedico
                            where p.PedidoTrocaTurnosMedicoId == id
                            select p.HorarioParaTrocaMedico.HorarioMedico.Medico.MedicoId).Single();

            horarioATrocar.MedicoId = nomeHor1;

            //Update Horario Para Troca
            int id2 = (from p in _context.PedidoTrocaTurnosMedico
                       where p.PedidoTrocaTurnosMedicoId == id
                       select p.HorarioParaTrocaMedico.HorarioMedicoId).Single();

            HorarioMedico idHor2 = _context.HorariosMedicos.SingleOrDefault(h => h.HorarioMedicoId == id2);

            var horarioParaTroca = await _context.HorariosMedicos.FindAsync(idHor2.HorarioMedicoId);

            int nomeHor2 = (from p in _context.PedidoTrocaTurnosMedico
                            where p.PedidoTrocaTurnosMedicoId == id
                            select p.HorarioATrocarMedico.HorarioMedico.Medico.MedicoId).Single();

            horarioParaTroca.MedicoId = nomeHor2;

            try
            {
                UpdateHorario(_context, horarioATrocar);
                UpdateHorario(_context, horarioParaTroca);
                TempData["UpdatedSuccess"] = "Pedido aprovado com sucesso";
            }
            catch (DbUpdateConcurrencyException)
            {
                return(RedirectToAction(nameof(Error)));
            }

            return(RedirectToAction(nameof(Index)));
        }
Ejemplo n.º 20
0
        //FILTRA LOS HORARIOS DISPONIBLES POR FECHA//
        public List <HoraTurno> ListaHorarios(HorarioMedico HM, FechaTurno FT)
        {
            Horario H = null;

            for (int i = 0; i < HM.horarios.Count; i++)
            {
                H = HM.horarios.ElementAt(i);
                if (H.dia == FT.dia_semana)
                {
                    break;
                }
            }
            if (H == null)
            {
                return(null);
            }

            List <HoraTurno> lista = new List <HoraTurno>();

            List <Turno> milista = this.TurnosPorMedicoYFecha(HM.dni, new DateTime(FT.anio, FT.mes, FT.dia));

            DateTime ahora = DateTime.Now;
            DateTime fecha;

            for (byte i = H.hora_desde; i <= H.hora_hasta; i++)
            {
                fecha = new DateTime(FT.anio, FT.mes, FT.dia, i, 0, 0);
                bool existe = false;
                if (milista == null)
                {
                    if (fecha > ahora)
                    {
                        HoraTurno aux = new HoraTurno();
                        aux.Hora = i;
                        lista.Add(aux);
                    }
                }
                else
                {
                    for (int j = 0; j < milista.Count; j++)
                    {
                        if (milista.ElementAt(j).hora == i)
                        {
                            existe = true;
                            break;
                        }
                    }
                    if (existe == false)
                    {
                        if (fecha > ahora)
                        {
                            HoraTurno aux = new HoraTurno();
                            aux.Hora = i;
                            lista.Add(aux);
                        }
                    }
                }
            }

            return(lista);
        }
Ejemplo n.º 21
0
 /*
  * @param db
  * @param horario
  * @insert into HorariosEnfermeiro table the horario passed as the parameter
  */
 private void UpdateHorario(HospitalDbContext db, HorarioMedico horario)
 {
     db.HorariosMedicos.Update(horario);
     db.SaveChanges();
 }
Ejemplo n.º 22
0
 public void Modificar(HorarioMedico objHorario)
 {
     horarioMedicoABM.ModificarHorariosMedico(objHorario);
 }