| | |
| | | from sqlalchemy import Column, Integer, String, Table, ForeignKey, DateTime |
| | | from sqlalchemy.orm import relationship, backref |
| | | |
| | | from app.config.const import DEPT_STATUS_DELETE |
| | | from app.models.base_model import Base |
| | | |
| | | # organization_group_table = Table('organization_group', Base.metadata, |
| | |
| | | leader = Column(String(255)) |
| | | phone = Column(String(32)) |
| | | email = Column(String(64)) |
| | | status = Column(String(10), nullable=False, default="0") |
| | | status = Column(String(10), nullable=False, default="1") |
| | | |
| | | # groups = relationship('GroupModel', |
| | | # secondary=organization_group_table, |
| | |
| | | 'roles': [self.role_json(role) for role in self.roles], |
| | | # 'groups': [self.group_json(group) for group in self.groups], |
| | | 'children': [ |
| | | org.to_json() for org in self.children |
| | | org.to_json() for org in self.children if org.status != DEPT_STATUS_DELETE |
| | | ] |
| | | } |
| | | |
| | |
| | | 'email': self.email, |
| | | 'status': self.status, |
| | | 'roles': [self.role_json(role) for role in self.roles], |
| | | } |
| | | |
| | | return json |
| | | |
| | | def to_base_json(self): |
| | | json = { |
| | | 'deptId': self.id, |
| | | 'deptName': self.name, |
| | | 'address': self.address, |
| | | 'code': self.code, |
| | | 'iconCls': self.iconcls, |
| | | 'orderNum': self.seq, |
| | | 'leader': self.leader, |
| | | 'phone': self.phone, |
| | | 'email': self.email, |
| | | 'status': self.status |
| | | } |
| | | |
| | | return json |
| | |
| | | orderNum: int |
| | | address: Optional[str] = "" |
| | | parentId: Optional[str] = "" |
| | | status: str |
| | | status: Optional[str|int] = "" |
| | | roles: Optional[list] = [] |
| | | groups: Optional[list] = [] |
| | | |
| | |
| | | deptId: str |
| | | parentId: str |
| | | orderNum: int |
| | | |
| | | |
| | | class DeptStatus(BaseModel): |
| | | deptId: str |
| | | status: str |