public static void Delete(int idPersona) { Acceso ac = new Acceso(); string sql = "DELETE FROM Persona WHERE (nroCliente = @codigo)"; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand(sql, conexion); cmd.Parameters.AddWithValue("@codigo", idPersona); try { conexion.Open(); cmd.CommandText = sql; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static void actualizarEstado() { Acceso ac = new Acceso(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); string sql = "UPDATE [Luiggi].[dbo].[PlanMaestroProduccion] SET idEstado = 24 WHERE [fechaFin] < Cast(Convert(varchar(10),getdate(),103) as datetime) and idEstado <> 24"; sql+=" UPDATE [Luiggi].[dbo].[PlanMaestroProduccion] SET idEstado = 18 WHERE [fechaFin] > Cast(Convert(varchar(10),getdate(),103) as datetime) and [fechaInicio] < Cast(Convert(varchar(10),getdate(),103) as datetime) and idEstado <> 18 "; SqlCommand cmd = new SqlCommand(sql, conexion); try { conexion.Open(); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static void Delete(int idPlan, SqlConnection con, SqlTransaction tran) { Acceso ac = new Acceso(); deletePlanXPedido(idPlan,con,tran); string sql = "DELETE FROM DetallePlanProduccion WHERE (idPlan = @idp)"; SqlCommand cmd = new SqlCommand(sql, con,tran); cmd.Parameters.AddWithValue("@idp", idPlan); try { cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { } }
public static void ActualizarDetallePlan(int idProd, double cantidad, DateTime fecha, SqlConnection con, SqlTransaction trans) { Acceso ac = new Acceso(); string sql = "UPDATE DetallePlanProduccion SET cantidadPedido = (cantidadPedido + @cantidad) where idProducto = @idProd and fechaProduccion = @fecha"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@idProd", idProd); cmd.Parameters.AddWithValue("@cantidad", cantidad); cmd.Parameters.AddWithValue("@fecha", fecha.Date); try { cmd.Connection = con; cmd.Transaction = trans; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { } }
public static void Delete(int idMaquina) { Acceso ac = new Acceso(); string sql = "Delete from Maquinaria where idMaquinaria=@idMaquina"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); cmd.Parameters.AddWithValue("@idMaquina", idMaquina); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static void Delete(int idProducto) { Acceso ac = new Acceso(); string sql = "DELETE FROM DetalleProducto WHERE idProducto = " + idProducto; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand(sql, conexion); try { conexion.Open(); cmd.CommandText = sql; cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static List<Empleado> GetAll() { Acceso ac = new Acceso(); List<Empleado> empleados = new List<Empleado>(); string sql = "SELECT * FROM CONSULTAR_EMPLEADO order by apellido asc, nombre asc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Empleado em; Estado e; while (dr.Read()) { em = new Empleado (); e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["estado"].ToString(); em.estado = e; em.Nombre = dr["nombre"].ToString(); em.Apellido = dr["apellido"].ToString(); em.fechaAlta = Convert.ToDateTime(dr["fechaAlta"]); em.idEmpleado = Convert.ToInt32(dr["idEmpleado"]); em.fechaNac = Convert.ToDateTime(dr["fechaNac"]); em.telefono = dr["telefonoContacto"].ToString(); em.edad = Convert.ToInt32(dr["edad"]); empleados.Add(em ); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return empleados; }
public static DataTable GetInformeOrdenesCompra(DateTime? desde, DateTime? hasta) { Acceso ac = new Acceso(); DataTable result = new DataTable(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand(); String sql = " SELECT idOrden, fechaOrden, idProveedor, razonSocial, cantidad, cantidadRealIngresada, nombre, unidad"; sql += " FROM EMITIR_INFORME_ORDEN_DE_COMPRA WHERE 1=1"; if (desde != null) { sql += " and fechaOrden between @fechaDesde and @fechaHasta"; cmd.Parameters.AddWithValue("@fechaDesde", desde); cmd.Parameters.AddWithValue("@fechaHasta", hasta); } else { cmd.Parameters.AddWithValue("@fechaDesde", "01/01/1900"); cmd.Parameters.AddWithValue("@fechaHasta", "01/01/1900"); } try { conexion.Open(); cmd.Connection = conexion; cmd.CommandType = CommandType.Text; cmd.CommandText = sql; result.Load(cmd.ExecuteReader()); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return result; }
public static List<Categoria> GetFiltro() { Acceso ac = new Acceso(); List<Categoria> categorias = new List<Categoria>(); string sql = "SELECT idCategoria, nombre FROM Categoria where (idCategoria =3 or idCategoria =4)"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Categoria c; while (dr.Read()) { c = new Categoria(); c.IDCategoria = Convert.ToInt32(dr["idCategoria"]); c.Nombre = dr["nombre"].ToString(); categorias.Add(c); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return categorias; }
public static List<Estado> GetAllEmpleado() { Acceso ac = new Acceso(); List<Estado> estados = new List<Estado>(); string sql = "SELECT idEstado, nombre, idAmbito FROM Estado where idAmbito = 2"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Estado e; while (dr.Read()) { e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["nombre"].ToString(); e.idAmbito = Convert.ToInt32(dr["idAmbito"]); estados.Add(e); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return estados; }
public static List<UnidadMedida> GetTiempo() { Acceso ac = new Acceso(); List<UnidadMedida> unidades = new List<UnidadMedida>(); string sql = "SELECT idUnidad, nombre FROM UnidadMedida where descripcion = ' '"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); UnidadMedida u; while (dr.Read()) { u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["nombre"].ToString(); unidades.Add(u); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return unidades; }
public int getNumeroCliente() { Acceso ac = new Acceso(); string sql = "SELECT MAX(nroCliente) AS nCli FROM Persona"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Read(); numeroCliente = Convert.ToInt32(dr["nCli"]); } else { numeroCliente = 1; } } catch (InvalidCastException ex) { return 1; } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return ++numeroCliente ; }
public static List<TipoDocumento> GetAll() { Acceso ac = new Acceso(); List<TipoDocumento> tiposDoc = new List<TipoDocumento>(); string sql = "SELECT idTipo, nombre, descripcion FROM TipoDocumento"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); TipoDocumento td; while (dr.Read()) { td = new TipoDocumento(); td.IDTipoDoc = Convert.ToInt32(dr["idTipo"]); td.Nombre = dr["nombre"].ToString(); td.Descripcion = dr["descripcion"].ToString(); tiposDoc.Add(td); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return tiposDoc; }
public static List<TipoConsumidor> GetAll() { Acceso ac = new Acceso(); List<TipoConsumidor> tiCons = new List<TipoConsumidor>(); string sql = "SELECT idTipoConsumidor, nombre FROM TipoConsumidor"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); TipoConsumidor tc; while (dr.Read()) { tc = new TipoConsumidor(); tc.idTipoConsumidor = Convert.ToInt32(dr["idTipoConsumidor"]); tc.Nombre = dr["nombre"].ToString(); tiCons.Add(tc); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return tiCons; }
public static List<Provincia> GetAll() { Acceso ac = new Acceso(); List<Provincia> provincias = new List<Provincia>(); string sql = "SELECT idProvincia, nombre FROM Provincia"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Provincia p; while (dr.Read()) { p = new Provincia(); p.idProvincia = Convert.ToInt32(dr["idProvincia"]); p.Nombre = dr["nombre"].ToString(); provincias.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return provincias ; }
public static Usuario GetUsuario(string login , string pass) { Acceso ac = new Acceso(); Usuario p = new Usuario(); string sql = "SELECT * from usuarios where login = @login and password COLLATE Latin1_General_CS_AS = @pass "; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@login", login); cmd.Parameters.AddWithValue("@pass", pass); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); dr.Read(); p.Login = dr["login"].ToString(); p.Nombre = dr["nombre"].ToString(); p.idUsuario = Convert.ToInt32(dr["idUsuario"]); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return p; }
public static DataTable GetInformeDesviacionOrdenesTrabajo(int año) { Acceso ac = new Acceso(); DataTable result = new DataTable(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand(); String sql = " SELECT o.idProducto, p.nombre, u.nombre as unidad, MONTH(o.fechaCreacion) AS mes, SUM(o.cantidad) AS \"CantidadPlanificada\", SUM(o.cantidadProducidaReal) AS \"CantidadProducida\", @año as año "; sql += " FROM OrdenTrabajo AS o INNER JOIN Producto AS p ON o.idProducto = p.idProducto inner join UnidadMedida u on p.idUnidadMedida = u.idUnidad"; sql += " WHERE (YEAR(o.fechaCreacion) = @año)"; sql += " GROUP BY o.idProducto, MONTH(o.fechaCreacion), p.nombre, u.nombre"; cmd.Parameters.AddWithValue("@año",año); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandType = CommandType.Text; cmd.CommandText = sql; result.Load(cmd.ExecuteReader()); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return result; }
public static bool GetAutorizacionPorUsuario(int idUsuario , string permiso) { Acceso ac = new Acceso(); bool a = false ; string sql = "select * from Autorizaciones a join Permisos p on a.idpermiso = p.idpermiso where a.idusuario = @idUsuario and p.permiso = @permiso "; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@idUsuario", idUsuario); cmd.Parameters.AddWithValue("@permiso", permiso); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); a = dr.HasRows; //a.idUsuario = Convert.ToInt32(dr["idUsuario"]); //a.idPermiso= Convert.ToInt32(dr["idpermiso"]); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return a; }
public static List <Maquinaria> GetByFiltro(Maquinaria maq) { Acceso ac = new Acceso(); List <Maquinaria> maquinas = new List <Maquinaria>(); SqlCommand cmd = new SqlCommand(); string sql = "select * from CONSULTAR_MAQUINARIA"; sql += " where 1=1"; if (maq.Nombre != null) { sql += " and nombre LIKE @nombre"; cmd.Parameters.AddWithValue("@nombre", "%" + maq.Nombre + "%"); } if (maq.descripcion != null) { sql += " and descripcion Like @descrip"; cmd.Parameters.AddWithValue("@descrip", "%" + maq.descripcion + "%"); } if (maq.estado.idEstado != 0) { sql += " and idEstado=@estado"; cmd.Parameters.AddWithValue("@estado", maq.estado.idEstado); } if (maq.tipoMaquinaria.idTipoMaquinaria != 0) { sql += " and idTipo=@tipo"; cmd.Parameters.AddWithValue("@tipo", maq.tipoMaquinaria.idTipoMaquinaria); } SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Maquinaria maqu; Estado est; TipoMaquinaria tipo; while (dr.Read()) { est = new Estado(); est.idEstado = Convert.ToInt32(dr["idEstado"]); est.Nombre = dr["estado"].ToString(); tipo = new TipoMaquinaria(); tipo.idTipoMaquinaria = Convert.ToInt32(dr["idTipo"]); tipo.Nombre = dr["tipoMaquinaria"].ToString(); maqu = new Maquinaria(); maqu.estado = est; maqu.tipoMaquinaria = tipo; maqu.Nombre = dr["nombre"].ToString(); maqu.idMaquinaria = Convert.ToInt32(dr["idMaquinaria"]); maqu.fechaAlta = Convert.ToDateTime(dr["fechaAlta"]); maqu.descripcion = dr["descripcion"].ToString(); maquinas.Add(maqu); } } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(maquinas); }
public static Pedido GetById(int id) { Acceso ac = new Acceso(); Pedido p = new Pedido(); SqlCommand cmd = new SqlCommand(); string sql = "SELECT * from CONSULTA_PEDIDOS where idPedido=@id"; cmd.Parameters.AddWithValue("@id", id); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); CondicionIVA ci; Persona c; TipoDocumento t; while (dr.Read()) { ci = new CondicionIVA(); ci.idCondicionIVA = Convert.ToInt32(dr["iva"]); c = new Persona(); t = new TipoDocumento(); t.IDTipoDoc = Convert.ToInt32(dr["idTipoDoc"]); c.idPersona = Convert.ToInt32(dr["idPersona"]); c.RazonSocial = dr["razonSocial"].ToString(); c.Nombre = dr["nombre"].ToString(); c.Apellido = dr["apellido"].ToString(); c.cuil = dr["CUIT"].ToString(); c.NroDoc = Convert.ToInt32(dr["nroDocumento"]); c.tefefonoCelular = dr["telefonoCelular"].ToString(); c.condicionIVA = ci; c.TipoDoc = t; p.idPedido = Convert.ToInt32(dr["idPedido"]); p.fechaNecesidad = Convert.ToDateTime(dr["fechaNecesidad"]); p.fechaPedido = Convert.ToDateTime(dr["fechaPedido"]); p.montoTotal = Convert.ToDouble(dr["total"]); p.nroPedido = Convert.ToInt32(dr["nroPedido"]); p.dirEntraga = dr["direccion"].ToString(); p.cliente = c; } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(p); }
/// <summary> /// Usa las variables en el objeto para calcular las medallas basadas en lo que hay en la base de datos /// </summary> /// </param name="tipoOlimpiada">El tipo de olimpiada para el que se requieren los tipos</param> public static void calcularMedallas(TipoOlimpiada tipoOlimpiada, string olimpiada, bool ordenarPorPuntos) { if (tipoOlimpiada == TipoOlimpiada.NULL) { return; } Acceso db = new Acceso(); StringBuilder query = new StringBuilder(); query.Append(" delete medallero where clase = "); query.Append(Cadenas.comillas(tipoOlimpiada.ToString().ToLower())); query.Append(" and (tipo <> "); query.Append((int)TipoMedallero.ESTADO_POR_OMI); query.Append(" or clave like '%_"); query.Append(olimpiada); query.Append("%')"); // Primero borramos todo lo que está en la base de datos // a excepción de otros tipos de olimpiada u otros estado-olimpiada db.EjecutarQuery(query.ToString()); // Obtenermos todos los resultados List <Resultados> resultados = Resultados.cargarResultados(null, tipoOlimpiada, cargarObjetos: true); // Diccionarios para los diferentes tipos de medalleros Dictionary <int, Medallero> personas = new Dictionary <int, Medallero>(); Dictionary <int, Medallero> instituciones = new Dictionary <int, Medallero>(); Dictionary <string, Medallero> estados = new Dictionary <string, Medallero>(); Dictionary <string, Medallero> estadosPorOlimpiada = new Dictionary <string, Medallero>(); // Recorremos todos los resultados agregando contadores foreach (Resultados resultado in resultados) { Medallero persona; Medallero institucion; Medallero estado; Medallero estadoPorOlimpiada = null; bool aplicaAOlimpiada = olimpiada == resultado.omi; string estadoPorOlimpiadaClave = resultado.estado + "_" + resultado.omi; if (!personas.TryGetValue(resultado.usuario, out persona)) { persona = new Medallero(); persona.clave = resultado.usuario.ToString(); persona.tipoOlimpiada = tipoOlimpiada; persona.tipoMedallero = TipoMedallero.PERSONA; personas.Add(resultado.usuario, persona); } if (resultado.escuela != null) { if (!instituciones.TryGetValue(resultado.escuela.clave, out institucion)) { institucion = new Medallero(); institucion.clave = resultado.escuela.clave.ToString(); institucion.tipoOlimpiada = tipoOlimpiada; institucion.tipoMedallero = TipoMedallero.INSTITUCION; instituciones.Add(resultado.escuela.clave, institucion); } } else { // Agregamos un dummy para evitar if's abajo institucion = new Medallero(); } Estado e = Estado.obtenerEstadoConClave(resultado.estado); if (!estados.TryGetValue(resultado.estado, out estado)) { estado = new Medallero(); estado.clave = resultado.estado; estado.tipoOlimpiada = tipoOlimpiada; estado.tipoMedallero = TipoMedallero.ESTADO; estados.Add(resultado.estado, estado); } if (aplicaAOlimpiada) { if (!estadosPorOlimpiada.TryGetValue(estadoPorOlimpiadaClave, out estadoPorOlimpiada)) { estadoPorOlimpiada = new Medallero(); estadoPorOlimpiada.clave = estadoPorOlimpiadaClave; estadoPorOlimpiada.tipoOlimpiada = tipoOlimpiada; estadoPorOlimpiada.omi = resultado.omi; estadoPorOlimpiada.ordenarPorPuntos = ordenarPorPuntos; estadoPorOlimpiada.tipoMedallero = TipoMedallero.ESTADO_POR_OMI; estadoPorOlimpiada.count = 0; estadoPorOlimpiada.puntos = 0; estadoPorOlimpiada.promedio = 0; estadoPorOlimpiada.hayUNKs = false; if (!e.extranjero) { estadosPorOlimpiada.Add(estadoPorOlimpiadaClave, estadoPorOlimpiada); } } } if (resultado.medalla != Resultados.TipoMedalla.DESCALIFICADO) { switch (resultado.medalla) { case Resultados.TipoMedalla.ORO_3: case Resultados.TipoMedalla.ORO_2: case Resultados.TipoMedalla.ORO_1: case Resultados.TipoMedalla.ORO: { persona.oros++; estado.oros++; institucion.oros++; if (aplicaAOlimpiada) { estadoPorOlimpiada.oros++; } break; } case Resultados.TipoMedalla.PLATA: { persona.platas++; estado.platas++; institucion.platas++; if (aplicaAOlimpiada) { estadoPorOlimpiada.platas++; } break; } case Resultados.TipoMedalla.BRONCE: { persona.bronces++; estado.bronces++; institucion.bronces++; if (aplicaAOlimpiada) { estadoPorOlimpiada.bronces++; } break; } default: { persona.otros++; estado.otros++; institucion.otros++; break; } } if (aplicaAOlimpiada) { if (resultado.clave.StartsWith(Resultados.CLAVE_DESCONOCIDA)) { estadoPorOlimpiada.hayUNKs = true; } // No se han guardado mas de 4 lugares if (estadoPorOlimpiada.count < 4) { // En algunas olimpiadas, hubo invitados que se pusieron en el medallero, estos no se cuentan en el total if (!resultado.clave.EndsWith("I")) { Olimpiada o = Olimpiada.obtenerOlimpiadaConClave(resultado.omi, resultado.tipoOlimpiada); // Si solo tenemos los datos de los medallistas, no podemos hacer nada con los puntos if (o.noMedallistasConocidos) { // En las OMIs con puntos desconocidos, se guarda en los puntos del dÃa 2, los puntos de los estados if (o.puntosDesconocidos) { estadoPorOlimpiada.puntos += resultado.totalDia2; } else { estadoPorOlimpiada.count++; estadoPorOlimpiada.puntos += resultado.total; } } } } } } } // Guardamos los contadores en la base de datos // Primero las personas foreach (Medallero persona in personas.Values) { if (persona.clave != "0") { persona.guardarDatos(); } } // Después las instituciones foreach (Medallero institucion in instituciones.Values) { if (institucion.clave != "0") { institucion.guardarDatos(); } } // Los estados (general) foreach (Medallero estado in estados.Values) { estado.guardarDatos(); } // Finalmente, para los estados por olimpiada, hay que hacer un par de cosas List <Medallero> sortedEstados = new List <Medallero>(estadosPorOlimpiada.Values); if (sortedEstados.Count > 0) { string lastOMI = sortedEstados[0].omi; bool invalido = false; int firstEstadoInOmi = 0; // Los necesitamos ordenados primero por olimpiada sortedEstados.Sort(); // Necesitamos reordenarlos por promedio for (int i = 0; i < sortedEstados.Count; i++) { Medallero estado = sortedEstados[i]; if (estado.omi != lastOMI) { // Si algún estado en la olimpiada tiene un // promedio invalido, ningún promedio es valido if (invalido) { for (int j = firstEstadoInOmi; j < i; j++) { sortedEstados[j].promedio = 0; } } firstEstadoInOmi = i; invalido = false; lastOMI = estado.omi; } if (!estado.hayUNKs && estado.count > 0) { estado.promedio = (float?)Math.Round((double)(estado.puntos / estado.count), 2); } invalido |= estado.promedioEsInvalido(); } sortedEstados.Sort(); lastOMI = ""; int lugarActual = 0; Medallero ultimoEstado = null; // Vamos por cada estado para asignarles el lugar foreach (Medallero estado in sortedEstados) { // Estamos recibiendo los estados de todas las olimpiadas if (estado.omi != lastOMI) { lastOMI = estado.omi; lugarActual = 0; ultimoEstado = null; } lugarActual++; // Revisamos si hay empates entre estados if (ultimoEstado == null || ultimoEstado.oros != estado.oros || ultimoEstado.platas != estado.platas || ultimoEstado.bronces != estado.bronces || (int)Math.Round((double)ultimoEstado.puntos) != (int)Math.Round((double)estado.puntos)) { estado.lugar = lugarActual; } else { estado.lugar = ultimoEstado.lugar; } ultimoEstado = estado; estado.guardarDatos(); } } // Al final hacemos los ajustes hardcodeados hardcode(tipoOlimpiada, olimpiada); }
public static List <DetallePlanProduccion> GetDetalleXPlan(int plan) { Acceso ac = new Acceso(); List <DetallePlanProduccion> detalles = new List <DetallePlanProduccion>(); string sql = "SELECT * from CONSULTA_DETALLE_PLAN_PRODUCCION where idPlan = @plan"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@plan", plan); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); DetallePlanProduccion d; Producto p; UnidadMedida u; Categoria c; while (dr.Read()) { u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidadMedida"]); u.Nombre = dr["unidad"].ToString(); p = new Producto(); p.CODProducto = Convert.ToInt32(dr["codProducto"]); p.Nombre = dr["nombre"].ToString(); p.Unidad = u; p.idProducto = Convert.ToInt16(dr["idProducto"]); d = new DetallePlanProduccion(); d.cantidadPLan = Convert.ToInt32(dr["cantidadPLan"]); d.cantidadPedido = Convert.ToInt32(dr["cantidadPedido"]); d.fechaProduccion = Convert.ToDateTime(dr["fechaProduccion"]); d.producto = p; detalles.Add(d); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(detalles); }
public static List<Factura> GetAll() { Acceso ac = new Acceso(); List<Factura> facturas = new List<Factura>(); string sql = "SELECT * from CONSULTAR_FACTURA order by fecha desc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Factura factura; Estado estado; Persona cliente; while (dr.Read()) { cliente = new Persona(); cliente.RazonSocial = dr["razonSocial"].ToString(); cliente.Nombre = dr["nombre"].ToString(); cliente.Apellido = dr["apellido"].ToString(); estado = new Estado(); estado.idEstado = Convert.ToInt32(dr["idEstado"]); estado.Nombre = dr["estado"].ToString(); factura = new Factura(); factura.cliente = cliente; factura.estado = estado; factura.fechaCreacion = Convert.ToDateTime(dr["fecha"]); factura.fechaPago = Convert.ToDateTime(dr["fechaPago"]); factura.idFactura = Convert.ToInt32(dr["idFactura"]); factura.importeTotal = Convert.ToDouble(dr["importe"]); factura.tipoFactura = Convert.ToChar(dr["tipoFactura"].ToString()); factura.totalIVA = Convert.ToDouble(dr["totalIVA"]); facturas.Add(factura); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return facturas; }
//En el constructor es necesario pasar la cadena de conexión que se pasara a nuestra clase //de "Acceso", para poder realizar las modificaciones en la base de datos. public Negocio(string Cadcon) { operacion = new Acceso(Cadcon); }
public void ObtenerModulosPerfil(Guid uidPerfil, Guid?uidNivelAcceso = null) { _modulosDelPerfil = Acceso.ObtenerModulosPorPerfil(uidPerfil, uidNivelAcceso); }
/// <summary> /// Método es para modificar un Contacto con los valores recibidos desde presentación /// </summary> /// <param name="P_Contacto">Entidad Contacto</param> /// <returns>1 = CORRECTO | 0 = ERROR</returns> public static int ModificarContacto(Contactos P_Contacto) { try { SQLParametros objpeticion = new SQLParametros(); //Ajustar peticion para utilización con parametros objpeticion.Peticion = @"EXEC PA_ModificarContacto @nombre, @telefono, @PalabraClave, @Correo, @TipoContacto, @Servicios, @estadocontacto"; //Crear los parametros SqlParameter parametroNomUsuario = new SqlParameter(); parametroNomUsuario.ParameterName = "@nombre"; parametroNomUsuario.Size = 50; parametroNomUsuario.SqlDbType = System.Data.SqlDbType.VarChar; parametroNomUsuario.Value = P_Contacto.Nombre; SqlParameter parametroTelefono = new SqlParameter(); parametroTelefono.ParameterName = "@telefono"; parametroTelefono.SqlDbType = System.Data.SqlDbType.Int; parametroTelefono.Value = P_Contacto.Telefono; SqlParameter parametroPalabraClave = new SqlParameter(); parametroPalabraClave.ParameterName = "@PalabraClave"; parametroPalabraClave.Size = 50; parametroPalabraClave.SqlDbType = System.Data.SqlDbType.VarChar; parametroPalabraClave.Value = P_Contacto.PalabraClave; SqlParameter parametroCorreo = new SqlParameter(); parametroCorreo.ParameterName = "@Correo"; parametroCorreo.Size = 80; parametroCorreo.SqlDbType = System.Data.SqlDbType.VarChar; parametroCorreo.Value = P_Contacto.Correo; SqlParameter parametroTipoContacto = new SqlParameter(); parametroTipoContacto.ParameterName = "@TipoContacto"; parametroTipoContacto.Size = 50; parametroTipoContacto.SqlDbType = System.Data.SqlDbType.VarChar; parametroTipoContacto.Value = P_Contacto.TipoContacto; SqlParameter parametroServicios = new SqlParameter(); parametroServicios.ParameterName = "@Servicios"; parametroServicios.Size = 50; parametroServicios.SqlDbType = System.Data.SqlDbType.VarChar; parametroServicios.Value = P_Contacto.Servicios; SqlParameter parametroEstado = new SqlParameter(); parametroEstado.ParameterName = "@estadocliente"; parametroEstado.SqlDbType = System.Data.SqlDbType.Bit; parametroEstado.Value = P_Contacto.EstadoContacto; //Agrega a la lista de parametros los parametros creado objpeticion.LstParametros.Add(parametroNomUsuario); objpeticion.LstParametros.Add(parametroTelefono); objpeticion.LstParametros.Add(parametroPalabraClave); objpeticion.LstParametros.Add(parametroCorreo); objpeticion.LstParametros.Add(parametroTipoContacto); objpeticion.LstParametros.Add(parametroServicios); objpeticion.LstParametros.Add(parametroEstado); Acceso objacceso = new Acceso(); return(objacceso.Ejecutar_Peticiones(objpeticion)); } catch (Exception ex) { throw ex; } }
public static void trim(string omi, TipoOlimpiada tipo, int tiempo, int dia = 1) { if (dia > 2) { return; } StringBuilder query = new StringBuilder(); Acceso db = new Acceso(); // Primero obtenemos una lista de todos los timestamps mas grandes query.Append(" select clave, MAX(timestamp) from DetalleLugar where olimpiada = "); query.Append(Cadenas.comillas(omi)); query.Append(" and clase = "); query.Append(Cadenas.comillas(tipo.ToString().ToLower())); query.Append(" and dia = "); query.Append(dia); query.Append(" group by clave "); db.EjecutarQuery(query.ToString()); DataTable table = db.getTable(); foreach (DataRow r in table.Rows) { string clave = DataRowParser.ToString(r[0]); int timestamp = DataRowParser.ToInt(r[1]); // Si el último timestamp es diferente del tiempo que tenemos... if (timestamp != tiempo) { // ...borramos todos las entradas superiores y menores al que tenemos query.Clear(); query.Append(" delete DetalleLugar where olimpiada = "); query.Append(Cadenas.comillas(omi)); query.Append(" and clase = "); query.Append(Cadenas.comillas(tipo.ToString().ToLower())); query.Append(" and dia = "); query.Append(dia); query.Append(" and clave = "); query.Append(Cadenas.comillas(clave)); query.Append(" and timestamp >= "); query.Append(tiempo); query.Append(" and timestamp <> "); query.Append(timestamp); db.EjecutarQuery(query.ToString()); // ... y actualizamos el que tenemos para que tenga ese timestamp query.Clear(); query.Append(" update DetalleLugar set timestamp = "); query.Append(tiempo); query.Append(" where olimpiada = "); query.Append(Cadenas.comillas(omi)); query.Append(" and clase = "); query.Append(Cadenas.comillas(tipo.ToString().ToLower())); query.Append(" and dia = "); query.Append(dia); query.Append(" and clave = "); query.Append(Cadenas.comillas(clave)); query.Append(" and timestamp = "); query.Append(timestamp); db.EjecutarQuery(query.ToString()); } } // Finalmente hacemos lo mismo con dia 2 trim(omi, tipo, tiempo, dia + 1); }
/// <summary> /// Guarda los datos en la base de datos /// </summary> /// <param name="generarPeticiones">Si nombre y foto deben de guardarse /// directamente en la base de datos o si se deben generar peticiones</param> /// <param name="currentValues">El valor actual de los datos</param> /// <param name="lugarGuardado">El lugar de donde viene el guardado de datos</param> /// <returns>Si el update se ejecutó correctamente</returns> public bool guardarDatos(bool generarPeticiones = false, Persona currentValues = null, LugarGuardado lugarGuardado = LugarGuardado.PROFILE) { Acceso db = new Acceso(); StringBuilder query = new StringBuilder(); query.Append(" update persona set "); if (generarPeticiones && nombreCompleto != currentValues.nombreCompleto) { if (nombre != currentValues.nombre) { Peticion pet = new Peticion(); pet.tipo = Peticion.TipoPeticion.USUARIO; pet.subtipo = Peticion.TipoPeticion.NOMBRE; pet.usuario = this; pet.datos1 = nombre; pet.guardarPeticion(); } if (apellidoPaterno != currentValues.apellidoPaterno) { Peticion pet = new Peticion(); pet.tipo = Peticion.TipoPeticion.USUARIO; pet.subtipo = Peticion.TipoPeticion.APELLIDOPATERNO; pet.usuario = this; pet.datos1 = apellidoPaterno; pet.guardarPeticion(); } if (apellidoMaterno != currentValues.apellidoMaterno) { Peticion pet = new Peticion(); pet.tipo = Peticion.TipoPeticion.USUARIO; pet.subtipo = Peticion.TipoPeticion.APELLIDOMATERNO; pet.usuario = this; pet.datos1 = apellidoMaterno; pet.guardarPeticion(); } } else { query.Append(" nombre = "); query.Append(Cadenas.comillas(Cadenas.quitaEspacioDoble(nombre))); query.Append(","); query.Append(" apellidoP = "); query.Append(Cadenas.comillas(Cadenas.quitaEspacioDoble(apellidoPaterno))); query.Append(","); query.Append(" apellidoM = "); query.Append(Cadenas.comillas(Cadenas.quitaEspacioDoble(apellidoMaterno))); query.Append(","); query.Append(" search = "); query.Append(Cadenas.comillas(Cadenas.quitaEspeciales(nombre + " " + apellidoPaterno + " " + apellidoMaterno))); query.Append(","); } if (lugarGuardado == LugarGuardado.PROFILE) { query.Append(" facebook = "); query.Append(Cadenas.comillas(facebook)); query.Append(","); query.Append(" twitter = "); query.Append(Cadenas.comillas(twitter)); query.Append(","); query.Append(" sitio = "); query.Append(Cadenas.comillas(sitio)); query.Append(","); query.Append(" usuario = "); query.Append(Cadenas.comillas(usuario)); query.Append(","); query.Append(" permisos = "); query.Append((int)permisos); query.Append(","); query.Append(" codeforces = "); query.Append(Cadenas.comillas(codeforces)); query.Append(","); query.Append(" topcoder = "); query.Append(Cadenas.comillas(topcoder)); query.Append(","); query.Append(" ioiID = "); query.Append(ioiID); query.Append(","); } query.Append(" genero = "); query.Append(Cadenas.comillas(genero)); query.Append(","); query.Append(" omegaup = "); query.Append(Cadenas.comillas(omegaup)); query.Append(","); query.Append(" omips = "); query.Append(omips ? 1 : 0); query.Append(","); query.Append(" oculta = "); query.Append(oculta ? 1 : 0); query.Append(","); if (lugarGuardado == LugarGuardado.REGISTRO) { query.Append(" celular = "); query.Append(Cadenas.comillas(celular)); query.Append(","); query.Append(" telefono = "); query.Append(Cadenas.comillas(telefono)); query.Append(","); query.Append(" direccion = "); query.Append(Cadenas.comillas(direccion)); query.Append(","); query.Append(" emergencia = "); query.Append(Cadenas.comillas(emergencia)); query.Append(","); query.Append(" parentesco = "); query.Append(Cadenas.comillas(parentesco)); query.Append(","); query.Append(" telemergencia = "); query.Append(Cadenas.comillas(telEmergencia)); query.Append(","); query.Append(" medicina = "); query.Append(Cadenas.comillas(medicina)); query.Append(","); query.Append(" alergias = "); query.Append(Cadenas.comillas(alergias)); query.Append(","); } if (!String.IsNullOrEmpty(foto)) { if (generarPeticiones) { Peticion pet = new Peticion(); pet.tipo = Peticion.TipoPeticion.USUARIO; pet.subtipo = Peticion.TipoPeticion.FOTO; pet.usuario = this; pet.datos1 = foto; pet.guardarPeticion(); } else { query.Append(" foto = "); query.Append(Cadenas.comillas(foto)); query.Append(","); } } query.Append(" correo = "); query.Append(Cadenas.comillas(correo)); query.Append(","); query.Append(" nacimiento = "); query.Append(Cadenas.comillas(Fechas.dateToString(nacimiento))); query.Append(" where clave = "); query.Append(clave); return(!db.EjecutarQuery(query.ToString()).error); }
public void SetMetodoAcceso(Acceso value) { metodoAcceso = value; }
public static List <ProductoXProveedor> GetByIdProd(int idProv) { Acceso ac = new Acceso(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); List <ProductoXProveedor> productos = new List <ProductoXProveedor> (); SqlCommand cmd = new SqlCommand(); string sql = "Select * From CONSULTAR_PRODUCTOS_X_PROVEEDOR where idProveedor = @idProv"; cmd.Parameters.AddWithValue("@idProv", idProv); Persona pr; Producto p; UnidadMedida u; ProductoXProveedor pp; try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { pr = new Persona(); pr.Apellido = dr["apellido"].ToString(); pr.Nombre = dr["nombreRepresentante"].ToString(); pr.telefono = dr["telefonoContacto"].ToString(); pr.mail = dr["email"].ToString(); pp = new ProductoXProveedor(); //u.IDUnidad = Convert.ToInt32(dr["idunidad"]); u = new UnidadMedida(); p = new Producto(); p.idProducto = Convert.ToInt32(dr["idProducto"]); p.Unidad = new UnidadMedida() { Nombre = dr["unidad"].ToString() }; p.Nombre = dr["nombre"].ToString(); p.Descripcion = dr["descripcion"].ToString(); p.StockActual = Convert.ToDouble(dr["stockActual"]); p.StockDisponible = Convert.ToDouble(dr["stockDisponible"]); p.StockReservado = Convert.ToDouble(dr["StockReservado"]); p.StockRiesgo = Convert.ToDouble(dr["StockdeRiesgo"]); pp.producto = p; pp.fechaPrecio = Convert.ToDateTime(dr["fecha"]); pp.precioProveedor = Convert.ToDouble(dr["precio"]); pp.proveedor = pr; productos.Add(pp); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(productos); }
public static List <ProductoXProveedor> buscarProductosXProveedor() { Acceso ac = new Acceso(); List <ProductoXProveedor> productos = new List <ProductoXProveedor>(); string sql = "SELECT idProveedor, idProducto, fecha, precio, nombre, descripcion, stockDisponible, stockDeRiesgo, stockActual, stockReservado, unidad, idUnidad, razonSocial, CUIT, nombreRepresentante, apellido, email, telefonoContacto, idCategoria from CONSULTAR_PRODUCTOS_X_PROVEEDOR order by nombre asc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Producto prod; Persona prov; Categoria c; UnidadMedida u; ProductoXProveedor PPP; while (dr.Read()) { u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["unidad"].ToString(); prod = new Producto(); prod.idProducto = Convert.ToInt32(dr["idProducto"]); prod.Nombre = dr["nombre"].ToString(); prod.Descripcion = dr["descripcion"].ToString(); prod.Unidad = u; prod.StockRiesgo = Convert.ToInt32(dr["stockDeRiesgo"]); prod.StockDisponible = Convert.ToInt32(dr["stockDisponible"]); prod.StockActual = Convert.ToInt32(dr["stockActual"]); prod.StockReservado = Convert.ToInt32(dr["stockReservado"]); prov = new Persona(); prov.NroProveedor = Convert.ToInt32(dr["idProveedor"]); prov.RazonSocial = dr["razonSocial"].ToString(); prov.cuil = dr["CUIT"].ToString(); prov.Nombre = dr["nombreRepresentante"].ToString(); prov.Apellido = dr["apellido"].ToString(); prov.mail = dr["email"].ToString(); prov.telefono = dr["telefonoContacto"].ToString(); //prov.idPersona = Convert.ToInt32(dr["idPersona"]); PPP = new ProductoXProveedor(); PPP.fechaPrecio = Convert.ToDateTime(dr["fecha"]); PPP.precioProveedor = Convert.ToDouble(dr["precio"]); PPP.producto = prod; PPP.proveedor = prov; productos.Add(PPP); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(productos); }
public static int Insert(Pedido ped, List <Producto> productosConPocaMP) { Acceso ac = new Acceso(); SqlTransaction tran = null; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("sp_Pedido_insert", conexion); cmd.Parameters.AddWithValue("@idCliente", ped.cliente.idPersona); cmd.Parameters.AddWithValue("@idEstado", ped.estado.idEstado); cmd.Parameters.AddWithValue("@fechaPedido", ped.fechaPedido); cmd.Parameters.AddWithValue("@fechaNecesidad", ped.fechaNecesidad); cmd.Parameters.AddWithValue("@nroPedido", ped.nroPedido); cmd.Parameters.AddWithValue("@direccion", ped.dirEntraga); try { conexion.Open(); tran = conexion.BeginTransaction(); cmd.CommandType = CommandType.StoredProcedure; cmd.Transaction = tran; cmd.ExecuteNonQuery(); SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran); ped.idPedido = Convert.ToInt32((cmdIdentity.ExecuteScalar())); foreach (DetallePedido detPed in ped.detallePedido) { //detPed.pedido.idPedido = ped.idPedido; DetallePedidoDAO.Insert(detPed, conexion, tran, ped.idPedido); if (detPed.reservado == true) { ProductoDAO.UpdateStockReservadoYDisponible(detPed, conexion, tran); } if (detPed.reservado == false) { actualizarStock(detPed, conexion, tran, ped, productosConPocaMP); } } tran.Commit(); return(ped.idPedido); } catch (ArgumentException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException(ex.Message); } catch (SqlException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public void ActualizarModulosUsuario(Guid uidUsuario, List <Guid> modulos) { Acceso.ActualizarModulosDelUsuario(uidUsuario, modulos); }
public void ObtenerModulosNivel(Guid uidNivelAcceso) { _modulos = Acceso.ObtenerModulosPorNivel(uidNivelAcceso); }
public static List <Pedido> GetByFiltros(int est, int tipDoc, int?nroDoc, double?montoDesde, double?mostoHasta, string nom, string ape, string raSoc, int?cuit, DateTime?fdesde, DateTime?fhasta) { Acceso ac = new Acceso(); List <Pedido> pedidos = new List <Pedido>(); string sql = "SELECT * from CONSULTA_PEDIDOS where 1=1"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); if (est != -1 && est != 0) { sql += " and idEstado = @est"; cmd.Parameters.AddWithValue("@est", est); } if (tipDoc != -1 && tipDoc != 0) { sql += " and idTipoDoc = @tipDoc"; cmd.Parameters.AddWithValue("@tipDoc", tipDoc); } if (nroDoc.HasValue) { sql += " and nroDocumento = @nroDoc"; cmd.Parameters.AddWithValue("@nroDoc", nroDoc); } if (montoDesde.HasValue) { sql += " and total >= @montoDesde"; cmd.Parameters.AddWithValue("@montoDesde", montoDesde); } if (mostoHasta.HasValue) { sql += " and total <= @mostoHasta"; cmd.Parameters.AddWithValue("@mostoHasta", mostoHasta); } if (!string.IsNullOrEmpty(ape)) { sql += " and apellido = @apellido"; cmd.Parameters.AddWithValue("@apellido", ape); } if (!string.IsNullOrEmpty(nom)) { sql += " and nombre = @nombre"; cmd.Parameters.AddWithValue("@nombre", nom); } if (!string.IsNullOrEmpty(raSoc)) { sql += " and razonSocial = @raSoc"; cmd.Parameters.AddWithValue("@raSoc", raSoc); } if (cuit.HasValue) { sql += " and CUIT = @cuit"; cmd.Parameters.AddWithValue("@cuit", cuit); } if (fdesde.HasValue) { sql += " and fechaNecesidad >= @fdesde"; cmd.Parameters.AddWithValue("@fdesde", fdesde.Value); } if (fhasta.HasValue) { sql += " and fechaNecesidad <= @fhasta"; cmd.Parameters.AddWithValue("@fhasta", fhasta.Value); } try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Pedido p; Estado e; Persona c; TipoDocumento t; while (dr.Read()) { c = new Persona(); t = new TipoDocumento(); t.IDTipoDoc = Convert.ToInt32(dr["idTipoDoc"]); c.RazonSocial = dr["razonSocial"].ToString(); c.Nombre = dr["nombre"].ToString(); c.Apellido = dr["apellido"].ToString(); c.cuil = dr["CUIT"].ToString(); c.NroDoc = Convert.ToInt32(dr["nroDocumento"]); c.TipoDoc = t; e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["estado"].ToString(); p = new Pedido(); p.idPedido = Convert.ToInt32(dr["idPedido"]); p.fechaNecesidad = Convert.ToDateTime(dr["fechaNecesidad"]); p.fechaPedido = Convert.ToDateTime(dr["fechaPedido"]); p.montoTotal = Convert.ToDouble(dr["total"]); p.nroPedido = Convert.ToInt32(dr["nroPedido"]); p.dirEntraga = dr["direccion"].ToString(); p.estado = e; p.cliente = c; pedidos.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(pedidos); }
public static int obtenerIdPlan(DateTime fecha) { Acceso ac = new Acceso(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); int idPlan = 0; string sql = "SELECT idPlanProduccion"; sql += " FROM PlanMaestroProduccion"; sql += " WHERE (fechaInicio <= @fecha) AND (fechaFin >= @fecha)"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@fecha", fecha); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { idPlan = Convert.ToInt32(dr["idPlanProduccion"]); } } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return idPlan; }
public async Task <ActionResult <UsuariaDto> > PostLogin(UsuariaDto usuariaBody) { UsuariaDto usuariaDto = new UsuariaDto(); try { usuariaDto = Discogs.GetUsuaria(usuariaBody.Username); // Consulta si la usuaria existe en base de datos. Usuaria usuaria = UsuariaExists(usuariaBody.Username); // Si la usuaria existe y no está habilitada, aborta la operación if (usuaria != null && !usuaria.EsHabilitada) { // TODO Informar que no está habilitada return(BadRequest("La usuaria con la que intenta acceder no tiene el acceso permitido")); } try { // Si la usuaria no existe, la crea if (usuaria == null) { usuaria = new Usuaria { DiscogsUsername = usuariaBody.Username, EsHabilitada = true }; _context.Usuaria.Add(usuaria); await _context.SaveChangesAsync(); } } catch (DbUpdateConcurrencyException) { if (UsuariaExists(usuariaBody.Username) == null) { return(NotFound()); } else { throw; } } try { // Acto seguido, haya creado una nueva usuaria o haya entrado con una existente, vincula un nuevo acceso. Acceso acceso = new Acceso { Usuaria = usuaria, Fecha = DateTime.Now }; _context.Acceso.Add(acceso); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { throw; } } catch (Exception e) { throw e; } return(usuariaDto); }
public static Boolean verificarExistenciaPlanParaPeriodo(DateTime fechaInicio, DateTime fechaFin) { Acceso ac = new Acceso(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); Boolean resul=false; string sql = "SELECT idPlanProduccion"; sql += " FROM PlanMaestroProduccion"; sql += " WHERE (fechaInicio = @fechaInicio) AND (fechaFin = @fechaFin)"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@fechaInicio",fechaInicio); cmd.Parameters.AddWithValue("@fechaFin",fechaFin); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); resul = dr.HasRows; } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return resul; }
/// <summary> /// Guarda los datos en este objeto a la base de datos /// </summary> private bool guardarDatos() { if (nombre.Length == 0) { return(false); } if (nombreCorto.Length == 0) { nombreCorto = nombre; if (nombreCorto.Length > 20) { nombreCorto = nombreCorto.Substring(0, 20); } } if (nombreURL.Length == 0) { nombreURL = nombreCorto; nombreURL = Cadenas.quitaEspeciales(nombreURL); nombreURL = Cadenas.quitaEspacios(nombreURL); if (nombreURL.Length > 10) { nombreURL = nombreURL.Substring(0, 10); } } Institucion temp = obtenerInstitucionConNombreURL(nombreURL); if (!(temp == null || temp.clave == clave)) { int counter = 0; int caracters = 1; int nextIncrement = 10; while (true) { if (nombreURL.Length > (10 - caracters)) { nombreURL = nombreURL.Substring(0, 10 - caracters); } if (obtenerInstitucionConNombreURL(nombreURL + counter.ToString()) == null) { break; } counter++; if (counter == nextIncrement) { caracters++; nextIncrement *= 10; } } nombreURL += counter.ToString(); } temp = obtenerInstitucionConNombreCorto(nombreCorto); if (!(temp == null || temp.clave == clave)) { int counter = 0; int caracters = 1; int nextIncrement = 10; while (true) { if (nombreCorto.Length > (20 - caracters)) { nombreCorto = nombreCorto.Substring(0, 20 - caracters); } if (obtenerInstitucionConNombreCorto(nombreCorto + counter.ToString()) == null) { break; } counter++; if (counter == nextIncrement) { caracters++; nextIncrement *= 10; } } nombreCorto += counter.ToString(); } string hash = Cadenas.quitaEspeciales(nombre); hash = Cadenas.quitaEspacios(hash); Acceso db = new Acceso(); StringBuilder query = new StringBuilder(); query.Append(" update institucion set nombre = "); query.Append(Cadenas.comillas(nombre)); query.Append(", nombrecorto = "); query.Append(Cadenas.comillas(nombreCorto)); query.Append(", nombreurl = "); query.Append(Cadenas.comillas(nombreURL)); query.Append(", url = "); query.Append(Cadenas.comillas(pagina)); query.Append(", nombrehash = HASHBYTES(\'SHA1\', "); query.Append(Cadenas.comillas(hash)); query.Append("), primaria = "); query.Append(primaria ? "1" : "0"); query.Append(", secundaria = "); query.Append(secundaria ? "1" : "0"); query.Append(", preparatoria = "); query.Append(preparatoria ? "1" : "0"); query.Append(", universidad = "); query.Append(universidad ? "1" : "0"); query.Append(", publica = "); query.Append(publica ? "1" : "0"); query.Append(" where clave = "); query.Append(clave); return(!db.EjecutarQuery(query.ToString()).error); }
public static int getUltimoNumeroFactura() { Acceso ac = new Acceso(); int nroFactura; string sql = "SELECT MAX(idFactura) AS cod FROM Factura"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { dr.Read(); nroFactura = Convert.ToInt32(dr["cod"]); } else { nroFactura = 1; } } catch (InvalidCastException ex) { return 1; } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return ++nroFactura; }
private void btnGuardar_Click(object sender, EventArgs e) { if (Validaciones.ValidadPassword(tbPass.Text, tbRePass.Text)) { string nombre = tbNombre.Text.Trim(); string apellido = tbApellido.Text.Trim(); int dni = Convert.ToInt32(tbDNI.Text); int cargo = cbCargo.SelectedIndex + 1; string calle = tbCalle.Text; string altura = tbAltura.Text; string telefono = tbTelefono.Text.Trim(); DateTime fechaIngreso = dtpIngreso.Value; // Doy de alta una persona Persona persona = new Persona(nombre, apellido, dni, cargo, calle, altura, telefono, fechaIngreso); // Si ocurre un error... if (persona.Error) { // Imprimo todos los mensajes de error foreach (string msj in persona.Mensajes) { Funciones.mError(this, msj); } } else { int id; // Guardo el id de la persona que doy de alta para relacioarlo con el acceso id = persona.Save(); // Doy de alta el acceso utilizando el id de la persona que di de alta Acceso acc = new Acceso(id, tbUsuario.Text, tbPass.Text); // Si ocurre un error... if (acc.Error) { // Imprimo todos los mensajes de error... foreach (string msj in acc.Mensajes) { Funciones.mError(this, msj); } // ... y doy de baja la persona dada de alta if (persona.Eliminar(id)) { Funciones.mError(this, "Error al eliminar el registro persona"); } } else { try { acc.Save(); Funciones.mOk(this, "Registro guardado correctamente"); tbNombre.Text = ""; tbApellido.Text = ""; tbDNI.Text = ""; cbCargo.SelectedIndex = 0; tbApellido.Text = ""; tbCalle.Text = ""; tbAltura.Text = ""; tbTelefono.Text = ""; tbUsuario.Text = ""; tbPass.Text = ""; tbRePass.Text = ""; } catch (Exception ex) { Funciones.mError(this, "Error al guardar acceso: " + ex.Message); } } } dgUsuario.DataSource = Persona.getAll(); } else { Funciones.mError(this, "Las contraseñas no coinciden"); } }
public static void UpdateEstado(int idFactura, int idEstado, DateTime fechaPago) { Acceso ac = new Acceso(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("UPDATE [Luiggi].[dbo].[Factura] SET [idEstado] = @idEstado, [fechaPago] = @fechaPago WHERE idFactura = @idFctura", conexion); cmd.Parameters.AddWithValue("@idFctura", idFactura); cmd.Parameters.AddWithValue("@idEstado", idEstado); cmd.Parameters.AddWithValue("@fechaPago", fechaPago); try { conexion.Open(); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (ArgumentException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static Boolean GetFacturasPagadas(int idPedido) { Acceso ac = new Acceso(); List<Factura> facturas = new List<Factura>(); string sql = "SELECT * from CONSULTAR_FACTURA where idPedido=@pedido and idEstado=28"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@pedido", idPedido); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); return dr.Read(); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static List <Pedido> GetAll() { Acceso ac = new Acceso(); List <Pedido> pedidos = new List <Pedido>(); string sql = "SELECT * from CONSULTA_PEDIDOS ORDER BY fechaNecesidad DESC"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Pedido p; Estado e; Persona c; TipoDocumento t; while (dr.Read()) { c = new Persona(); t = new TipoDocumento(); t.IDTipoDoc = Convert.ToInt32(dr["idTipoDoc"]); c.RazonSocial = dr["razonSocial"].ToString(); c.Nombre = dr["nombre"].ToString(); c.Apellido = dr["apellido"].ToString(); c.cuil = dr["CUIT"].ToString(); c.NroDoc = Convert.ToInt32(dr["nroDocumento"]); c.TipoDoc = t; e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["estado"].ToString(); p = new Pedido(); p.idPedido = Convert.ToInt32(dr["idPedido"]); p.fechaNecesidad = Convert.ToDateTime(dr ["fechaNecesidad"]); p.fechaPedido = Convert.ToDateTime(dr["fechaPedido"]); p.montoTotal = Convert.ToDouble(dr["total"]); p.nroPedido = Convert.ToInt32(dr["nroPedido"]); p.dirEntraga = dr["direccion"].ToString(); p.estado = e; p.cliente = c; pedidos.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(pedidos); }
public static int InsertFacturaDirecta(Factura fac) { Acceso ac = new Acceso(); SqlTransaction tran = null; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("sp_Insertar_factura", conexion); cmd.Parameters.AddWithValue("@fecha", fac.fechaCreacion); cmd.Parameters.AddWithValue("@idEstado", fac.estado.idEstado); cmd.Parameters.AddWithValue("@idCliente", fac.cliente.idPersona); //cmd.Parameters.AddWithValue("@idPedido", fac.pedido.idPedido); cmd.Parameters.AddWithValue("@importe", fac.importeTotal); //cmd.Parameters.AddWithValue("@fechaPago", fac.fechaPago ); cmd.Parameters.AddWithValue("@tipoFactura", fac.tipoFactura); //cmd.Parameters.AddWithValue("@numeroFactura", fac.numeroFactura); cmd.Parameters.AddWithValue("@totalIVA", fac.totalIVA); //cmd.Parameters.AddWithValue("@montoSinImpuesto", fac.montoSinImpuesto); try { conexion.Open(); tran = conexion.BeginTransaction(); cmd.CommandType = CommandType.StoredProcedure; cmd.Transaction = tran; cmd.ExecuteNonQuery(); SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran); fac.idFactura = Convert.ToInt32((cmdIdentity.ExecuteScalar())); foreach (DetalleFactura detfac in fac.detalleFactura) { //detPed.pedido.idPedido = ped.idPedido; DetalleFacturaDAO.InsertDetalleFacturaDirecta(detfac, conexion, tran, fac.idFactura); ProductoDAO.UpdateStockActualYDisponible(detfac, conexion, tran); } tran.Commit(); return fac.idFactura; } catch (ArgumentException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException(ex.Message); } catch (SqlException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
//Metodo para Modificar la informacion en la tabla RegistroPersonas public static int ModificarPersona(RegistroPersonas Regperson) { try { ArrayList lstparametros = new ArrayList(); //se define lista de valores SQLSentencia sentencia = new SQLSentencia(); sentencia.PETICION = @"UPDATE RegistroPersonas SET nombre= @nombre, apellido= @apellido, edad= @edad, correo= @correo, tetefono= @tetefono, pais= @pais, ciudad= @ciudad, detalles= @detalles WHERE identificacion=@identificacion"; //Defino parametros y sus caracteristicas SqlParameter nombre = new SqlParameter(); nombre.SqlDbType = System.Data.SqlDbType.NVarChar; nombre.ParameterName = "@nombre"; nombre.Value = Regperson.nombre; SqlParameter apellido = new SqlParameter(); apellido.SqlDbType = System.Data.SqlDbType.NVarChar; apellido.ParameterName = "@apellido"; apellido.Value = Regperson.apellido; SqlParameter edad = new SqlParameter(); edad.SqlDbType = System.Data.SqlDbType.Int; edad.ParameterName = "@edad"; edad.Value = Regperson.edad; SqlParameter correo = new SqlParameter(); correo.SqlDbType = System.Data.SqlDbType.NVarChar; correo.ParameterName = "@correo"; correo.Value = Regperson.correo; SqlParameter tetefono = new SqlParameter(); tetefono.SqlDbType = System.Data.SqlDbType.Int; tetefono.ParameterName = "@tetefono"; tetefono.Value = Regperson.tetefono; SqlParameter pais = new SqlParameter(); pais.SqlDbType = System.Data.SqlDbType.NVarChar; pais.ParameterName = "@pais"; pais.Value = Regperson.pais; SqlParameter ciudad = new SqlParameter(); ciudad.SqlDbType = System.Data.SqlDbType.NVarChar; ciudad.ParameterName = "@ciudad"; ciudad.Value = Regperson.ciudad; SqlParameter detalles = new SqlParameter(); detalles.SqlDbType = System.Data.SqlDbType.NVarChar; detalles.ParameterName = "@detalles"; detalles.Value = Regperson.detalles; SqlParameter identificacion = new SqlParameter(); identificacion.SqlDbType = System.Data.SqlDbType.Int; identificacion.ParameterName = "@identificacion"; identificacion.Value = Regperson.identificacion; //Agregando en la lista de valores lstparametros.Add(nombre); lstparametros.Add(apellido); lstparametros.Add(edad); lstparametros.Add(correo); lstparametros.Add(tetefono); lstparametros.Add(pais); lstparametros.Add(ciudad); lstparametros.Add(detalles); lstparametros.Add(identificacion); //Asigna al atributo de la clase SQLSentencia la lista de valores sentencia.LSTPARAMETROS = lstparametros; Acceso objconexion = new Acceso(); return(objconexion.Ejecutar_TSQL(sentencia)); } catch (Exception ex) { throw ex; } }
public static DataTable GetAllEmitir(int idFactura) { Acceso ac = new Acceso(); DataTable factura = new DataTable(); string sql = "SELECT EMITIR_FACTURA.* FROM EMITIR_FACTURA where idFactura=@idFactura "; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@idFactura", idFactura); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; factura.Load(cmd.ExecuteReader()); } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return factura; }
/// <summary> /// Guarda los datos del objeto en la base de datos /// </summary> /// <param name="clave">La nueva clave para el objeto</param> /// <returns>Si se guardó satisfactoriamente el objeto</returns> /// <remarks>Crea un nuevo objeto instutucion si la institucion /// referenciada no existe</remarks> public bool guardarDatos(string clave = null) { if (clave == null) { clave = numero; } if (claveEscuela == 0) { if (!String.IsNullOrEmpty(nombreEscuela)) { Institucion i = Institucion.obtenerInstitucionConNombreCorto(nombreEscuela); if (i == null) { i = new Institucion(); i.nombre = nombreEscuela; if (!i.nuevaInstitucion()) { return(false); } } claveEscuela = i.clave; } } Acceso db = new Acceso(); StringBuilder query = new StringBuilder(); query.Append(" update olimpiada set numero = "); query.Append(Cadenas.comillas(numero)); query.Append(", clase = "); query.Append(Cadenas.comillas(tipoOlimpiada.ToString().ToLower())); query.Append(", año = "); query.Append(año); query.Append(", estado = "); query.Append(Cadenas.comillas(claveEstado)); query.Append(", pais = "); query.Append(Cadenas.comillas(pais)); query.Append(", ciudad = "); query.Append(Cadenas.comillas(ciudad)); query.Append(", inicio = "); query.Append(Cadenas.comillas(Fechas.dateToString(inicio))); query.Append(", fin = "); query.Append(Cadenas.comillas(Fechas.dateToString(fin))); query.Append(", escuela = "); query.Append(claveEscuela); query.Append(", video = "); query.Append(Cadenas.comillas(video)); query.Append(", poster = "); query.Append(Cadenas.comillas(poster)); query.Append(", estados = "); query.Append(estados); query.Append(", participantes = "); query.Append(participantes); query.Append(", datospublicos = "); query.Append(datosPublicos ? 1 : 0); query.Append(", relacion = "); query.Append(Cadenas.comillas(relacion)); query.Append(", reporte = "); query.Append(Cadenas.comillas(reporte)); query.Append(", problemasDia1 = "); query.Append(problemasDia1); query.Append(", problemasDia2 = "); query.Append(problemasDia2); query.Append(", mostrarResultadosPorDia = "); query.Append(mostrarResultadosPorDia ? 1 : 0); query.Append(", mostrarResultadosPorProblema = "); query.Append(mostrarResultadosPorProblema ? 1 : 0); query.Append(", mostrarResultadosTotales = "); query.Append(mostrarResultadosTotales ? 1 : 0); query.Append(", puntosDesconocidos = "); query.Append(puntosDesconocidos ? 1 : 0); query.Append(", alsoOmips = "); query.Append(alsoOmips ? 1 : 0); query.Append(", alsoOmipsOnline = "); query.Append(alsoOmipsOnline ? 1 : 0); query.Append(", noMedallistasConocidos = "); query.Append(noMedallistasConocidos ? 1 : 0); query.Append(", puntosDetallados = "); query.Append(puntosDetallados ? 1 : 0); query.Append(", registroActivo = "); query.Append(registroActivo ? 1 : 0); query.Append(", diplomasOnline = "); query.Append(diplomasOnline ? 1 : 0); query.Append(", esOnline = "); query.Append(esOnline ? 1 : 0); query.Append(", registroSedes = "); query.Append(registroSedes ? 1 : 0); query.Append(", ordenarPorPuntos = "); query.Append(ordenarPorPuntos ? 1 : 0); query.Append(" where numero = "); query.Append(Cadenas.comillas(clave)); query.Append(" and clase = "); query.Append(Cadenas.comillas(tipoOlimpiada.ToString().ToLower())); if (db.EjecutarQuery(query.ToString()).error) { return(false); } // Si esta omi es tambien OMIPS, creamos tambien los objetos if (tipoOlimpiada == TipoOlimpiada.OMI && this.alsoOmips) { this.actualizaOMIPS(TipoOlimpiada.OMIP, clave); this.actualizaOMIPS(TipoOlimpiada.OMIS, clave); } // Si esta omi es también OMIPS online, creamos también los objetos if (tipoOlimpiada == TipoOlimpiada.OMI && this.alsoOmipsOnline) { this.actualizaOMIPS(TipoOlimpiada.OMIPO, clave); this.actualizaOMIPS(TipoOlimpiada.OMISO, clave); } // Borramos la referencia en la aplicacion para que el siguiente query recargue las olimpiadas resetOMIs(this.tipoOlimpiada); return(true); }
public static List <Maquinaria> GetAll() { Acceso ac = new Acceso(); List <Maquinaria> maquinarias = new List <Maquinaria>(); string sql = "SELECT * FROM CONSULTAR_MAQUINARIA order by tipoMaquinaria asc, nombre asc"; //string sql = "SELECT Maquinaria.idMaquinaria, Maquinaria.nombre, Maquinaria.descripcion, Maquinaria.idTipo, Maquinaria.fechaAlta, "; //sql += " Maquinaria.idEstado, TipoMaquinaria.nombre AS tipoMaquinaria, Estado.nombre AS estado FROM Estado INNER JOIN Maquinaria ON Estado.idEstado = Maquinaria.idEstado INNER JOIN"; //sql+= " TipoMaquinaria ON Maquinaria.idTipo = TipoMaquinaria.idTipoMaquinaria"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Maquinaria m; Estado e; TipoMaquinaria tm; while (dr.Read()) { m = new Maquinaria(); e = new Estado(); tm = new TipoMaquinaria(); tm.idTipoMaquinaria = Convert.ToInt32(dr["idTipo"]); tm.Nombre = dr["tipoMaquinaria"].ToString(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["estado"].ToString(); m.idMaquinaria = Convert.ToInt32(dr["idMaquinaria"]); m.Nombre = dr["nombre"].ToString(); m.descripcion = dr["descripcion"].ToString(); m.fechaAlta = Convert.ToDateTime(dr["fechaAlta"]); m.estado = e; m.tipoMaquinaria = tm; maquinarias.Add(m); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD:" + ex.Message); } finally { conexion.Close(); } return(maquinarias); }
public static List <DetallePedido> GetDetalleXPedido(int ped) { Acceso ac = new Acceso(); List <DetallePedido> detalles = new List <DetallePedido>(); string sql = "SELECT * from CONSULTA_DETALLE_PEDIDO where idPedido = @ped"; SqlCommand cmd = new SqlCommand(); cmd.Parameters.AddWithValue("@ped", ped); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); DetallePedido d; Producto p; UnidadMedida u; Estado e; while (dr.Read()) { e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["UnidadMedida"].ToString(); p = new Producto(); p.CODProducto = Convert.ToInt32(dr["codProducto"]); p.Nombre = dr["nombre"].ToString(); p.Unidad = u; p.idProducto = Convert.ToInt16(dr["idProducto"]); d = new DetallePedido(); d.cantidad = Convert.ToDouble(dr["cantidad"]); d.producto = p; d.precio = Convert.ToDouble(dr["precio"]); d.subTotal = Convert.ToDouble(dr["subTotal"]); d.reservado = Convert.ToBoolean(dr["reservado"]); d.Estado = e; detalles.Add(d); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(detalles); }
public static List <DetallePedido> getCantidadPedidaxProducto(DateTime fecha) { Acceso ac = new Acceso(); List <DetallePedido> detalles = new List <DetallePedido>(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("sp_buscar_cantidad_pedido_fecha"); cmd.Parameters.AddWithValue("@fecha", fecha); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandType = CommandType.StoredProcedure; SqlDataReader dr = cmd.ExecuteReader(); DetallePedido d; Producto p; UnidadMedida u; while (dr.Read()) { u = new UnidadMedida(); u.Nombre = dr["Unidad"].ToString(); p = new Producto(); p.Nombre = dr["nombre"].ToString(); p.Unidad = u; p.idProducto = Convert.ToInt16(dr["idProducto"]); d = new DetallePedido(); d.cantidad = Convert.ToInt32(dr["cantidad"]); d.producto = p; detalles.Add(d); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(detalles); }
public int SaveAcceso(Acceso aAcceso) { return(dbConnection.Insert(aAcceso)); }
public static List<PlanMaestroProduccion> GetByFiltros(int est, DateTime? fInicioDesde, DateTime? fFinHasta) { Acceso ac = new Acceso(); List<PlanMaestroProduccion> planes = new List<PlanMaestroProduccion>(); string sql = "SELECT * from CONSULTA_PLAN_PRODUCCION where 1=1"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); if (est != -1 && est != 0) { sql += " and idEstado = @est"; cmd.Parameters.AddWithValue("@est", est); } if (fInicioDesde.HasValue) { sql += " and fechaInicio >= @fInicioDesde"; cmd.Parameters.AddWithValue("@fInicioDesde", fInicioDesde.Value); } //if (fInicioHasta.HasValue) //{ // sql += " and fechaInicio <= @fInicioHasta"; // cmd.Parameters.AddWithValue("@fInicioHasta", fInicioHasta.Value); //} //if (fFinDesde.HasValue) //{ // sql += " and fechaFin >= @fFinDesde"; // cmd.Parameters.AddWithValue("@fFinDesde", fFinDesde.Value); //} if (fFinHasta.HasValue) { sql += " and fechaFin <= @fFinHasta"; cmd.Parameters.AddWithValue("@fFinHasta", fFinHasta.Value); } try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); PlanMaestroProduccion p; Estado e; while (dr.Read()) { p = new PlanMaestroProduccion(); e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["nombre"].ToString(); p.IDPlanProduccion = Convert.ToInt32(dr["idPlanProduccion"]); p.fechaCreacion = Convert.ToDateTime(dr["fechaCreacion"]); p.fechaInicio = Convert.ToDateTime(dr["fechaInicio"]); p.fechaFin = Convert.ToDateTime(dr["fechaFin"]); p.observaciones = dr["observaciones"].ToString(); p.fechaCancelacion = Convert.ToDateTime(dr["fechaCancelacion"]); p.motivoCancelacion = dr["motivoCancelacion"].ToString(); p.estado = e; planes.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return planes; }
public static void Update(Pedido ped, List <DetallePedido> tablaAModificar, List <Producto> productosConPocaMP) { Acceso ac = new Acceso(); SqlTransaction tran = null; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("UPDATE [Luiggi].[dbo].[Pedido] SET [fechaNecesidad] = @fechaNecesidad, [direccion] = @direccion, [idEstado] = @idEstado WHERE idPedido = @idPedido", conexion); cmd.Parameters.AddWithValue("@idPedido", ped.idPedido); cmd.Parameters.AddWithValue("@fechaNecesidad", ped.fechaNecesidad); cmd.Parameters.AddWithValue("@direccion", ped.dirEntraga); cmd.Parameters.AddWithValue("@idEstado", ped.estado.idEstado); try { conexion.Open(); tran = conexion.BeginTransaction(); cmd.CommandType = CommandType.Text; cmd.Transaction = tran; cmd.ExecuteNonQuery(); //SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran); //ped.idPedido = Convert.ToInt32((cmdIdentity.ExecuteScalar())); foreach (DetallePedido detP in tablaAModificar) { if (detP.reservado == true) { ProductoDAO.UpdateStockReservadoYDisponibleEliminado(detP.producto.idProducto, detP.cantidad, conexion, tran); } else { renovarStock(detP, conexion, tran, ped, productosConPocaMP); } } DetallePedidoDAO.Delete(ped.idPedido, conexion, tran); foreach (DetallePedido detPed in ped.detallePedido) { //detPed.pedido.idPedido = ped.idPedido; DetallePedidoDAO.Insert(detPed, conexion, tran, ped.idPedido); if (detPed.reservado == true) { ProductoDAO.UpdateStockReservadoYDisponible(detPed, conexion, tran); } if (detPed.reservado == false) { actualizarStock(detPed, conexion, tran, ped, productosConPocaMP); } } tran.Commit(); } catch (ArgumentException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException(ex.Message); } catch (SqlException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static void Insert(PlanMaestroProduccion plan, List<Producto> productosConPocaMP) { Acceso ac = new Acceso(); SqlTransaction tran = null; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("sp_PlanProduccion_insert", conexion); cmd.Parameters.AddWithValue("@fechaCreacion", plan.fechaCreacion ); cmd.Parameters.AddWithValue("@fechaInicio", plan.fechaInicio ); cmd.Parameters.AddWithValue("@fechaFin", plan.fechaFin ); cmd.Parameters.AddWithValue("@idEstado", plan.estado.idEstado ); cmd.Parameters.AddWithValue("@observaciones", plan.observaciones ); try { conexion.Open(); tran = conexion.BeginTransaction(); cmd.CommandType = CommandType.StoredProcedure; cmd.Transaction = tran; cmd.ExecuteNonQuery(); SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran); plan.IDPlanProduccion = Convert.ToInt32((cmdIdentity.ExecuteScalar())); foreach (DetallePlanProduccion detPlan in plan.detallePlan) { //detPed.pedido.idPedido = ped.idPedido; DetallePlanProduccionDAO.Insert(detPlan, conexion, tran, plan.IDPlanProduccion); actualizarStock(detPlan, conexion, tran, plan,productosConPocaMP); } tran.Commit(); } catch (ArgumentException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static List <Producto> GetAll() { Acceso ac = new Acceso(); List <Producto> productos = new List <Producto>(); string sql = "SELECT codProducto, nombre, descripcion, precio, categoria, unidad, stockDisponible, stockDeRiesgo, stockReservado, stockActual, idCategoria, descCat, idUnidad, descUni, foto, idTipoMaquinaria, tiempoProduccion, tipoMaquinaria, precioMayorista, idUnidadTiempo, cantidadProductos from CONSULTA_PRODUCTOS order by categoria asc, nombre asc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Producto p; Categoria c; UnidadMedida u; TipoMaquinaria t; UnidadMedida ut; while (dr.Read()) { ut = new UnidadMedida(); ut.IDUnidad = Convert.ToInt32(dr["idUnidadTiempo"]); t = new TipoMaquinaria(); t.idTipoMaquinaria = Convert.ToInt32(dr["idTipoMaquinaria"]); t.Nombre = dr["tipoMaquinaria"].ToString(); u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["unidad"].ToString(); u.Descripcion = dr["descUni"].ToString(); c = new Categoria(); c.IDCategoria = Convert.ToInt32(dr["idCategoria"]); c.Nombre = dr["categoria"].ToString(); c.Descripcion = dr["descCat"].ToString(); p = new Producto(); p.CODProducto = Convert.ToInt32(dr["codProducto"]); p.Nombre = dr["nombre"].ToString(); p.Categoria = c; p.Descripcion = dr["descripcion"].ToString(); p.Unidad = u; p.StockRiesgo = Convert.ToInt32(dr["stockDeRiesgo"]); p.StockDisponible = Convert.ToInt32(dr["stockDisponible"]); p.StockActual = Convert.ToInt32(dr["stockActual"]); p.StockReservado = Convert.ToInt32(dr["stockReservado"]); p.precio = Convert.ToDouble(dr["precio"]); p.foto = (Byte [])(dr["foto"]); p.tiempoProduccion = Convert.ToDouble(dr["tiempoProduccion"]); p.precioMayorista = Convert.ToDouble(dr["precioMayorista"]); p.UnidadTiempo = ut; p.tipoMaquina = t; if (dr["cantidadProductos"] != DBNull.Value) { p.cantidadProductos = Convert.ToDouble(dr["cantidadProductos"]); } else { p.cantidadProductos = 0; } productos.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(productos); }
public static void Update(PlanMaestroProduccion ped, List<DetallePlanProduccion> desreservar,List<Producto> productosConPocaMP) { Acceso ac = new Acceso(); SqlTransaction tran = null; SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); SqlCommand cmd = new SqlCommand("UPDATE [Luiggi].[dbo].[PlanMaestroProduccion] SET [fechaInicio] = @fechaInicio, [fechaFin] = @fechaFin, [observaciones] = @observaciones WHERE idPlanProduccion = @idPlanProduccion", conexion); cmd.Parameters.AddWithValue("@fechaInicio", ped.fechaInicio ); cmd.Parameters.AddWithValue("@fechaFin", ped.fechaFin ); cmd.Parameters.AddWithValue("@observaciones", ped.observaciones ); cmd.Parameters.AddWithValue("@idPlanProduccion", ped.IDPlanProduccion); try { conexion.Open(); tran = conexion.BeginTransaction(); cmd.CommandType = CommandType.Text; cmd.Transaction = tran; cmd.ExecuteNonQuery(); //SqlCommand cmdIdentity = new SqlCommand("select @@Identity", conexion, tran); //ped.idPedido = Convert.ToInt32((cmdIdentity.ExecuteScalar())); DetallePlanProduccionDAO.Delete(ped.IDPlanProduccion,conexion,tran ); foreach(DetallePlanProduccion det in desreservar) { det.cantidadPedido = det.cantidadPedido * -1; det.cantidadPLan = det.cantidadPLan * -1; actualizarStock(det, conexion, tran, ped,productosConPocaMP); } foreach (DetallePlanProduccion detPed in ped.detallePlan ) { //detPed.pedido.idPedido = ped.idPedido; DetallePlanProduccionDAO.Insert(detPed, conexion, tran, ped.IDPlanProduccion); actualizarStock(detPed, conexion, tran, ped, productosConPocaMP); } tran.Commit(); } catch (ArgumentException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException(ex.Message); } catch (SqlException ex) { if (conexion.State == ConnectionState.Open) { tran.Rollback(); } throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } }
public static List <Producto> GetPeductosMPeInsumos() { Acceso ac = new Acceso(); List <Producto> productos = new List <Producto>(); string sql = "SELECT DISTINCT codProducto, nombre, descripcion, precio, categoria, unidad, stockDisponible, stockDeRiesgo, stockReservado, stockActual, idCategoria, descCat, idUnidad, descUni, idProducto, foto from CONSULTA_PRODUCTOS where (idCategoria = 3 or idCategoria = 4)"; sql += " and not Upper(nombre)='AGUA' order by nombre asc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Producto p; Categoria c; UnidadMedida u; while (dr.Read()) { u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["unidad"].ToString(); u.Descripcion = dr["descUni"].ToString(); c = new Categoria(); c.IDCategoria = Convert.ToInt32(dr["idCategoria"]); c.Nombre = dr["categoria"].ToString(); c.Descripcion = dr["descCat"].ToString(); p = new Producto(); p.CODProducto = Convert.ToInt32(dr["codProducto"]); p.Nombre = dr["nombre"].ToString(); p.Categoria = c; p.Descripcion = dr["descripcion"].ToString(); p.Unidad = u; p.StockRiesgo = Convert.ToInt32(dr["stockDeRiesgo"]); p.StockDisponible = Convert.ToInt32(dr["stockDisponible"]); p.StockActual = Convert.ToInt32(dr["stockActual"]); p.StockReservado = Convert.ToInt32(dr["stockReservado"]); p.precio = Convert.ToDouble(dr["precio"]); p.idProducto = Convert.ToInt32(dr["idProducto"]); // p.foto = (Byte[])(dr["foto"]); productos.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(productos); }
public static List<PlanMaestroProduccion> GetAll() { Acceso ac = new Acceso(); List<PlanMaestroProduccion> planes = new List<PlanMaestroProduccion>(); string sql = "SELECT * from CONSULTA_PLAN_PRODUCCION order by fechainicio desc"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); PlanMaestroProduccion p; Estado e; while (dr.Read()) { p = new PlanMaestroProduccion(); e = new Estado(); e.idEstado = Convert.ToInt32(dr["idEstado"]); e.Nombre = dr["nombre"].ToString(); p.IDPlanProduccion = Convert.ToInt32(dr["idPlanProduccion"]); p.fechaCreacion = Convert.ToDateTime(dr["fechaCreacion"]); p.fechaInicio = Convert.ToDateTime(dr["fechaInicio"]); p.fechaFin = Convert.ToDateTime(dr["fechaFin"]); p.observaciones = dr["observaciones"].ToString(); p.fechaCancelacion = Convert.ToDateTime(dr["fechaCancelacion"]); p.motivoCancelacion = dr["motivoCancelacion"].ToString(); p.estado = e; planes.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return planes; }
public static List <Producto> GetByFiltros(int cat, int uni, double?desde, double?hasta) { Acceso ac = new Acceso(); List <Producto> productos = new List <Producto>(); string sql = "SELECT codProducto, nombre, descripcion, precio, categoria, unidad, stockDeRiesgo, idCategoria, descCat, idUnidad, descUni, foto, idTipoMaquinaria, tiempoProduccion, tipoMaquinaria, precioMayorista, idUnidadTiempo, cantidadProductos from CONSULTA_PRODUCTOS where 1=1"; SqlCommand cmd = new SqlCommand(); SqlConnection conexion = new SqlConnection(ac.getCadenaConexion()); if (cat != -1 && cat != 0) { sql += " and idCategoria = @cat"; cmd.Parameters.AddWithValue("@cat", cat); } if (uni != -1 && uni != 0) { sql += " and idUnidad = @uni"; cmd.Parameters.AddWithValue("@uni", uni); } if (desde.HasValue) { sql += " and precio >= @desde"; cmd.Parameters.AddWithValue("@desde", desde); } if (hasta.HasValue) { sql += " and precio <= @hasta"; cmd.Parameters.AddWithValue("@hasta", hasta); } try { conexion.Open(); cmd.Connection = conexion; cmd.CommandText = sql; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); Producto p; Categoria c; UnidadMedida u; TipoMaquinaria t; UnidadMedida ut; while (dr.Read()) { ut = new UnidadMedida(); ut.IDUnidad = Convert.ToInt32(dr["idUnidadTiempo"]); t = new TipoMaquinaria(); t.idTipoMaquinaria = Convert.ToInt32(dr["idTipoMaquinaria"]); t.Nombre = dr["tipoMaquinaria"].ToString(); u = new UnidadMedida(); u.IDUnidad = Convert.ToInt32(dr["idUnidad"]); u.Nombre = dr["unidad"].ToString(); u.Descripcion = dr["descUni"].ToString(); c = new Categoria(); c.IDCategoria = Convert.ToInt32(dr["idCategoria"]); c.Nombre = dr["categoria"].ToString(); c.Descripcion = dr["descCat"].ToString(); p = new Producto(); p.CODProducto = Convert.ToInt32(dr["codProducto"]); p.Nombre = dr["nombre"].ToString(); p.Categoria = c; p.Descripcion = dr["descripcion"].ToString(); p.Unidad = u; p.StockRiesgo = Convert.ToInt32(dr["stockDeRiesgo"]); p.precio = Convert.ToDouble(dr["precio"]); p.foto = (Byte[])(dr["foto"]); p.tiempoProduccion = Convert.ToDouble(dr["tiempoProduccion"]); p.precioMayorista = Convert.ToDouble(dr["precioMayorista"]); p.UnidadTiempo = ut; p.tipoMaquina = t; if (dr["cantidadProductos"] != DBNull.Value) { p.cantidadProductos = Convert.ToDouble(dr["cantidadProductos"]); } else { p.cantidadProductos = 0; } productos.Add(p); } } catch (InvalidOperationException ex) { throw new ApplicationException(ex.Message); } catch (SqlException ex) { throw new ApplicationException("Error en BD: " + ex.Message); } finally { conexion.Close(); } return(productos); }