From 0fb9e6dbc3749a5e4289b8b12a4fc112abb6bb79 Mon Sep 17 00:00:00 2001
From: Tom Zhao <tom.zhao@dsv.su.se>
Date: Tue, 12 Nov 2024 11:14:41 +0100
Subject: [PATCH] task/3382: Rename 'user_id' to 'creator_user_id' for
 checklist_template

---
 .../scipro/checklist/ChecklistTemplate.java   | 19 ++++++++++---------
 .../V390__harmonize_table_attribute_name.sql  |  6 +++---
 2 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/core/src/main/java/se/su/dsv/scipro/checklist/ChecklistTemplate.java b/core/src/main/java/se/su/dsv/scipro/checklist/ChecklistTemplate.java
index da5381aa9c..12ad047041 100755
--- a/core/src/main/java/se/su/dsv/scipro/checklist/ChecklistTemplate.java
+++ b/core/src/main/java/se/su/dsv/scipro/checklist/ChecklistTemplate.java
@@ -1,11 +1,5 @@
 package se.su.dsv.scipro.checklist;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Objects;
-
 import jakarta.persistence.Basic;
 import jakarta.persistence.CollectionTable;
 import jakarta.persistence.Column;
@@ -16,15 +10,19 @@ import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import jakarta.persistence.JoinColumn;
 import jakarta.persistence.JoinTable;
-import jakarta.persistence.Lob;
 import jakarta.persistence.ManyToMany;
 import jakarta.persistence.ManyToOne;
 import jakarta.persistence.Table;
-
 import se.su.dsv.scipro.system.DomainObject;
 import se.su.dsv.scipro.system.ProjectType;
 import se.su.dsv.scipro.system.User;
 
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Objects;
+
 @Entity
 @Table(name = "checklist_template")
 public class ChecklistTemplate extends DomainObject {
@@ -35,12 +33,15 @@ public class ChecklistTemplate extends DomainObject {
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     private Long id;
 
+    @Basic
     @Column(nullable = false)
     private String name;
 
     @Basic(optional = true)
+    @Column(name = "description")
     private String description;
 
+    @Basic
     @Column(name = "template_number")
     private int templateNumber = DEFAULT_TEMPLATE_NUMBER;
 
@@ -51,7 +52,7 @@ public class ChecklistTemplate extends DomainObject {
     private List<String> questions = new ArrayList<>(1);
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "user_id")
+    @JoinColumn(name = "creator_user_id", referencedColumnName = "id")
     private User creator;
 
     @ManyToMany
diff --git a/core/src/main/resources/db/migration/V390__harmonize_table_attribute_name.sql b/core/src/main/resources/db/migration/V390__harmonize_table_attribute_name.sql
index 57c3ea170c..813dfeeb53 100644
--- a/core/src/main/resources/db/migration/V390__harmonize_table_attribute_name.sql
+++ b/core/src/main/resources/db/migration/V390__harmonize_table_attribute_name.sql
@@ -1402,12 +1402,12 @@ alter table `checklist_template_checklist_category`
 alter table `checklist_template` drop foreign key `FK14DA6F3E44F4DBE`;
 alter table `checklist_template` drop key `FK14DA6F3E44F4DBE`;
 
-alter table `checklist_template` rename column `creator_id` to `user_id`;
+alter table `checklist_template` rename column `creator_id` to `creator_user_id`;
 alter table `checklist_template` rename column `templateNumber` to `template_number`;
 
 alter table `checklist_template`
-    add constraint fk_checklist_template_user_id
-        foreign key (user_id) references user (id)
+    add constraint fk_checklist_template_creator_user_id
+        foreign key (creator_user_id) references user (id)
             on delete cascade on update cascade;
 
 /*