|
|
@@ -0,0 +1,71 @@
|
|
|
+from app import create_app
|
|
|
+from models import db, DatosSolaresCiudad, CatalogoPaneles
|
|
|
+
|
|
|
+def seed_database():
|
|
|
+ app = create_app()
|
|
|
+ with app.app_context():
|
|
|
+ print("Iniciando poblado de base de datos...")
|
|
|
+
|
|
|
+ # Opcional: Limpiar tablas existentes si quieres reiniciar de cero
|
|
|
+ # db.drop_all()
|
|
|
+ # db.create_all()
|
|
|
+
|
|
|
+ # Cities (Ecuador)
|
|
|
+ if not DatosSolaresCiudad.query.first():
|
|
|
+ print("Creando ciudades...")
|
|
|
+ cities = [
|
|
|
+ # Sierra
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Quito", provincia="Pichincha", irradiacion_h_promedio=5.1),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Cuenca", provincia="Azuay", irradiacion_h_promedio=4.8),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Loja", provincia="Loja", irradiacion_h_promedio=5.0),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Ambato", provincia="Tungurahua", irradiacion_h_promedio=4.7),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Ibarra", provincia="Imbabura", irradiacion_h_promedio=4.9),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Riobamba", provincia="Chimborazo", irradiacion_h_promedio=5.2),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Tulcán", provincia="Carchi", irradiacion_h_promedio=4.8),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Latacunga", provincia="Cotopaxi", irradiacion_h_promedio=5.2),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Guaranda", provincia="Bolívar", irradiacion_h_promedio=4.9),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Azogues", provincia="Cañar", irradiacion_h_promedio=4.8),
|
|
|
+
|
|
|
+ # Costa
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Guayaquil", provincia="Guayas", irradiacion_h_promedio=4.6),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Manta", provincia="Manabí", irradiacion_h_promedio=5.3),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Portoviejo", provincia="Manabí", irradiacion_h_promedio=5.0),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Esmeraldas", provincia="Esmeraldas", irradiacion_h_promedio=4.5),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Babahoyo", provincia="Los Ríos", irradiacion_h_promedio=4.4),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Machala", provincia="El Oro", irradiacion_h_promedio=4.7),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Santa Elena", provincia="Santa Elena", irradiacion_h_promedio=5.5),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Santo Domingo", provincia="Santo Domingo de los Tsáchilas", irradiacion_h_promedio=4.2),
|
|
|
+
|
|
|
+ # Oriente (Amazonía)
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Nueva Loja", provincia="Sucumbíos", irradiacion_h_promedio=4.0),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Puerto Francisco de Orellana", provincia="Orellana", irradiacion_h_promedio=4.1),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Tena", provincia="Napo", irradiacion_h_promedio=3.8),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Puyo", provincia="Pastaza", irradiacion_h_promedio=3.9),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Macas", provincia="Morona Santiago", irradiacion_h_promedio=4.0),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Zamora", provincia="Zamora Chinchipe", irradiacion_h_promedio=4.1),
|
|
|
+
|
|
|
+ # Insular
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Puerto Ayora", provincia="Galápagos", irradiacion_h_promedio=5.8),
|
|
|
+ DatosSolaresCiudad(nombre_ciudad="Puerto Baquerizo Moreno", provincia="Galápagos", irradiacion_h_promedio=5.7)
|
|
|
+ ]
|
|
|
+ db.session.add_all(cities)
|
|
|
+ else:
|
|
|
+ print("Las ciudades ya existen.")
|
|
|
+
|
|
|
+ # Panels
|
|
|
+ if not CatalogoPaneles.query.first():
|
|
|
+ print("Creando paneles...")
|
|
|
+ panels = [
|
|
|
+ CatalogoPaneles(marca="SunPower", modelo="Maxeon 3", eficiencia_r=0.22, area_m2=1.6, precio_unitario=350),
|
|
|
+ CatalogoPaneles(marca="Canadian Solar", modelo="HiKu", eficiencia_r=0.18, area_m2=1.7, precio_unitario=220),
|
|
|
+ CatalogoPaneles(marca="Jinko", modelo="Tiger Pro", eficiencia_r=0.20, area_m2=1.65, precio_unitario=250)
|
|
|
+ ]
|
|
|
+ db.session.add_all(panels)
|
|
|
+ else:
|
|
|
+ print("Los paneles ya existen.")
|
|
|
+
|
|
|
+ db.session.commit()
|
|
|
+ print("¡Base de datos poblada con éxito!")
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ seed_database()
|