Move environment role method into domain

This commit is contained in:
Montana
2018-09-21 11:14:30 -04:00
parent 6d50c228af
commit e12c1f42db
4 changed files with 21 additions and 4 deletions

View File

@@ -0,0 +1,16 @@
from atst.models.environment_role import EnvironmentRole
from atst.database import db
class EnvironmentRoles(object):
@classmethod
def get(cls, user_id, environment_id):
existing_env_role = (
db.session.query(EnvironmentRole)
.filter(
EnvironmentRole.user_id == user_id,
EnvironmentRole.environment_id == environment_id,
)
.one_or_none()
)
return existing_env_role

View File

@@ -6,6 +6,7 @@ from atst.models.environment_role import EnvironmentRole, CSPRole
from atst.models.project import Project from atst.models.project import Project
from atst.models.permissions import Permissions from atst.models.permissions import Permissions
from atst.domain.authz import Authorization from atst.domain.authz import Authorization
from atst.domain.environment_roles import EnvironmentRoles
from .exceptions import NotFoundError from .exceptions import NotFoundError
@@ -67,7 +68,7 @@ class Environments(object):
for id_and_role in ids_and_roles: for id_and_role in ids_and_roles:
new_role = id_and_role["role"] new_role = id_and_role["role"]
environment = Environments.get(id_and_role["id"]) environment = Environments.get(id_and_role["id"])
env_role = EnvironmentRole.get(workspace_user.user_id, id_and_role["id"]) env_role = EnvironmentRoles.get(workspace_user.user_id, id_and_role["id"])
if env_role: if env_role:
env_role.role = new_role env_role.role = new_role
else: else:

View File

@@ -16,7 +16,7 @@ from atst.domain.reports import Reports
from atst.domain.workspaces import Workspaces from atst.domain.workspaces import Workspaces
from atst.domain.workspace_users import WorkspaceUsers from atst.domain.workspace_users import WorkspaceUsers
from atst.domain.environments import Environments from atst.domain.environments import Environments
from atst.models.environment_role import EnvironmentRole from atst.domain.environment_roles import EnvironmentRoles
from atst.forms.new_project import NewProjectForm from atst.forms.new_project import NewProjectForm
from atst.forms.new_member import NewMemberForm from atst.forms.new_member import NewMemberForm
from atst.forms.edit_member import EditMemberForm from atst.forms.edit_member import EditMemberForm
@@ -224,7 +224,7 @@ def view_member(workspace_id, member_id):
member=member, member=member,
projects=projects, projects=projects,
form=form, form=form,
EnvironmentRole=EnvironmentRole, EnvironmentRoles=EnvironmentRoles,
) )

View File

@@ -64,7 +64,7 @@
<ul v-show='isVisible'> <ul v-show='isVisible'>
{% for env in project.environments %} {% for env in project.environments %}
{% set role = EnvironmentRole.get(member.user_id, env.id).role %} {% set role = EnvironmentRoles.get(member.user_id, env.id).role %}
<li class='block-list__item'> <li class='block-list__item'>
<edit-workspace-member inline-template initial-data='{{ role }}' v-bind:choices='{{ form.environment_role.choices | tojson }}'> <edit-workspace-member inline-template initial-data='{{ role }}' v-bind:choices='{{ form.environment_role.choices | tojson }}'>