database.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. """Main application"""
  2. from app import SESSION
  3. from app.models import ResourceTrack, ResourceStat, Region
  4. def save_resources(state_id, regions, resource_id):
  5. """Save resources to database"""
  6. session = SESSION()
  7. resource_track = ResourceTrack()
  8. resource_track.state_id = state_id
  9. resource_track.resource_type = resource_id
  10. session.add(resource_track)
  11. session.commit()
  12. for region_id, region_dict in regions.items():
  13. region = session.query(Region).get(region_id)
  14. if not region:
  15. region = save_region(session, region_id, region_dict)
  16. resource_stat = ResourceStat()
  17. resource_stat.resource_track_id = resource_track.id
  18. resource_stat.region_id = region.id
  19. resource_stat.explored = region_dict['explored']
  20. resource_stat.deep_exploration = region_dict['deep_exploration']
  21. resource_stat.limit_left = region_dict['limit_left']
  22. session.add(resource_stat)
  23. session.commit()
  24. session.close()
  25. def save_region(session, region_id, region_dict):
  26. """Save player to database"""
  27. region = Region()
  28. region.id = region_id
  29. region.name = region_dict['region_name']
  30. session.add(region)
  31. return region