Skip to content
Snippets Groups Projects
Commit 429399c5 authored by Tomáš Valenta's avatar Tomáš Valenta
Browse files

created_by, created_on

parent b9d465f7
No related branches found
No related tags found
No related merge requests found
Pipeline #12122 passed
...@@ -70,7 +70,7 @@ class OwnPermissionsMixin( ...@@ -70,7 +70,7 @@ class OwnPermissionsMixin(
lambda request, obj: obj.created_by != request.user, lambda request, obj: obj.created_by != request.user,
) )
): ):
def own_permissions_mixin_save_model(self, request, obj, form, change): def save_model(self, request, obj, form, change):
if obj.created_by is None: if obj.created_by is None:
obj.created_by = request.user obj.created_by = request.user
...@@ -153,10 +153,10 @@ class ContractAdmin( ...@@ -153,10 +153,10 @@ class ContractAdmin(
): ):
form = ContractAdminForm form = ContractAdminForm
ordering = ("name",) ordering = ("created_on", "name",)
search_fields = ("name",) search_fields = ("name",)
readonly_fields = ("created_by",) readonly_fields = ("created_by", "created_on",)
autocomplete_fields = ( autocomplete_fields = (
"primary_contract", "primary_contract",
"types", "types",
...@@ -235,6 +235,8 @@ class ContractAdmin( ...@@ -235,6 +235,8 @@ class ContractAdmin(
"fields": [ "fields": [
"issues", "issues",
"notes", "notes",
"created_by",
"created_on",
] ]
}, },
), ),
......
# Generated by Django 4.1.4 on 2023-03-30 08:35
import datetime
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('contracts', '0018_contractee_created_by_signee_created_by'),
]
operations = [
migrations.AddField(
model_name='contract',
name='created_on',
field=models.DateTimeField(default=datetime.datetime.now, verbose_name='Čas vytvoření'),
),
]
# Generated by Django 4.1.4 on 2023-03-30 08:36
import contracts.models
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('contracts', '0019_contract_created_on'),
]
operations = [
migrations.AlterField(
model_name='contract',
name='created_on',
field=models.DateTimeField(default=contracts.models.get_created_on_timestamp, verbose_name='Čas vytvoření'),
),
]
import datetime
import typing import typing
from django.conf import settings from django.conf import settings
...@@ -317,6 +318,10 @@ class ContractFilingArea(ContractCountMixin, NameStrMixin, models.Model): ...@@ -317,6 +318,10 @@ class ContractFilingArea(ContractCountMixin, NameStrMixin, models.Model):
verbose_name_plural = "Spisovny" verbose_name_plural = "Spisovny"
def get_created_on_timestamp():
return datetime.datetime.now(datetime.timezone.utc)
class Contract(NameStrMixin, models.Model): class Contract(NameStrMixin, models.Model):
# BEGIN Automatically set fields # BEGIN Automatically set fields
...@@ -330,6 +335,13 @@ class Contract(NameStrMixin, models.Model): ...@@ -330,6 +335,13 @@ class Contract(NameStrMixin, models.Model):
help_text="Informace není veřejně přístupná. Pokud vytváříš novou smlouvu, budeš to ty.", help_text="Informace není veřejně přístupná. Pokud vytváříš novou smlouvu, budeš to ty.",
) # WARNING: exclude in admin ) # WARNING: exclude in admin
created_on = models.DateTimeField(
blank=False,
null=False,
default=get_created_on_timestamp,
verbose_name="Čas vytvoření",
)
public_status_set_by = models.ForeignKey( public_status_set_by = models.ForeignKey(
User, User,
on_delete=models.SET_NULL, on_delete=models.SET_NULL,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment