dept_service.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from extensions.ext_database import db
  2. from models.account import Account
  3. from models.dept import Dept
  4. class DeptService:
  5. @staticmethod
  6. def get_dept_account_list():
  7. dept_list=[]
  8. account_list=[]
  9. dept_results = (
  10. db.session.query(Dept.dept_id, Dept.dept_name)
  11. .filter(Dept.status == 'active')
  12. .all()
  13. )
  14. account_results = (
  15. db.session.query(Account.dept_id, Account.id,Account.email)
  16. .filter(Account.status == 'active')
  17. .all()
  18. )
  19. for dept_row in dept_results:
  20. for account_row in account_results:
  21. if account_row.dept_id == dept_row.dept_id:
  22. account_list.append({"account_id":account_row.id,"email":account_row.email})
  23. dept_list.append({"dept_id": dept_row.dept_id, "dept_name": dept_row.dept_name,"accounts":account_list})
  24. return dept_list
  25. @staticmethod
  26. def get_dept_list():
  27. dept_list = []
  28. dept_results = (
  29. db.session.query(Dept.dept_id, Dept.dept_name)
  30. .filter(Dept.status == 'active')
  31. .all()
  32. )
  33. for dept_row in dept_results:
  34. dept_list.append({"dept_id": dept_row.dept_id, "dept_name": dept_row.dept_name})
  35. return dept_list