From 711a26a9f9fefce377c462491dc47ea8ab0fc14a Mon Sep 17 00:00:00 2001
From: Carlos Vega <carlos.vega@uni.lu>
Date: Thu, 19 Mar 2020 17:21:04 +0100
Subject: [PATCH] add model for provenance

---
 smash/web/models/provenance.py | 47 ++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 smash/web/models/provenance.py

diff --git a/smash/web/models/provenance.py b/smash/web/models/provenance.py
new file mode 100644
index 00000000..06d5d831
--- /dev/null
+++ b/smash/web/models/provenance.py
@@ -0,0 +1,47 @@
+# coding=utf-8
+from django.db import models
+
+
+class Provenance(models.Model):
+    class Meta:
+        app_label = 'web'
+
+
+    modified_table = models.CharField(max_length=1024,
+                                     verbose_name='Modified table',
+                                     blank=False, null=False
+                                    )
+
+    modified_table_id = models.CharField(max_length=1024,
+                                     verbose_name='Modified table row',
+                                     blank=False, null=False
+                                    )
+
+    modification_date = models.DateTimeField(
+        verbose_name='Modified on',
+        null=False, blank=False,
+        auto_now_add=True
+    )
+
+    modification_author = models.ForeignKey("web.Worker",
+                            verbose_name='Worker who modified the row',
+                            null=True, blank=False
+                        )
+
+    modified_field = models.CharField(max_length=1024,
+                                     verbose_name='Modified field',
+                                     blank='', null=False
+                                    )
+
+    previous_value = models.CharField(max_length=2048,
+                                      verbose_name='Previous Value',
+                                      blank=True, null=True)
+
+    new_value = models.CharField(max_length=2048,
+                                      verbose_name='New Value',
+                                      blank=True, null=True)    
+
+    modification_description = models.CharField(max_length=20480,
+                                     verbose_name='Description',
+                                     blank=False, null=False
+                                    )
\ No newline at end of file
-- 
GitLab