diff --git a/src/main/java/se/su/dsv/scipro/datatables/checklist/CheckListTemplateDataPanel.java b/src/main/java/se/su/dsv/scipro/datatables/checklist/CheckListTemplateDataPanel.java
index bf4c9c5098..8aeb42003a 100644
--- a/src/main/java/se/su/dsv/scipro/datatables/checklist/CheckListTemplateDataPanel.java
+++ b/src/main/java/se/su/dsv/scipro/datatables/checklist/CheckListTemplateDataPanel.java
@@ -111,7 +111,8 @@ public abstract class CheckListTemplateDataPanel extends Panel {
         columns[4] = new ClickableDeleteColumn<CheckListTemplate>(Model.of("Delete"), "name") {
             @Override
             protected void onClick(IModel<CheckListTemplate> clicked, AjaxRequestTarget target) {
-                //do something
+                checklistTemplateService.lowerTemplateNumbersAbove(clicked.getObject().getTemplateNumber());
+                checklistTemplateService.delete(clicked.getObject().getId());
                 target.addComponent(table);
             }
         };
diff --git a/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/ChecklistTemplateServiceImpl.java b/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/ChecklistTemplateServiceImpl.java
index 227900910b..cdca2660d6 100644
--- a/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/ChecklistTemplateServiceImpl.java
+++ b/src/main/java/se/su/dsv/scipro/springdata/serviceimpls/ChecklistTemplateServiceImpl.java
@@ -108,6 +108,14 @@ public class ChecklistTemplateServiceImpl extends AbstractQueryService<CheckList
         return clt;
     }
 
+    @Override
+    public void lowerTemplateNumbersAbove(int templateNumber) {
+        for (CheckListTemplate clt : checklistTemplateRepo.findAllByTemplateNumberGreaterThan(templateNumber)){
+            clt.setTemplateNumber(clt.getTemplateNumber() -1);
+            System.out.println(clt.getName() + " " + clt.getTemplateNumber());
+        }
+    }
+
 
     private BooleanExpression filterStringIsCreatorName(String filterString){
         return QCheckListTemplate.checkListTemplate.creator.firstName.contains(filterString).or(QCheckListTemplate.checkListTemplate.creator.lastName.contains(filterString));
diff --git a/src/main/java/se/su/dsv/scipro/springdata/services/ChecklistTemplateService.java b/src/main/java/se/su/dsv/scipro/springdata/services/ChecklistTemplateService.java
index cb782af83c..0a3f0700f8 100644
--- a/src/main/java/se/su/dsv/scipro/springdata/services/ChecklistTemplateService.java
+++ b/src/main/java/se/su/dsv/scipro/springdata/services/ChecklistTemplateService.java
@@ -16,5 +16,5 @@ public interface ChecklistTemplateService extends CrudService<CheckListTemplate,
     void upChecklistTemplate(CheckListTemplate checkListTemplate);
     void downChecklistTemplate(CheckListTemplate checkListTemplate);
     CheckListTemplate prepareNewTemplate();
-
+    void lowerTemplateNumbersAbove(int templateNumber);
 }