From 2f84e3cc4bff981590ab37bd95da64bd72c1f2e0 Mon Sep 17 00:00:00 2001 From: zhaoqingang <zhaoqg0118@163.com> Date: 星期一, 16 十二月 2024 09:40:00 +0800 Subject: [PATCH] 12-16 --- app/models/group_model.py | 56 +++++++++++++++++++++++++++++++------------------------- 1 files changed, 31 insertions(+), 25 deletions(-) diff --git a/app/models/group_model.py b/app/models/group_model.py index 52e05a8..58d4991 100644 --- a/app/models/group_model.py +++ b/app/models/group_model.py @@ -10,24 +10,24 @@ group_knowledge_table = Table('group_Knowledge', Base.metadata - , Column('group_id', Integer, ForeignKey('group.id')) - , Column('knowledge_id', String(32), ForeignKey('knowledgebase.id'))) + , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) + , Column('knowledge_id', String(32), ForeignKey('knowledgebase.id', ondelete='CASCADE'))) group_dialog_table = Table('group_dialogs', Base.metadata - , Column('group_id', Integer, ForeignKey('group.id')) - , Column('dialog_id', String(36), ForeignKey('dialogs.id'))) + , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) + , Column('dialog_id', String(36), ForeignKey('dialogs.id', ondelete='CASCADE'))) -group_agent_table = Table('group_agent', Base.metadata - , Column('group_id', Integer, ForeignKey('group.id')) - , Column('agent_id', String(36), ForeignKey('user_canvas.id'))) +group_agent_table = Table('group_canvas', Base.metadata + , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) + , Column('canvas_id', String(36), ForeignKey('canvas.id', ondelete='CASCADE'))) group_llm_table = Table('group_llm', Base.metadata - , Column('group_id', Integer, ForeignKey('group.id')) - , Column('llm_id', String(36), ForeignKey('common_llm.id'))) + , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) + , Column('llm_id', String(36), ForeignKey('common_llm.id', ondelete='CASCADE'))) group_unified_agent_table = Table('group_unified_agent', Base.metadata - , Column('group_id', Integer, ForeignKey('group.id')) - ,Column('unified_agent_id', String(36), ForeignKey('unified_agent.id'))) + , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) + ,Column('unified_agent_id', String(36), ForeignKey('unified_agent.id', ondelete='CASCADE'))) class GroupModel(Base): @@ -38,6 +38,8 @@ status = Column(String(10), nullable=False, default="1") created_at = Column(DateTime, default=datetime.now()) updated_at = Column(DateTime, default=datetime.now(), onupdate=datetime.now()) + creator = Column(Integer) + group_type = Column(Integer, default=1) knowledges = relationship('KnowledgeModel', @@ -52,18 +54,15 @@ agents = relationship('CanvasModel', secondary=group_agent_table, - backref=backref('groups', lazy='dynamic'), - lazy="dynamic") + backref=backref('groups', lazy='dynamic')) llms = relationship('CommonLlmModel', secondary=group_llm_table, - backref=backref('groups', lazy='dynamic'), - lazy="dynamic") + backref=backref('groups', lazy='dynamic')) unified_agents = relationship('UnifiedAgentModel', secondary=group_unified_agent_table, - backref=backref('roles', lazy='dynamic'), - lazy="dynamic") + backref=backref('groups', lazy='dynamic')) def to_dict(self): return { 'groupId': self.id, @@ -79,8 +78,8 @@ def __repr__(self): - return '<Role name:%r description:%r iconCls:%r seq:%r>\n' \ - % (self.NAME, self.DESCRIPTION, self.ICONCLS, self.SEQ) + return '<Role name:%r description:%r>\n' \ + % (self.group_name, self.group_description) def to_json(self): json = { @@ -97,8 +96,8 @@ if len(self.dialogs.all()) > 0: json['dialogs'] = [dialog.to_json() for dialog in self.dialogs] - if len(self.agents.all()) > 0: - json['agents'] = [agent.to_json() for agent in self.agents] + # if len(self.agents.all()) > 0: + # json['agents'] = [agent.to_json() for agent in self.agents] if len(self.llms.all()) > 0: json['llms'] = [llm.to_json() for llm in self.llms] @@ -121,11 +120,18 @@ class GroupData(BaseModel): id: Optional[int] = None - group_name: Optional[str] = "" - group_description: Optional[str] = "" - group_status: Optional[str] = "" + groupName: Optional[str] = "" + description: Optional[str] = "" + status: Optional[str] = "" class GroupUsers(BaseModel): id: int - user_list: list + userList: list + + +class GroupResource(BaseModel): + id: int + llms: list + dialogs: list + knowledges: list -- Gitblit v1.8.0