wip: org to community

This commit is contained in:
Untone 2021-08-27 11:42:01 +03:00
parent 85f697addd
commit 9721bd41d5
4 changed files with 11 additions and 16 deletions

View File

@ -1,4 +1,4 @@
from orm.rbac import Organization, Operation, Resource, Permission, Role
from orm.rbac import Community, Operation, Resource, Permission, Role
from orm.user import User
from orm.message import Message
from orm.topic import Topic

View File

@ -11,7 +11,7 @@ class Community(Base):
slug: str = Column(String, unique = True, nullable = False)
desc: str = Column(String, nullable=False, default='')
pic: str = Column(String, nullable=False, default='')
org_id: str = Column(ForeignKey("organization.id"), nullable=True)
# org_id: str = Column(ForeignKey("organization.id"), nullable=True)
createdAt: str = Column(DateTime, nullable=False, default = datetime.now, comment="Created at")
createdBy: str = Column(ForeignKey("user.id"), nullable=False, comment="Creator")

View File

@ -33,7 +33,7 @@ class Role(Base):
# id is auto field
name: str = Column(String, nullable=False, comment="Role Name")
desc: str = Colulm(String, nullable=True, comment="Role Description")
desc: str = Column(String, nullable=True, comment="Role Description")
community: int = Column(ForeignKey("community.id", ondelete="CASCADE"), nullable=False, comment="Community")
permissions = relationship(lambda: Permission)

View File

@ -1,4 +1,4 @@
from orm import Shout, User, Organization, Resource
from orm import Shout, User, Community, Resource
from orm.base import local_session
from resolvers.base import mutation, query
@ -18,7 +18,7 @@ class GitTask:
def __init__(self, input, org, username, user_email, comment):
self.slug = input["slug"];
self.shout_body = input["body"];
self.org = org;
self.org = org; #FIXME
self.username = username;
self.user_email = user_email;
self.comment = comment;
@ -84,19 +84,14 @@ async def create_shout(_, info, input):
auth = info.context["request"].auth
user_id = auth.user_id
org_id = org = input["org_id"]
# org_id = org = input["org_id"]
with local_session() as session:
user = session.query(User).filter(User.id == user_id).first()
org = session.query(Organization).filter(Organization.id == org_id).first()
if not org:
return {
"error" : "invalid organization"
}
# org = session.query(Organization).filter(Organization.id == org_id).first()
new_shout = Shout.create(
slug = input["slug"],
org_id = org_id,
# org_id = org_id,
authors = [user_id, ],
body = input["body"],
replyTo = input.get("replyTo"),
@ -124,11 +119,11 @@ async def update_shout(_, info, input):
user_id = auth.user_id
slug = input["slug"]
org_id = org = input["org_id"]
# org_id = org = input["org_id"]
with local_session() as session:
user = session.query(User).filter(User.id == user_id).first()
shout = session.query(Shout).filter(Shout.slug == slug).first()
org = session.query(Organization).filter(Organization.id == org_id).first()
# org = session.query(Organization).filter(Organization.id == org_id).first()
if not shout:
return {