# Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> from ggrc.models.all_models import register_model from ggrc.models import all_models from .task_group_task import TaskGroupTask from .task_group import TaskGroup from .task_group_object import TaskGroupObject from .workflow import Workflow from .workflow_person import WorkflowPerson from .cycle import Cycle from .cycle_task_entry import CycleTaskEntry from .cycle_task_group import CycleTaskGroup from .cycle_task_group_object_task import CycleTaskGroupObjectTask register_model(TaskGroup) register_model(TaskGroupObject) register_model(TaskGroupTask) register_model(Workflow) register_model(WorkflowPerson) register_model(Cycle) register_model(CycleTaskEntry) register_model(CycleTaskGroup) register_model(CycleTaskGroupObjectTask) WORKFLOW_OBJECT_TYPES = { "Program", "Vendor", "OrgGroup", "Assessment", "Request", "Regulation", "Standard", "Policy", "Contract", "Objective", "Control", "Section", "Clause", "System", "Process", "DataAsset", "Facility", "Market", "Product", "Project", "Issue", "AccessGroup", "Risk", "RiskObject",
# Copyright (C) 2017 Google Inc. # Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> from ggrc.models.all_models import register_model from .risk_assessment import RiskAssessment register_model(RiskAssessment)
def _display_name(self): if self.source_context: source_context_display_name = self.source_context.display_name else: source_context_display_name = 'Default Context' if self.context: context_display_name = self.context.display_name else: context_display_name = 'Default Context' return u'{source_context} -> {context}'.format( source_context=source_context_display_name, context=context_display_name, ) all_models.register_model(Role) all_models.register_model(UserRole) all_models.register_model(ContextImplication) def get_ids_related_to_user_role(object_type, related_type, related_ids): if object_type == "Person": related_model = getattr(all_models, related_type, None) if not hasattr(related_model, "context_id"): return None return db.session \ .query(UserRole.person_id.distinct()) \ .join(related_model, related_model.context_id == UserRole.context_id) \ .filter(related_model.id.in_(related_ids)) elif related_type == "Person": object_model = getattr(all_models, object_type, None)
# Copyright (C) 2017 Google Inc. # Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> from ggrc.models.all_models import register_model from .risk import Risk from .risk_object import RiskObject from .threat import Threat register_model(Risk) register_model(RiskObject) register_model(Threat)
.append(assignment.role) return assignments_by_user @classmethod def eager_query(cls): from sqlalchemy import orm query = super(UserRole, cls).eager_query() return query.options( orm.joinedload('role'), orm.subqueryload('person'), orm.subqueryload('context')) def _display_name(self): if self.context and self.context.related_object_type and \ self.context.related_object: context_related = ' in ' + self.context.related_object.display_name elif hasattr(self, '_display_related_title'): context_related = ' in ' + self._display_related_title elif self.context: logger.warning('Unable to identify context.related for UserRole') context_related = '' else: context_related = '' return u'{0} <-> {1}{2}'.format( self.person.display_name, self.role.display_name, context_related) all_models.register_model(Role) all_models.register_model(UserRole)
from ggrc.models.all_models import register_model from ggrc.models import all_models from .task_group_task import TaskGroupTask from .task_group import TaskGroup from .task_group_object import TaskGroupObject from .workflow import Workflow from .workflow_person import WorkflowPerson from .cycle import Cycle from .cycle_task_entry import CycleTaskEntry from .cycle_task_group import CycleTaskGroup from .cycle_task_group_object_task import CycleTaskGroupObjectTask register_model(TaskGroup) register_model(TaskGroupObject) register_model(TaskGroupTask) register_model(Workflow) register_model(WorkflowPerson) register_model(Cycle) register_model(CycleTaskEntry) register_model(CycleTaskGroup) register_model(CycleTaskGroupObjectTask) WORKFLOW_OBJECT_TYPES = { "Program", "Vendor", "OrgGroup", "Assessment", "Regulation", "Standard", "Policy", "Contract", "Objective", "Control", "Section", "Clause",
.append(assignment.role) return assignments_by_user @classmethod def eager_query(cls, **kwargs): from sqlalchemy import orm query = super(UserRole, cls).eager_query(**kwargs) return query.options(orm.joinedload('role'), orm.subqueryload('person'), orm.subqueryload('context')) def _display_name(self): if self.context and self.context.related_object_type and \ self.context.related_object: context_related = ' in ' + self.context.related_object.display_name elif hasattr(self, '_display_related_title'): context_related = ' in ' + self._display_related_title elif self.context: logger.warning('Unable to identify context.related for UserRole') context_related = '' else: context_related = '' return u'{0} <-> {1}{2}'.format(self.person.display_name, self.role.display_name, context_related) all_models.register_model(Role) all_models.register_model(UserRole)
context = db.relationship( 'Context', uselist=False, foreign_keys=[context_id], ) source_context = db.relationship( 'Context', uselist=False, foreign_keys=[source_context_id], ) def _display_name(self): if self.source_context: source_context_display_name = self.source_context.display_name else: source_context_display_name = 'Default Context' if self.context: context_display_name = self.context.display_name else: context_display_name = 'Default Context' return u'{source_context} -> {context}'.format( source_context=source_context_display_name, context=context_display_name, ) all_models.register_model(Role) all_models.register_model(UserRole) all_models.register_model(ContextImplication)
# Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> from ggrc.models.all_models import register_model from ggrc.models import all_models from .task_group_object import TaskGroupObject from .task_group_task import TaskGroupTask from .task_group import TaskGroup from .workflow import Workflow from .cycle import Cycle from .cycle_task_group import CycleTaskGroup from .cycle_task_group_object_task import CycleTaskGroupObjectTask register_model(TaskGroup) register_model(TaskGroupTask) register_model(TaskGroupObject) register_model(Workflow) register_model(Cycle) register_model(CycleTaskGroup) register_model(CycleTaskGroupObjectTask) WORKFLOW_OBJECT_TYPES = { "Program", "Vendor", "OrgGroup", "Assessment", "AccountBalance", "Regulation", "Standard", "Policy", "Contract", "Objective", "Control", "Requirement", "System", "Process", "DataAsset", "Facility", "Market", "Product", "Project", "Issue",
# Copyright (C) 2017 Google Inc. # Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> """Gdrive Models""" from ggrc.models.all_models import register_model from ggrc_gdrive_integration.models.object_event import ObjectEvent from ggrc_gdrive_integration.models.object_file import ObjectFile register_model(ObjectEvent) register_model(ObjectFile)
# Copyright (C) 2019 Google Inc. # Licensed under http://www.apache.org/licenses/LICENSE-2.0 <see LICENSE file> from ggrc.models.all_models import register_model from ggrc.models import all_models from .task_group_task import TaskGroupTask from .task_group import TaskGroup from .task_group_object import TaskGroupObject from .workflow import Workflow from .cycle import Cycle from .cycle_task_group import CycleTaskGroup from .cycle_task_group_object_task import CycleTaskGroupObjectTask register_model(TaskGroup) register_model(TaskGroupObject) register_model(TaskGroupTask) register_model(Workflow) register_model(Cycle) register_model(CycleTaskGroup) register_model(CycleTaskGroupObjectTask) WORKFLOW_OBJECT_TYPES = { "Program", "Vendor", "OrgGroup", "Assessment", "AccountBalance", "Regulation", "Standard", "Policy", "Contract", "Objective", "Control", "Requirement", "System", "Process", "DataAsset", "Facility", "Market", "Product", "Project", "Issue", "AccessGroup", "Risk", "Threat", "Metric", "TechnologyEnvironment", "ProductGroup", "KeyReport" }