From 9ea07e00fc8b92e9b75849859c1ecce77c7096d1 Mon Sep 17 00:00:00 2001 From: zhaoqingang <zhaoqg0118@163.com> Date: 星期四, 10 四月 2025 13:31:23 +0800 Subject: [PATCH] 优化 --- app/models/knowledge_model.py | 77 +++++++++++++++++++++++++++++++------- 1 files changed, 63 insertions(+), 14 deletions(-) diff --git a/app/models/knowledge_model.py b/app/models/knowledge_model.py index 487e91d..a7f0494 100644 --- a/app/models/knowledge_model.py +++ b/app/models/knowledge_model.py @@ -9,42 +9,91 @@ from app.models.base_model import Base class KnowledgeModel(Base): - __tablename__ = 'knowledgebase' + __tablename__ = 'knowledgebases' __mapper_args__ = { # "order_by": 'SEQ' } - id = Column(String(32), primary_key=True) # id + id = Column(String(36), primary_key=True) # id name = Column(String(128)) # 鍚嶇О - create_date = Column(DateTime) # 鍒涘缓鏃堕棿 - update_date = Column(DateTime) # 鏇存柊鏃堕棿 - avatar = Column(Text) # 鍥炬爣 + create_date = Column(DateTime, default=datetime.now()) # 鍒涘缓鏃堕棿 + update_date = Column(DateTime, default=datetime.now(), onupdate=datetime.now()) # 鏇存柊鏃堕棿 + permission = Column(String(32), default="me") tenant_id = Column(String(32)) # 鍒涘缓浜篿d description = Column(Text) # 璇存槑 status = Column(String(1)) # 鐘舵�� documents = Column(Integer, default=0) # 鏂囨。 icon = Column(String(128)) # 鏂囨。 - # kld_type = Column(String(1)) # 鐭ヨ瘑搴撳钩鍙� + knowledge_type = Column(String(1)) # 鐭ヨ瘑搴撳钩鍙� + embd_id = Column(String(128)) def get_id(self): return str(self.id) - def to_json(self): + def to_json(self, user_id=""): return { 'id': self.id, 'name': self.name, - 'create_time': self.create_date, - 'update_time': self.update_date, - 'avatar': self.avatar, + 'create_time': self.create_date.strftime('%Y-%m-%d %H:%M:%S'), + 'update_time': self.update_date.strftime('%Y-%m-%d %H:%M:%S'), + 'permission': self.permission, 'user_id': self.tenant_id, 'description': self.description, 'status': self.status, - 'documents': self.documents, - 'icon': self.icon + 'documents': self.documents if self.documents else 0, + 'icon': self.icon, + 'embd_id': self.embd_id, + 'link': True if (self.tenant_id == user_id or user_id == "admin" ) and self.permission == "team" else False, } def __repr__(self): return '<Knowledge name:%r url:%r>\n' % (self.name, self.id) -class RoleParameter(BaseModel): - role: str \ No newline at end of file +class klgParameter(BaseModel): + id: str + name: str + description: Optional[str] = "" + icon: str + klgType: str + + + +class klgIcon(BaseModel): + id: str + icon: str + + + +class KnowledgeUserModel(Base): + __tablename__ = 'knowledgebase_user' + + id = Column(Integer, primary_key=True) # id + kb_id = Column(String(36)) + user_id = Column(Integer) + create_date = Column(DateTime, default=datetime.now()) # 鍒涘缓鏃堕棿 + update_date = Column(DateTime, default=datetime.now(), onupdate=datetime.now()) # 鏇存柊鏃堕棿 + status = Column(Integer) # 鐘舵�� + + + + def get_id(self): + return str(self.id) + + def to_json(self, user_id=""): + return { + 'id': self.id, + 'kb_id': self.kb_id, + 'create_time': self.create_date.strftime('%Y-%m-%d %H:%M:%S'), + 'update_time': self.update_date.strftime('%Y-%m-%d %H:%M:%S'), + 'user_id': self.user_id, + 'status': self.status, + 'owner': True if str(self.user_id) == user_id else False, + } + def __repr__(self): + return '<Knowledge name:%r url:%r>\n' % (self.name, self.id) + + + +class KlgOwner(BaseModel): + knowledgeId: str + UserId: int \ No newline at end of file -- Gitblit v1.8.0