db_emergency_plan.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. from sqlalchemy.orm import Session
  4. from sqlalchemy import text, exists, and_, or_, not_
  5. from sqlalchemy.sql import func
  6. from database import get_db
  7. from models import *
  8. from extensions import logger
  9. from utils import *
  10. def get_plan_name_by_id(db: Session, plan_id: int) -> str:
  11. row = db.query(EmergencyPlan).filter(EmergencyPlan.id == plan_id).first()
  12. if row is not None:
  13. return row.plan_name
  14. return ''
  15. def get_plan_file_list(db: Session, plan_number: str):
  16. row = db.query(EmergencyPlan).filter(EmergencyPlan.plan_number == plan_number).first()
  17. if row is None:
  18. return []
  19. plan_id = row.plan_id
  20. file_query = db.query(EmergencyFile)
  21. file_query = file_query.filter(EmergencyFile.del_flag != '2')
  22. file_query = file_query.filter(EmergencyFile.from_scenario == 'emergencyPlans_plan')
  23. file_query = file_query.filter(EmergencyFile.foreign_key == plan_id)
  24. files = file_query.all()
  25. result = [{
  26. "uid": file.file_id,
  27. "status": file.status,
  28. "name": file.file_name_desc,
  29. "url": file.file_name
  30. } for file in files]
  31. return result