Skip to content

Commit

Permalink
Merge pull request #187 from City-of-Helsinki/land-use-agreement-impr…
Browse files Browse the repository at this point in the history
…ovements

Tune land use agreement models
  • Loading branch information
hkotkanen authored Nov 26, 2020
2 parents 444f49f + 8fb3de9 commit a3bae80
Show file tree
Hide file tree
Showing 8 changed files with 501 additions and 61 deletions.
22 changes: 20 additions & 2 deletions leasing/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,11 @@
from leasing.models.land_use_agreement import (
LandUseAgreement,
LandUseAgreementAddress,
LandUseAgreementConditionType,
LandUseAgreementConditionFormOfManagement,
LandUseAgreementDecision,
LandUseAgreementDecisionCondition,
LandUseAgreementDecisionConditionType,
LandUseAgreementDecisionType,
LandUseAgreementDefinition,
LandUseAgreementStatus,
LandUseAgreementType,
Expand Down Expand Up @@ -706,6 +710,17 @@ class LandUseAgreementAddressInline(admin.TabularInline):
extra = 0


class LandUseAgreementDecisionConditionInline(
FieldPermissionsAdminMixin, admin.StackedInline
):
model = LandUseAgreementDecisionCondition
extra = 0


class LandUseAgreementDecisionAdmin(admin.ModelAdmin):
inlines = [LandUseAgreementDecisionConditionInline]


class LandUseAgreementAdmin(admin.ModelAdmin):
inlines = [LandUseAgreementAddressInline]

Expand Down Expand Up @@ -781,5 +796,8 @@ class LandUseAgreementAdmin(admin.ModelAdmin):
admin.site.register(LandUseAgreementType, NameAdmin)
admin.site.register(LandUseAgreementStatus, NameAdmin)
admin.site.register(LandUseAgreementDefinition, NameAdmin)
admin.site.register(LandUseAgreementConditionType, NameAdmin)
admin.site.register(LandUseAgreementDecisionType, NameAdmin)
admin.site.register(LandUseAgreementConditionFormOfManagement, NameAdmin)
admin.site.register(LandUseAgreementDecisionConditionType, NameAdmin)
admin.site.register(LandUseAgreementDecision, LandUseAgreementDecisionAdmin)
admin.site.register(LandUseAgreement, LandUseAgreementAdmin)
18 changes: 18 additions & 0 deletions leasing/management/commands/set_group_model_permissions.py
Original file line number Diff line number Diff line change
Expand Up @@ -879,6 +879,24 @@
6: ("view",),
7: ("view", "add", "change", "delete"),
},
"landuseagreementdecision": {
1: ("view",),
2: ("view",),
3: ("view",),
4: ("view", "add", "change", "delete"),
5: ("view",),
6: ("view",),
7: ("view", "add", "change", "delete"),
},
"landuseagreementdecisioncondition": {
1: ("view",),
2: ("view",),
3: ("view",),
4: ("view", "add", "change", "delete"),
5: ("view",),
6: ("view",),
7: ("view", "add", "change", "delete"),
},
# Batchrun
"command": {
1: None,
Expand Down
213 changes: 213 additions & 0 deletions leasing/migrations/0025_landuseagreement_improvements.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,213 @@
# Generated by Django 2.2.13 on 2020-11-26 14:56

import datetime
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

dependencies = [
("leasing", "0024_landuseagreement_litigantcontact_as_m2m"),
]

operations = [
migrations.CreateModel(
name="LandUseAgreementDecisionConditionType",
fields=[
(
"id",
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("name", models.CharField(max_length=255, verbose_name="Name")),
],
options={
"verbose_name": "Land use agreement decision condition type",
"verbose_name_plural": "Land use agreement decision condition types",
"ordering": ["name"],
"abstract": False,
},
),
migrations.CreateModel(
name="LandUseAgreementDecisionType",
fields=[
(
"id",
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("name", models.CharField(max_length=255, verbose_name="Name")),
],
options={
"verbose_name": "Land use agreement decision type",
"verbose_name_plural": "Land use agreement decision types",
"ordering": ["name"],
"abstract": False,
},
),
migrations.RenameModel(
old_name="LandUseAgreementConditionType",
new_name="LandUseAgreementConditionFormOfManagement",
),
migrations.RemoveField(
model_name="landuseagreementcondition", name="description",
),
migrations.RemoveField(model_name="landuseagreementcondition", name="type",),
migrations.RemoveField(
model_name="landuseagreementlitigant", name="share_denominator",
),
migrations.RemoveField(
model_name="landuseagreementlitigant", name="share_numerator",
),
migrations.AddField(
model_name="landuseagreementcondition",
name="actualized_area",
field=models.PositiveIntegerField(
default=0, verbose_name="Actualized area (f-m2)"
),
preserve_default=False,
),
migrations.AddField(
model_name="landuseagreementcondition",
name="compensation_pc",
field=models.PositiveSmallIntegerField(
default=0, verbose_name="Compensation percent"
),
preserve_default=False,
),
migrations.AddField(
model_name="landuseagreementcondition",
name="form_of_management",
field=models.ForeignKey(
default=0,
on_delete=django.db.models.deletion.PROTECT,
related_name="+",
to="leasing.LandUseAgreementConditionFormOfManagement",
verbose_name="Form of management",
),
preserve_default=False,
),
migrations.AddField(
model_name="landuseagreementcondition",
name="obligated_area",
field=models.PositiveIntegerField(
default=0, verbose_name="Obligated area (f-m2)"
),
preserve_default=False,
),
migrations.AddField(
model_name="landuseagreementcondition",
name="subvention_amount",
field=models.PositiveIntegerField(
default=0, verbose_name="Subvention amount"
),
preserve_default=False,
),
migrations.AddField(
model_name="landuseagreementdecision",
name="description",
field=models.TextField(blank=True, null=True, verbose_name="Description"),
),
migrations.AlterField(
model_name="landuseagreementcondition",
name="supervised_date",
field=models.DateField(
default=datetime.date.today, verbose_name="Supervised date"
),
preserve_default=False,
),
migrations.AlterField(
model_name="landuseagreementcondition",
name="supervision_date",
field=models.DateField(
default=datetime.date.today, verbose_name="Supervision date"
),
preserve_default=False,
),
migrations.CreateModel(
name="LandUseAgreementDecisionCondition",
fields=[
(
"id",
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("deleted", models.DateTimeField(editable=False, null=True)),
(
"created_at",
models.DateTimeField(
auto_now_add=True, verbose_name="Time created"
),
),
(
"modified_at",
models.DateTimeField(auto_now=True, verbose_name="Time modified"),
),
(
"supervision_date",
models.DateField(
blank=True, null=True, verbose_name="Supervision date"
),
),
(
"supervised_date",
models.DateField(
blank=True, null=True, verbose_name="Supervised date"
),
),
(
"description",
models.TextField(blank=True, null=True, verbose_name="Description"),
),
(
"decision",
models.ForeignKey(
on_delete=django.db.models.deletion.PROTECT,
related_name="conditions",
to="leasing.LandUseAgreementDecision",
verbose_name="Decision",
),
),
(
"type",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.PROTECT,
related_name="+",
to="leasing.LandUseAgreementDecisionConditionType",
verbose_name="Type",
),
),
],
options={
"verbose_name": "Land use agreement decision condition",
"verbose_name_plural": "Land use agreement decision conditions",
},
),
migrations.AddField(
model_name="landuseagreementdecision",
name="type",
field=models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.PROTECT,
related_name="+",
to="leasing.LandUseAgreementDecisionType",
verbose_name="Type",
),
),
]
8 changes: 6 additions & 2 deletions leasing/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,9 @@
from .land_use_agreement import (
LandUseAgreement,
LandUseAgreementCondition,
LandUseAgreementConditionType,
LandUseAgreementConditionFormOfManagement,
LandUseAgreementDecisionCondition,
LandUseAgreementDecisionConditionType,
LandUseAgreementLitigant,
LandUseAgreementLitigantContact,
)
Expand Down Expand Up @@ -145,7 +147,9 @@
"InvoiceNote",
"LandUseAgreement",
"LandUseAgreementCondition",
"LandUseAgreementConditionType",
"LandUseAgreementConditionFormOfManagement",
"LandUseAgreementDecisionCondition",
"LandUseAgreementDecisionConditionType",
"LandUseAgreementLitigant",
"LandUseAgreementLitigantContact",
"Lease",
Expand Down
Loading

0 comments on commit a3bae80

Please sign in to comment.