from service import get_wecom from model import get_session, Employee from sqlmodel import delete, select async def sync_department_user(): wecom = get_wecom() dept_res = await wecom.get_departments() with get_session() as session: # 删除原来的数据 stmt = delete(Employee) session.execute(stmt) session.commit() index_id = 1 for dept in dept_res: user_res = await wecom.get_user_in_department(dept.id) for item in user_res: new_employee = Employee( id=index_id, wecom_user_id=item.userid, ename=item.name, dept_ids=[str(i) for i in item.department], open_userid=item.open_userid, ) index_id += 1 session.add(new_employee) session.commit() def check_employee_datebase(): with get_session() as session: has = session.exec(select(Employee)).first() if not has: return False return True