From 351cd801ebf0da665c521448c978da100b4aaf03 Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 05 十二月 2024 15:21:08 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/rag-gateway
---
app/models/organization_model.py | 66 ++++++++++++++++++++++++---------
1 files changed, 48 insertions(+), 18 deletions(-)
diff --git a/app/models/organization_model.py b/app/models/organization_model.py
index ae7a1de..950ba32 100644
--- a/app/models/organization_model.py
+++ b/app/models/organization_model.py
@@ -1,18 +1,20 @@
from datetime import datetime
+from typing import Optional
+from pydantic import BaseModel
from sqlalchemy import Column, Integer, String, Table, ForeignKey, DateTime
from sqlalchemy.orm import relationship, backref
from app.models.base_model import Base
-organization_group_table = Table('organization_group', Base.metadata,
- Column('group_id', Integer, ForeignKey('group.id')),
- Column('organization_id', String(36), ForeignKey('organization.id')))
+# organization_group_table = Table('organization_group', Base.metadata,
+# Column('group_id', Integer, ForeignKey('group.id')),
+# Column('organization_id', String(36), ForeignKey('organization.id')))
# #鏋勫缓瀵箁ole琛ㄧ殑鍏崇郴
organization_role_table = Table('organization_role', Base.metadata,
- Column('role_id', String(36), ForeignKey('role.id')),
- Column('organization_id', String(36), ForeignKey('organization.id')))
+ Column('role_id', String(36), ForeignKey('role.id', ondelete='CASCADE')),
+ Column('organization_id', String(36), ForeignKey('organization.id', ondelete='CASCADE')))
class OrganizationModel(Base):
__tablename__ = 'organization'
@@ -25,13 +27,13 @@
iconcls = Column(String(255))
seq = Column(Integer)
leader = Column(String(255))
- phone = Column(String(11))
+ phone = Column(String(32))
email = Column(String(64))
status = Column(String(10), nullable=False, default="0")
- groups = relationship('GroupModel',
- secondary=organization_group_table,
- backref=backref('organizations', lazy='dynamic'))
+ # groups = relationship('GroupModel',
+ # secondary=organization_group_table,
+ # backref=backref('organizations', lazy='dynamic'))
roles = relationship('RoleModel',
secondary=organization_role_table,
@@ -61,13 +63,11 @@
'email': self.email,
'status': self.status,
'roles': [self.role_json(role) for role in self.roles],
- 'groups': [self.group_json(group) for group in self.groups],
+ # 'groups': [self.group_json(group) for group in self.groups],
'children': [
org.to_json() for org in self.children
]
}
-
-
return json
@@ -87,25 +87,55 @@
def to_tree_select_json(self):
return {
- 'id': self.ID,
- 'label': self.NAME,
+ 'id': self.id,
+ 'label': self.name,
'children': [org.to_tree_select_json() for org in self.children]
+ }
+
+ def to_parent_select_json(self):
+ return {
+ 'id': self.id,
+ 'label': self.name,
+ 'parent': [org.to_parent_select_json() for org in self.parent]
}
def get_pid(self):
if self.parent:
- return self.parent.ID
+ return self.parent.id
return ''
def get_pName(self):
if self.parent:
- return self.parent.NAME
+ return self.parent.name
return ''
def get_id(self):
- return str(self.ID)
+ return str(self.id)
def __repr__(self):
- return '<Organization %r>\n' %(self.NAME)
\ No newline at end of file
+ return '<Organization %r>\n' %(self.name)
+
+
+class DeptList(BaseModel):
+ deptName: Optional[str] = ""
+
+
+class DeptInfo(BaseModel):
+ deptId: Optional[str] = ""
+ deptName: Optional[str] = ""
+ leader: Optional[str] = ""
+ phone: Optional[str] = ""
+ orderNum: int
+ address: Optional[str] = ""
+ parentId: Optional[str] = ""
+ status: str
+ roles: list
+ groups: Optional[list] = []
+
+
+class DeptParent(BaseModel):
+ deptId: str
+ parentId: str
+ orderNum: int
--
Gitblit v1.8.0