public static TemporadaDAO getInstance() { if (temporadaDao == null) { temporadaDao = new TemporadaDAO(); } return(temporadaDao); }
public List <Modelo> listaModelos(string schema) { List <Modelo> listaModelos = new List <Modelo>(); NpgsqlConnection conexion = null; NpgsqlCommand cmd = null; NpgsqlTransaction tran = null; NpgsqlDataReader dr = null; try { conexion = Conexion.getInstance().ConexionDB(); cmd = new NpgsqlCommand("logueo.spgetmodelos", conexion); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("parm_schema", schema); conexion.Open(); tran = conexion.BeginTransaction(); dr = cmd.ExecuteReader(); while (dr.Read()) { Modelo modelo = new Modelo(); modelo.id = Convert.ToInt32(dr["ID"].ToString()); modelo.codigo = dr["CODIGO"].ToString(); modelo.nombre = dr["DESCRIPCION"].ToString(); modelo.id_proveedor = Convert.ToInt32(dr["IDPROVEEDOR"].ToString()); modelo.id_temporada = Convert.ToInt32(dr["IDTEMPORADA"].ToString()); modelo.fecha = Convert.ToDateTime(dr["FECHA"].ToString()); modelo.id_tipo_producto = Convert.ToInt32(dr["IDTIPOPRODUCTO"].ToString()); modelo.es_activo = Convert.ToBoolean(dr["ESACTIVO"].ToString()); listaModelos.Add(modelo); } dr.Close(); } catch (Exception e) { listaModelos = null; throw (e); } finally { tran.Commit(); conexion.Close(); // proveedor List <Proveedor> listaProveedores = ProveedorDAO.getInstance().listaProveedores(schema); List <Temporada> listaTemporadas = TemporadaDAO.getInstance().listaTemporadas(schema); List <TipoProducto> listaTiposProductos = TipoProductoDAO.getInstance().listaTiposProductos(schema); foreach (Modelo modelo in listaModelos) { foreach (Proveedor proveedor in listaProveedores) { if (modelo.id_proveedor == proveedor.id) { modelo.proveedor = proveedor; break; } } foreach (Temporada temporada in listaTemporadas) { if (modelo.id_temporada == temporada.id) { modelo.temporada = temporada; break; } } foreach (TipoProducto tipoProducto in listaTiposProductos) { if (modelo.id_tipo_producto == tipoProducto.id) { modelo.tipoProducto = tipoProducto; } } } } return(listaModelos); }