import json from Log import logger from app.models import MenuCapacityModel, WebMenuModel, GroupModel, RoleModel async def dialog_menu_sync(db): menu_list = [] with open("env_conf/menu_conf.json", 'r', encoding='utf-8') as file: # 加载JSON数据 data = json.load(file) menu_list = data.get("data", []) db.query(WebMenuModel).delete() db.query(MenuCapacityModel).delete() db.commit() for menu in menu_list: # print(menu) agent = menu.pop("agent", []) for i in agent: capacity = MenuCapacityModel(menu_id=menu["id"], capacity_id=i, capacity_type=2) db.add(capacity) dialog = menu.pop("dialog", []) for i in dialog: capacity = MenuCapacityModel(menu_id=menu["id"], capacity_id=i, capacity_type=1) db.add(capacity) menu_obj = WebMenuModel(**menu) db.add(menu_obj) db.commit() async def default_group_sync(db): group = db.query(GroupModel).filter_by(group_type=2).first() if not group: logger.error("未初始默认组, 开始初始化!") try: group = GroupModel(group_name="默认用户组", group_description="默认组", group_type=2) db.add(group) db.commit() except Exception as e: logger.error(e) async def default_role_sync(db): role = db.query(RoleModel).filter_by(role_type=2).first() if not role: logger.error("未初始默认角色, 开始初始化!") try: group = RoleModel(id="morenjuese1234567890", name="默认角色", description="默认角色", role_type=2) db.add(group) db.commit() except Exception as e: logger.error(e)