-
Robbie Luijben authoredRobbie Luijben authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
specification.py 1.11 KiB
from typing import List
from django.contrib.auth.models import User
from lofardata.models import Group, WorkSpecification
def set_post_submit_values(specification, user):
specification.async_task_result = None
specification.is_ready = False
if specification.created_by is None:
specification.created_by = user
def split_obs_ids_string(obs_ids_string: str) -> List[str]:
return [obs_id.strip() for obs_id in obs_ids_string.split(',')]
def create_work_specifications_for_group(group: Group, created_by: User, obs_ids: List[str]):
for obs_id in obs_ids:
create_work_specification_for_group(group, created_by, obs_id)
def create_work_specification_for_group(group: Group, created_by: User, obs_id: str):
workspecification = WorkSpecification(
processing_site=group.processing_site,
selected_workflow=group.selected_workflow,
selected_workflow_tag=group.selected_workflow_tag,
filters={"obs_id": obs_id},
group=group
)
set_post_submit_values(workspecification, created_by)
workspecification.save()