public void obtenerFuncionalidades() { List <int> idsFunc = new List <int>(); List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@rol_id", this.rol_id)); string query = "SELECT Funcion_id " + "FROM kernel_panic.Funciones_Roles " + "WHERE Rol_id = @rol_id"; SpeakerDB speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); if (speaker.reader.HasRows) { while (speaker.reader.Read()) { idsFunc.Add((int)speaker.reader["Funcion_id"]); } } speaker.close(); ListaParametros.Clear(); ListaParametros.Add(new SqlParameter("@rol_id", this.rol_id)); query = "SELECT Nombre " + "FROM kernel_panic.Roles " + "WHERE Id = @rol_id"; speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); if (speaker.reader.HasRows) { speaker.reader.Read(); this.nombreRol = (string)speaker.reader["Nombre"]; } foreach (int fun_id in idsFunc) { this.funcionalidades.Add(new Funcionalidad(fun_id)); } speaker.close(); }
public static List <Turno> darTurnos(Afiliado afiliado, Profesional profesional) { List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@idAfiliado", afiliado.id)); ListaParametros.Add(new SqlParameter("@idProfesional", profesional.id)); ListaParametros.Add(new SqlParameter("@fecha", DateTime.Parse(ArchivoDeConfiguracion.Default.Fecha).Date)); string query = "SELECT Id, Fecha, Especialidad " + "FROM kernel_panic.Turnos " + "WHERE Afiliado_id = @idAfiliado " + "AND Profesional_id = @idProfesional " + "AND CONVERT(DATE,Fecha) = CONVERT(DATE,@fecha) " + "AND Fecha_llegada IS NULL " + "AND Cancelacion IS NULL " + "ORDER BY Fecha ASC"; SpeakerDB speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); List <Turno> turnos = new List <Turno>(); if (speaker.reader.HasRows) { while (speaker.reader.Read()) { Turno turno = new Turno(); turno.id = (int)speaker.reader["Id"]; turno.fecha = (DateTime)speaker.reader["Fecha"]; turno.especialidad = new Especialidad((decimal)speaker.reader["Especialidad"]); turno.afiliado = afiliado; turno.profesional = profesional; turno.especialidadNombre = turno.especialidad.descripcion; turno.profesionalNombre = turno.profesional.apellido + ", " + turno.profesional.nombre; turnos.Add(turno); } } speaker.close(); return(turnos); }
public void actualizarFuncionalidades(List <Funcionalidad> funcionalidades) { this.funcionalidades.Clear(); List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@idRol", this.rol_id)); string query = "DELETE FROM kernel_panic.Funciones_Roles " + "WHERE Rol_id = @idRol"; SpeakerDB speaker = ConexionDB.ExecuteNoQuery(query, "T", ListaParametros); speaker.close(); foreach (Funcionalidad funcionalidad in funcionalidades) { ListaParametros.Clear(); ListaParametros.Add(new SqlParameter("@rol_id", this.rol_id)); ListaParametros.Add(new SqlParameter("@funcionalidad_id", funcionalidad.funcionalidad_id)); query = "INSERT INTO kernel_panic.Funciones_Roles " + "(Rol_id, Funcion_id) " + "VALUES (@rol_id, @funcionalidad_id)"; speaker = ConexionDB.ExecuteNoQuery(query, "T", ListaParametros); speaker.close(); this.funcionalidades.Add(funcionalidad); } }
public void registrarAltaConyuge(Afiliado conyuge) { List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@Nom", nombre)); ListaParametros.Add(new SqlParameter("@Ape", apellido)); ListaParametros.Add(new SqlParameter("@Tipo_doc", tipoDoc)); ListaParametros.Add(new SqlParameter("@Doc", documento)); ListaParametros.Add(new SqlParameter("@Dire", domicilio)); ListaParametros.Add(new SqlParameter("@Tel", telefono)); ListaParametros.Add(new SqlParameter("@Mail", mail)); ListaParametros.Add(new SqlParameter("@Fecha_nac", fechaNac)); ListaParametros.Add(new SqlParameter("@Sexo", sexo)); ListaParametros.Add(new SqlParameter("@IdAfiInput", conyuge.id)); SqlParameter parametroSalida = new SqlParameter("@IdAfiReal", 0); parametroSalida.Direction = ParameterDirection.Output; ListaParametros.Add(parametroSalida); SpeakerDB speaker = ConexionDB.ExecuteNoQuery("kernel_panic.alta_conyuge", "SP", ListaParametros); int idAfiliado = Int32.Parse(speaker.comando.Parameters["@IdAfiReal"].Value.ToString()); this.id = idAfiliado; speaker.close(); }
public static List <Listado3> obtenerResultados(int anio, int semestre, decimal especialidad) { List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@anio", anio.ToString())); ListaParametros.Add(new SqlParameter("@especialidad", especialidad)); SpeakerDB speaker; if (semestre == 1) { speaker = ConexionDB.ObtenerDataReader("SELECT TOP 5 P.Id Id, P.Nombre nombre, P.Apellido apellido, P.Tipo_doc tipoDoc, P.Numero_doc numeroDoc, E.Desde desde,E.Hasta hasta,CASE WHEN (E.Desde<='01-01-'+@anio AND E.Hasta>='30-06-'+@anio) " + //,SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, E.Desde, E.Hasta) HorasTrabajadasEnFranja " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, '01-01-'+@anio, '30-06-'+@anio) " + "WHEN (E.Hasta>='01-01-'+@anio AND E.Hasta<='30-06-'+@anio) " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, '01-01-'+@anio, E.Hasta) " + "WHEN (E.Desde>='01-01-'+@anio AND E.Desde<='30-06-'+@anio) " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, E.Desde, '30-06-'+@anio) " + "END HorasTrabajadasEnFranja " + "FROM kernel_panic.Profesionales P JOIN kernel_panic.Esquema_Trabajo E ON (E.Profesional = P.Id) " + "JOIN kernel_panic.Agenda_Diaria AD ON (AD.EsquemaTrabajo = E.Id) " + "WHERE (E.Desde<='01-01-'+@anio AND E.Hasta>='30-06-'+@anio) OR " + "(E.Hasta>='01-01-'+@anio AND E.Hasta<='30-06-'+@anio) OR " + "(E.Desde>='01-01-'+@anio AND E.Desde<='30-06-'+@anio) " + "AND AD.Especialidad = @especialidad " + "GROUP BY P.Id, P.Nombre, P.Apellido, P.Tipo_doc, P.Numero_doc,E.Desde,E.Hasta " + "ORDER BY HorasTrabajadasEnFranja ASC", "T", ListaParametros); } else { speaker = ConexionDB.ObtenerDataReader("SELECT TOP 5 P.Id Id, P.Nombre nombre, P.Apellido apellido, P.Tipo_doc tipoDoc, P.Numero_doc numeroDoc, E.Desde desde,E.Hasta hasta,CASE WHEN (E.Desde<='01-07-'+@anio AND E.Hasta>='31-12-'+@anio) " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, '01-07-'+@anio, '31-12-'+@anio) " + "WHEN (E.Hasta>='01-07-'+@anio AND E.Hasta<='30-06-'+@anio) " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, '01-07-'+@anio, E.Hasta) " + "WHEN (E.Desde>='01-07-'+@anio AND E.Desde<='31-12-'+@anio) " + "THEN SUM(DATEDIFF(hour,AD.Desde, AD.Hasta))*DATEDIFF(week, E.Desde, '31-12-'+@anio) " + "END HorasTrabajadasEnFranja " + "FROM kernel_panic.Profesionales P JOIN kernel_panic.Esquema_Trabajo E ON (E.Profesional = P.Id) " + "JOIN kernel_panic.Agenda_Diaria AD ON (AD.EsquemaTrabajo = E.Id) " + "WHERE (E.Desde<='01-07-'+@anio AND E.Hasta>='31-12-'+@anio) OR " + "(E.Hasta>='01-07-'+@anio AND E.Hasta<='31-12-'+@anio) OR " + "(E.Desde>='01-07-'+@anio AND E.Desde<='31-12-'+@anio) " + "AND AD.Especialidad = @especialidad " + "GROUP BY P.Id, P.Nombre, P.Apellido, P.Tipo_doc, P.Numero_doc,E.Desde,E.Hasta " + "ORDER BY HorasTrabajadasEnFranja ASC", "T", ListaParametros); } List <Listado3> lista = new List <Listado3>(); if (speaker.reader.HasRows) { while (speaker.reader.Read()) { Listado3 listado = new Listado3(); listado.id = (int)speaker.reader["Id"]; listado.nombre = (string)speaker.reader["nombre"]; listado.apellido = (string)speaker.reader["apellido"]; listado.tipoDocumento = (string)speaker.reader["tipoDoc"]; listado.documento = (decimal)speaker.reader["numeroDoc"]; listado.desde = (DateTime)speaker.reader["desde"]; listado.hasta = (DateTime)speaker.reader["hasta"]; listado.horasTrabajadas = (int)speaker.reader["HorasTrabajadasEnFranja"]; lista.Add(listado); } } speaker.close(); return(lista); }
public static List <Afiliado> buscar(int activo, string nombre, string apellido, string grupo, string tipoDoc, string doc) { List <SqlParameter> ListaParametros = new List <SqlParameter>(); ListaParametros.Add(new SqlParameter("@nombre", "%" + nombre + "%")); ListaParametros.Add(new SqlParameter("@apellido", "%" + apellido + "%")); ListaParametros.Add(new SqlParameter("@esta_activo", activo)); ListaParametros.Add(new SqlParameter("@tipoDoc", tipoDoc)); SpeakerDB speaker; string query; // pueden pasar el documento o no, y el numero de grupo podria ser 0 que significa que no busca por ese campo if (doc.Equals("")) { if (grupo.Equals("")) { query = "SELECT Nombre, Apellido, Tipo_doc, Numero_doc, Id, Numero_de_grupo, Numero_en_el_grupo " + "FROM kernel_panic.Afiliados " + "WHERE Nombre LIKE @nombre " + "AND Apellido LIKE @apellido " + "AND Tipo_doc = @tipoDoc " + "AND Esta_activo = @esta_activo"; speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); } else { ListaParametros.Add(new SqlParameter("@grupo", Int16.Parse(grupo))); query = "SELECT Nombre, Apellido, Tipo_doc, Numero_doc, Id, Numero_de_grupo, Numero_en_el_grupo " + "FROM kernel_panic.Afiliados " + "WHERE Nombre LIKE @nombre " + "AND Apellido LIKE @apellido " + "AND Numero_de_grupo LIKE @grupo " + "AND Tipo_doc = @tipoDoc " + "AND Esta_activo = @esta_activo"; speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); } } else { ListaParametros.Add(new SqlParameter("@doc", "%" + doc + "%")); if (grupo.Equals("")) { query = "SELECT Nombre, Apellido, Tipo_doc, Numero_doc, Id, Numero_de_grupo, Numero_en_el_grupo " + "FROM kernel_panic.Afiliados " + "WHERE Nombre LIKE @nombre " + "AND Apellido LIKE @apellido " + "AND Tipo_doc = @tipoDoc " + "AND CAST(Numero_doc AS VARCHAR(20)) LIKE @doc " + "AND Esta_activo = @esta_activo"; speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); } else { ListaParametros.Add(new SqlParameter("@grupo", Int16.Parse(grupo))); query = "SELECT Nombre, Apellido, Tipo_doc, Numero_doc, Id, Numero_de_grupo, Numero_en_el_grupo " + "FROM kernel_panic.Afiliados " + "WHERE Nombre LIKE @nombre " + "AND Apellido LIKE @apellido " + "AND Numero_de_grupo = @grupo " + "AND Tipo_doc = @tipoDoc " + "AND CAST(Numero_doc AS VARCHAR(20)) LIKE @doc " + "AND Esta_activo = @esta_activo"; speaker = ConexionDB.ObtenerDataReader(query, "T", ListaParametros); } } List <Afiliado> afiliados = new List <Afiliado>(); if (speaker.reader.HasRows) { while (speaker.reader.Read()) { Afiliado afiliado = new Afiliado(); afiliado.id = (int)speaker.reader["Id"]; afiliado.numeroDeGrupo = (int)speaker.reader["Numero_de_grupo"]; afiliado.numeroEnElGrupo = (int)speaker.reader["Numero_en_el_grupo"]; afiliado.esta_activo = true; afiliado.apellido = (string)speaker.reader["Apellido"]; afiliado.nombre = (string)speaker.reader["Nombre"]; afiliado.tipoDoc = (string)speaker.reader["Tipo_doc"]; afiliado.documento = (decimal)speaker.reader["Numero_doc"]; afiliados.Add(afiliado); } } speaker.close(); return(afiliados); }