zhaoqingang
2024-12-16 2f84e3cc4bff981590ab37bd95da64bd72c1f2e0
app/models/group_model.py
@@ -17,9 +17,9 @@
                           , 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
group_agent_table = Table('group_canvas', Base.metadata
                           , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE'))
                           , Column('agent_id', String(36), ForeignKey('user_canvas.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', ondelete='CASCADE'))
@@ -39,6 +39,7 @@
    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',
@@ -53,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,
@@ -98,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]
@@ -122,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