def get(self, project_id): """ Retrieve all episodes related to a given project. """ projects_service.get_project(project_id) user_service.check_project_access(project_id) return shots_service.get_episodes_for_project(project_id)
def prepare_import(self, project_id): self.episodes = {} self.entity_types = {} self.descriptor_fields = self.get_descriptor_field_map( project_id, "Asset") project = projects_service.get_project(project_id) self.is_tv_show = projects_service.is_tv_show(project) if self.is_tv_show: episodes = shots_service.get_episodes_for_project(project_id) self.episodes = { episode["name"]: episode["id"] for episode in episodes } self.created_assets = [] self.task_types_in_project_for_assets = ( TaskType.query.join(ProjectTaskTypeLink).filter( ProjectTaskTypeLink.project_id == project_id).filter( TaskType.for_entity == "Asset")) self.task_statuses = { status["id"]: [status[n] for n in ("name", "short_name")] for status in tasks_service.get_task_statuses() } self.current_user_id = get_current_user()["id"] self.task_types_for_ready_for_map = { task_type.name: str(task_type.id) for task_type in TaskType.query.join(ProjectTaskTypeLink).filter( ProjectTaskTypeLink.project_id == project_id).filter( TaskType.for_entity == "Shot").all() }
def get(self, project_id): """ Retrieve all episodes related to a given project. """ projects_service.get_project(project_id) if not permissions.has_manager_permissions(): user_service.check_has_task_related(project_id) return shots_service.get_episodes_for_project(project_id)
def get(self, project_id): """ Retrieve all episodes related to a given project. """ projects_service.get_project(project_id) user_service.check_project_access(project_id) return shots_service.get_episodes_for_project( project_id, only_assigned=permissions.has_vendor_permissions())
def prepare_import(self, project_id): self.episodes = {} self.entity_types = {} self.descriptor_fields = self.get_descriptor_field_map( project_id, "Asset") project = projects_service.get_project(project_id) self.is_tv_show = projects_service.is_tv_show(project) if self.is_tv_show: episodes = shots_service.get_episodes_for_project(project_id) self.episodes = { episode["name"]: episode["id"] for episode in episodes }
def get_episodes_schedule_items(project_id, task_type_id): """ Return all episode schedule items for given project. If no schedule item exists for a given asset type, it creates one. """ episode_type = shots_service.get_episode_type() episodes = shots_service.get_episodes_for_project(project_id) episodes_map = base_service.get_model_map_from_array(episodes) existing_schedule_items = set( ScheduleItem.query.join( Entity, ScheduleItem.object_id == Entity.id).filter( ScheduleItem.project_id == project_id).filter( Entity.entity_type_id == episode_type["id"]).filter( ScheduleItem.task_type_id == task_type_id).all()) return get_entity_schedule_items( project_id, task_type_id, episodes, episodes_map, existing_schedule_items, )