diff --git a/.gitattributes b/.gitattributes index 27dfb3738524b158d852e9d4e3d805b45e7945f5..f3877990fe9ae8d063e7a90298fd41346de0a1b3 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4245,7 +4245,6 @@ SAS/LSMR/src/lsmr/lsmrapp/__init__.py -text SAS/LSMR/src/lsmr/lsmrapp/admin.py -text SAS/LSMR/src/lsmr/lsmrapp/apps.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/0001_initial.py -text -SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180712_0931.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py -text SAS/LSMR/src/lsmr/lsmrapp/migrations/CMakeLists.txt -text SAS/LSMR/src/lsmr/lsmrapp/migrations/__init__.py -text diff --git a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180712_0931.py b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180712_0931.py deleted file mode 100644 index 2ffd18001c1a51245d245878042c3cd75f2230b0..0000000000000000000000000000000000000000 --- a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0002_auto_20180712_0931.py +++ /dev/null @@ -1,441 +0,0 @@ -# Generated by Django 2.0.6 on 2018-07-12 09:31 - -import django.contrib.postgres.fields -import django.contrib.postgres.fields.jsonb -import django.contrib.postgres.indexes -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('lsmrapp', '0001_initial'), - ] - - operations = [ - migrations.CreateModel( - name='CopyReasonChoice', - fields=[ - ('value', models.CharField(editable=False, max_length=30, primary_key=True, serialize=False, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='Cycle', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('start', models.DateTimeField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DataformatChoice', - fields=[ - ('value', models.CharField(editable=False, max_length=30, primary_key=True, serialize=False, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DatatypeChoice', - fields=[ - ('value', models.CharField(editable=False, max_length=30, primary_key=True, serialize=False, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DefaultGeneratorTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DefaultRunTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DefaultWorkRelationSelectionTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='DefaultWorkRequestTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='GeneratorTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('description', models.CharField(max_length=255)), - ('version', models.CharField(max_length=30)), - ('schema', django.contrib.postgres.fields.jsonb.JSONField()), - ('create_func', models.CharField(max_length=30)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='Project', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('priority', models.IntegerField(default=0)), - ('can_trigger', models.BooleanField(default=False)), - ('private_data', models.BooleanField(default=True)), - ('cycle', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='projects', to='lsmrapp.Cycle')), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='RoleChoice', - fields=[ - ('value', models.CharField(editable=False, max_length=30, primary_key=True, serialize=False, unique=True)), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='Run', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('requirements_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('do_cancel', models.BooleanField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='RunBlueprint', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('requirements_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('generator_param', models.CharField(max_length=200)), - ('copies', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='copied_from', to='lsmrapp.RunBlueprint')), - ('copy_reason', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.CopyReasonChoice')), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='RunSet', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('generator_parameters_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('generator_template', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='lsmrapp.GeneratorTemplate')), - ('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='run_sets', to='lsmrapp.Project')), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='RunTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('description', models.CharField(max_length=255)), - ('version', models.CharField(max_length=30)), - ('schema', django.contrib.postgres.fields.jsonb.JSONField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='Tags', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('title', models.CharField(max_length=30)), - ('description', models.CharField(max_length=255)), - ], - ), - migrations.CreateModel( - name='WorkIORole', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('dataformat', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.DataformatChoice')), - ('datatype', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.DatatypeChoice')), - ], - ), - migrations.CreateModel( - name='WorkRelationSelectionTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('description', models.CharField(max_length=255)), - ('version', models.CharField(max_length=30)), - ('schema', django.contrib.postgres.fields.jsonb.JSONField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='WorkRequest', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('requirements_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('do_cancel', models.BooleanField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='WorkRequestBlueprint', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('requirements_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('copies', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='copied_from', to='lsmrapp.WorkRequestBlueprint')), - ('copy_reason', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.CopyReasonChoice')), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='WorkRequestRelation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('selection_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='WorkRequestRelationBlueprint', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('selection_doc', django.contrib.postgres.fields.jsonb.JSONField()), - ('blueprint', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.WorkRelationSelectionTemplate')), - ('consumer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='consumed_by', to='lsmrapp.WorkRequestBlueprint')), - ('dataformat', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.DataformatChoice')), - ('input_role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='inputs_work_request_relation_blueprint', to='lsmrapp.WorkIORole')), - ('output_role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='outputs_work_request_relation_blueprint', to='lsmrapp.WorkIORole')), - ('producer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='produced_by', to='lsmrapp.WorkRequestBlueprint')), - ], - options={ - 'abstract': False, - }, - ), - migrations.CreateModel( - name='WorkRequestTemplate', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('tags', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=30), blank=True, size=8)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('name', models.CharField(max_length=30)), - ('description', models.CharField(max_length=255)), - ('version', models.CharField(max_length=30)), - ('schema', django.contrib.postgres.fields.jsonb.JSONField()), - ('validation_code_js', models.CharField(max_length=30)), - ], - options={ - 'abstract': False, - }, - ), - migrations.AddField( - model_name='workrequestrelation', - name='blueprint', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.WorkRequestRelationBlueprint'), - ), - migrations.AddField( - model_name='workrequestrelation', - name='consumer', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='consumed_by', to='lsmrapp.WorkRequest'), - ), - migrations.AddField( - model_name='workrequestrelation', - name='dataformat', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.DataformatChoice'), - ), - migrations.AddField( - model_name='workrequestrelation', - name='input_role', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='inputs_work_request_relation', to='lsmrapp.WorkIORole'), - ), - migrations.AddField( - model_name='workrequestrelation', - name='output_role', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='outputs_work_request_relation', to='lsmrapp.WorkIORole'), - ), - migrations.AddField( - model_name='workrequestrelation', - name='producer', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='produced_by', to='lsmrapp.WorkRequest'), - ), - migrations.AddField( - model_name='workrequest', - name='blueprint', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_work_requests', to='lsmrapp.WorkRequestBlueprint'), - ), - migrations.AddField( - model_name='workrequest', - name='template', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='lsmrapp.WorkRequestTemplate'), - ), - migrations.AddField( - model_name='workiorole', - name='inputs', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='role_input', to='lsmrapp.WorkRequestTemplate'), - ), - migrations.AddField( - model_name='workiorole', - name='outputs', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='role_output', to='lsmrapp.WorkRequestTemplate'), - ), - migrations.AddField( - model_name='workiorole', - name='role', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lsmrapp.RoleChoice'), - ), - migrations.AddField( - model_name='runblueprint', - name='generator_source', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='lsmrapp.RunSet'), - ), - migrations.AddField( - model_name='runblueprint', - name='run_set', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='run_blueprints', to='lsmrapp.RunSet'), - ), - migrations.AddField( - model_name='run', - name='blueprint', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_runs', to='lsmrapp.RunBlueprint'), - ), - migrations.AddField( - model_name='run', - name='template', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='lsmrapp.RunTemplate'), - ), - migrations.AddField( - model_name='defaultworkrequesttemplate', - name='template', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='lsmrapp.WorkRequestTemplate'), - ), - migrations.AddField( - model_name='defaultworkrelationselectiontemplate', - name='template', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='lsmrapp.WorkRelationSelectionTemplate'), - ), - migrations.AddField( - model_name='defaultruntemplate', - name='template', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='lsmrapp.RunTemplate'), - ), - migrations.AddField( - model_name='defaultgeneratortemplate', - name='template', - field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='lsmrapp.GeneratorTemplate'), - ), - migrations.AddIndex( - model_name='defaultworkrequesttemplate', - index=django.contrib.postgres.indexes.GinIndex(fields=['tags'], name='lsmrapp_def_tags_2e8945_gin'), - ), - migrations.AddIndex( - model_name='defaultworkrelationselectiontemplate', - index=django.contrib.postgres.indexes.GinIndex(fields=['tags'], name='lsmrapp_def_tags_eef600_gin'), - ), - migrations.AddIndex( - model_name='defaultruntemplate', - index=django.contrib.postgres.indexes.GinIndex(fields=['tags'], name='lsmrapp_def_tags_8d5d48_gin'), - ), - migrations.AddIndex( - model_name='defaultgeneratortemplate', - index=django.contrib.postgres.indexes.GinIndex(fields=['tags'], name='lsmrapp_def_tags_2b9ef8_gin'), - ), - ] diff --git a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py index f3b9c594eddb4f5d354b3d1733933f9a303d2d80..939f977bbd9504b817dc25eab3ac09437732c168 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/migrations/0003_populate.py @@ -5,7 +5,7 @@ from ..populate import * class Migration(migrations.Migration): dependencies = [ - ('lsmrapp', '0002_auto_20180712_0931'), + ('lsmrapp', '0002_auto_20180712_1621'), ] operations = [ migrations.RunPython(populate_choices) ] diff --git a/SAS/LSMR/src/lsmr/lsmrapp/models/specification.py b/SAS/LSMR/src/lsmr/lsmrapp/models/specification.py index b326b5fa5b7e0449f4dcd44bbb15f736aa218bf5..60a8d6b6ee0f37991b2196a61dd30e0c6750288d 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/models/specification.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/models/specification.py @@ -205,12 +205,12 @@ class RunSet(UserDefinedCommon): project = ForeignKey('Project', related_name="run_sets", on_delete=CASCADE) -class RunBlueprint(UserDefinedCommon): +class RunDraft(UserDefinedCommon): requirements_doc = JSONField() - copies = ForeignKey('RunBlueprint', related_name="copied_from", on_delete=SET_NULL, null=True) + copies = ForeignKey('RunDraft', related_name="copied_from", on_delete=SET_NULL, null=True) copy_reason = ForeignKey('CopyReasonChoice', null=False, on_delete=CASCADE) generator_param = CharField(max_length=200) # todo: check if the field size is good enough - run_set = ForeignKey(RunSet, related_name='run_blueprints', on_delete=CASCADE) + run_set = ForeignKey(RunSet, related_name='run_drafts', on_delete=CASCADE) generator_source = ForeignKey(RunSet, on_delete=SET_NULL, null=True) @@ -218,12 +218,12 @@ class Run(SystemDefinedCommon): requirements_doc = JSONField() do_cancel = BooleanField() template = ForeignKey('RunTemplate', on_delete=SET_NULL, null=True) - blueprint = ForeignKey('RunBlueprint', related_name='related_runs', on_delete=CASCADE) + draft = ForeignKey('RunDraft', related_name='related_runs', on_delete=CASCADE) -class WorkRequestBlueprint(UserDefinedCommon): +class WorkRequestDraft(UserDefinedCommon): requirements_doc = JSONField() - copies = ForeignKey('WorkRequestBlueprint', related_name="copied_from", on_delete=SET_NULL, null=True) + copies = ForeignKey('WorkRequestDraft', related_name="copied_from", on_delete=SET_NULL, null=True) copy_reason = ForeignKey('CopyReasonChoice', null=False, on_delete=CASCADE) @@ -231,17 +231,17 @@ class WorkRequest(SystemDefinedCommon): requirements_doc = JSONField() do_cancel = BooleanField() template = ForeignKey('WorkRequestTemplate', on_delete=SET_NULL, null=True) - blueprint = ForeignKey('WorkRequestBlueprint', related_name='related_work_requests', on_delete=CASCADE) + draft = ForeignKey('WorkRequestDraft', related_name='related_work_requests', on_delete=CASCADE) -class WorkRequestRelationBlueprint(UserDefinedCommon): +class WorkRequestRelationDraft(UserDefinedCommon): selection_doc = JSONField() dataformat = ForeignKey('DataformatChoice', null=False, on_delete=CASCADE) - producer = ForeignKey(WorkRequestBlueprint, related_name='produced_by', on_delete=CASCADE) - consumer = ForeignKey(WorkRequestBlueprint, related_name='consumed_by', on_delete=CASCADE) - input_role = ForeignKey(WorkIORole, related_name='inputs_work_request_relation_blueprint', on_delete=CASCADE) - output_role = ForeignKey(WorkIORole, related_name='outputs_work_request_relation_blueprint', on_delete=CASCADE) - blueprint = ForeignKey(WorkRelationSelectionTemplate, on_delete=CASCADE) # todo: This differs from the diagram, where there is a One(Blueprint)-to-Many(Template) reference, but I expect that the diagram is not correct + producer = ForeignKey(WorkRequestDraft, related_name='produced_by', on_delete=CASCADE) + consumer = ForeignKey(WorkRequestDraft, related_name='consumed_by', on_delete=CASCADE) + input_role = ForeignKey(WorkIORole, related_name='inputs_work_request_relation_draft', on_delete=CASCADE) + output_role = ForeignKey(WorkIORole, related_name='outputs_work_request_relation_draft', on_delete=CASCADE) + draft = ForeignKey(WorkRelationSelectionTemplate, on_delete=CASCADE) class WorkRequestRelation(SystemDefinedCommon): @@ -251,5 +251,5 @@ class WorkRequestRelation(SystemDefinedCommon): consumer = ForeignKey(WorkRequest, related_name='consumed_by', on_delete=CASCADE) input_role = ForeignKey(WorkIORole, related_name='inputs_work_request_relation', on_delete=CASCADE) output_role = ForeignKey(WorkIORole, related_name='outputs_work_request_relation', on_delete=CASCADE) - blueprint = ForeignKey(WorkRequestRelationBlueprint, on_delete=CASCADE) + draft = ForeignKey(WorkRequestRelationDraft, on_delete=CASCADE) diff --git a/SAS/LSMR/src/lsmr/lsmrapp/serializers/specification.py b/SAS/LSMR/src/lsmr/lsmrapp/serializers/specification.py index d2c016f7366a179f26813690bf5b31fe0b6486fe..6de707e23809da7dfa8a6323156c3c3d0d1690d7 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/serializers/specification.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/serializers/specification.py @@ -108,9 +108,9 @@ class RunSetSerializer(serializers.HyperlinkedModelSerializer): fields = '__all__' -class RunBlueprintSerializer(serializers.HyperlinkedModelSerializer): +class RunDraftSerializer(serializers.HyperlinkedModelSerializer): class Meta: - model = models.RunBlueprint + model = models.RunDraft fields = '__all__' @@ -120,9 +120,9 @@ class RunSerializer(serializers.HyperlinkedModelSerializer): fields = '__all__' -class WorkRequestBlueprintSerializer(serializers.HyperlinkedModelSerializer): +class WorkRequestDraftSerializer(serializers.HyperlinkedModelSerializer): class Meta: - model = models.WorkRequestBlueprint + model = models.WorkRequestDraft fields = '__all__' @@ -132,9 +132,9 @@ class WorkRequestSerializer(serializers.HyperlinkedModelSerializer): fields = '__all__' -class WorkRequestRelationBlueprintSerializer(serializers.HyperlinkedModelSerializer): +class WorkRequestRelationDraftSerializer(serializers.HyperlinkedModelSerializer): class Meta: - model = models.WorkRequestRelationBlueprint + model = models.WorkRequestRelationDraft fields = '__all__' diff --git a/SAS/LSMR/src/lsmr/lsmrapp/viewsets/specification.py b/SAS/LSMR/src/lsmr/lsmrapp/viewsets/specification.py index ef0c7390e15fe4533b21ebe5fb226e735fca1cbf..e3f5081dd0155aab4d2990d7702b43305bf66fb9 100644 --- a/SAS/LSMR/src/lsmr/lsmrapp/viewsets/specification.py +++ b/SAS/LSMR/src/lsmr/lsmrapp/viewsets/specification.py @@ -91,9 +91,9 @@ class RunSetViewSet(viewsets.ModelViewSet): serializer_class = serializers.RunSetSerializer -class RunBlueprintViewSet(viewsets.ModelViewSet): - queryset = models.RunBlueprint.objects.all() - serializer_class = serializers.RunBlueprintSerializer +class RunDraftViewSet(viewsets.ModelViewSet): + queryset = models.RunDraft.objects.all() + serializer_class = serializers.RunDraftSerializer class RunViewSet(viewsets.ModelViewSet): @@ -101,9 +101,9 @@ class RunViewSet(viewsets.ModelViewSet): serializer_class = serializers.RunSerializer -class WorkRequestBlueprintViewSet(viewsets.ModelViewSet): - queryset = models.WorkRequestBlueprint.objects.all() - serializer_class = serializers.WorkRequestBlueprintSerializer +class WorkRequestDraftViewSet(viewsets.ModelViewSet): + queryset = models.WorkRequestDraft.objects.all() + serializer_class = serializers.WorkRequestDraftSerializer class WorkRequestViewSet(viewsets.ModelViewSet): @@ -111,9 +111,9 @@ class WorkRequestViewSet(viewsets.ModelViewSet): serializer_class = serializers.WorkRequestSerializer -class WorkRequestRelationBlueprintViewSet(viewsets.ModelViewSet): - queryset = models.WorkRequestRelationBlueprint.objects.all() - serializer_class = serializers.WorkRequestRelationBlueprintSerializer +class WorkRequestRelationDraftViewSet(viewsets.ModelViewSet): + queryset = models.WorkRequestRelationDraft.objects.all() + serializer_class = serializers.WorkRequestRelationDraftSerializer class WorkRequestRelationViewSet(viewsets.ModelViewSet): diff --git a/SAS/LSMR/src/lsmr/urls.py b/SAS/LSMR/src/lsmr/urls.py index e435cb9b6e129a8084ae38e080c75b8b5577ea0d..ae774736685a213ec95a441d1f7a81f143656b8e 100644 --- a/SAS/LSMR/src/lsmr/urls.py +++ b/SAS/LSMR/src/lsmr/urls.py @@ -57,9 +57,9 @@ router.register(r'default_work_relation_selection_template', viewsets.DefaultWor router.register(r'cycle', viewsets.CycleViewSet) router.register(r'project', viewsets.ProjectViewSet) router.register(r'run_set', viewsets.RunSetViewSet) -router.register(r'work_request_blueprint', viewsets.WorkRequestBlueprintViewSet) +router.register(r'work_request_draft', viewsets.WorkRequestDraftViewSet) router.register(r'work_request', viewsets.WorkRequestViewSet) -router.register(r'work_request_relation_blueprint', viewsets.WorkRequestRelationBlueprintViewSet) +router.register(r'work_request_relation_draft', viewsets.WorkRequestRelationDraftViewSet) router.register(r'work_request_relation', viewsets.WorkRequestRelationViewSet)