Merge branch 'DEVELOP_BE' of ssh://172.18.22.160:29418/oK/PlannedGridMeasures/mics-backend into DEVELOP_BE
diff --git a/src/main/java/org/eclipse/openk/core/controller/GridMeasureBackendController.java b/src/main/java/org/eclipse/openk/core/controller/GridMeasureBackendController.java
index 3510ff0..9d98f86 100644
--- a/src/main/java/org/eclipse/openk/core/controller/GridMeasureBackendController.java
+++ b/src/main/java/org/eclipse/openk/core/controller/GridMeasureBackendController.java
@@ -142,27 +142,6 @@
         return gridMeasure;
     }
 
-    public List getGridMeasuresByUser(String user) {
-
-        List<TblGridMeasure> tblGridMeasuresList = new ArrayList<>();
-        List<GridMeasure> gridMeasuresList = new ArrayList<>();
-
-        try (AutoCloseEntityManager em = createEm()) {
-            em.getTransaction().begin();
-            TblGridMeasureDao gmDao = createTblGridMeasureDao(em);
-
-            GridMeasureMapper gmMapper = new GridMeasureMapper();
-            tblGridMeasuresList = gmDao.getGridMeasuresByUserName(user);
-            em.getTransaction().commit();
-
-            for (TblGridMeasure tgm : tblGridMeasuresList) {
-                GridMeasure vm = gmMapper.mapToVModel(tgm);
-                gridMeasuresList.add(vm);
-            }
-        }
-        return gridMeasuresList;
-    }
-
     public List<HGridMeasure> getHistoricalStatusChangesById(Integer gmId)  {
 
         List<HGridMeasure> hGridMeasures = new java.util.ArrayList<>();
diff --git a/src/main/java/org/eclipse/openk/resources/PlannedGridMeasuresResource.java b/src/main/java/org/eclipse/openk/resources/PlannedGridMeasuresResource.java
index c03a9b8..0e79f53 100644
--- a/src/main/java/org/eclipse/openk/resources/PlannedGridMeasuresResource.java
+++ b/src/main/java/org/eclipse/openk/resources/PlannedGridMeasuresResource.java
@@ -123,7 +123,7 @@
                 .getGridMeasures(modusr, filterObjectPro));
     }
 
-    @ApiOperation(value = "Get grid measure", notes = "This service retrieves a grid measure from the database using the id")
+    @ApiOperation(value = "Get grid measure", notes = "This service retrieves a grid measure from the database using the id and a filter-object")
     @ApiResponses( value ={ @ApiResponse(code = 200, message = "OK", response = GridMeasure.class,reference = "#/definitions/GridMeasure") } )
     @GET
     @Path("/getGridMeasure/{id}")
@@ -138,7 +138,7 @@
                 .getGridMeasureById(Integer.parseInt(id)));
     }
 
-    @ApiOperation(value = "Get grid measure by user", notes = "This service retrieves all grid measures with the current user as creator or modifier from the database")
+    /*@ApiOperation(value = "Get grid measure by user", notes = "This service retrieves all grid measures with the current user as creator or modifier from the database")
     @ApiResponses( value ={ @ApiResponse(code = 200, message = "OK", response = GridMeasure.class,reference = "#/definitions/GridMeasure") } )
     @GET
     @Path("/getGridMeasuresByUser")
@@ -149,7 +149,7 @@
                                    @HeaderParam(Globals.KEYCLOAK_AUTH_TAG) String jwt){
         return invokeRunnable(jwt, SecureType.NORMAL, modusr -> new GridMeasureBackendController()
                 .getGridMeasuresByUser(modusr));
-    }
+    }*/
 
 
     @ApiOperation(value = "Get Current Reminders", notes = "This service retrieves a list of Gridmeasure-Ids")
diff --git a/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java b/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
index 3523492..cb6284b 100644
--- a/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
+++ b/src/test/java/org/eclipse/openk/core/controller/GridMeasureBackendControllerTest.java
@@ -304,12 +304,19 @@
         expect(dao.getGridMeasuresByStatusId(anyInt())).andReturn(mList).anyTimes();
         expect(dao.getGridMeasuresExcludingStatusInTx(anyInt())).andReturn(mList).anyTimes();
         expect(dao.getGridMeasuresExcludingStatusInTx(anyInt(), anyInt())).andReturn(mList).anyTimes();
+
+        expect(dao.getGridMeasuresByUserName(anyString())).andReturn(mList).anyTimes();
+        expect(dao.getGridMeasuresByUserNameExcludingStatus(anyString(),anyInt())).andReturn(mList).anyTimes();
+        expect(dao.getGridMeasuresByUserNameExcludingStatus(anyString(),anyInt(), anyInt())).andReturn(mList).anyTimes();
+
         expect(dao.getMailAddressesFromGridmeasures()).andReturn(mailAddressesList).anyTimes();
         replay( dao );
         verify( dao );
         return dao;
     }
 
+
+
     private TblGridMeasureDao createTblGridMeasureDaoStatus() {
 
         java.util.List<TblGridMeasure> mList = new ArrayList<TblGridMeasure>();
@@ -737,13 +744,18 @@
 
     }
 
-/*    @Ignore
+    @Ignore
     @Test
     public void testGetGridMeasures() throws Exception {
         TblGridMeasureDao dao = createTblGridMeasureDao();
         tbc.tblGridMeasureDao = dao;
 
-        List<GridMeasure> retList = tbc.getGridMeasures(null);
+        FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(false);
+        filterObject.setCanceledStatusActive(false);
+        filterObject.setClosedStatusActive(false);
+
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
         List<TblGridMeasure> orgList = dao.getGridMeasuresInTx();
         assertEquals(orgList.size(), retList.size());
         assertEquals(orgList.get(2).getId(), retList.get(2).getId());
@@ -751,16 +763,16 @@
         assertEquals(orgList.get(0).getTitle(), retList.get(0).getTitle());
     }
 
-    @Ignore
     @Test
     public void testGetGridMeasuresWithFilter() throws Exception {
         TblGridMeasureDao dao = createTblGridMeasureDao();
         tbc.tblGridMeasureDao = dao;
         FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(false);
         filterObject.setCanceledStatusActive(true);
         filterObject.setClosedStatusActive(true);
 
-        List<GridMeasure> retList = tbc.getGridMeasures(filterObject);
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
         List<TblGridMeasure> orgList = dao.getGridMeasuresInTx();
         assertEquals(orgList.size(), retList.size());
         assertEquals(orgList.get(2).getId(), retList.get(2).getId());
@@ -768,50 +780,110 @@
         assertEquals(orgList.get(0).getTitle(), retList.get(0).getTitle());
     }
 
-    @Ignore
     @Test
     public void testGetGridMeasuresWithFilterWithoutClosed() throws Exception {
         TblGridMeasureDao dao = createTblGridMeasureDao();
         tbc.tblGridMeasureDao = dao;
         FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(false);
         filterObject.setCanceledStatusActive(true);
         filterObject.setClosedStatusActive(false);
 
-        List<GridMeasure> retList = tbc.getGridMeasures(filterObject);
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo",filterObject);
         List<TblGridMeasure> orgList = dao.getGridMeasuresExcludingStatusInTx(PlgmProcessState.CLOSED.getStatusValue());
         assertEquals(orgList.size(), retList.size());
         assertEquals(orgList.get(2).getId(), retList.get(2).getId());
     }
 
-    @Ignore
     @Test
     public void testGetGridMeasuresWithFilterWithoutCanceled() throws Exception {
         TblGridMeasureDao dao = createTblGridMeasureDao();
         tbc.tblGridMeasureDao = dao;
         FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(false);
         filterObject.setCanceledStatusActive(false);
         filterObject.setClosedStatusActive(true);
 
-        List<GridMeasure> retList = tbc.getGridMeasures(filterObject);
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
         List<TblGridMeasure> orgList = dao.getGridMeasuresExcludingStatusInTx(PlgmProcessState.CANCELED.getStatusValue());
         assertEquals(orgList.size(), retList.size());
         assertEquals(orgList.get(2).getId(), retList.get(2).getId());
     }
 
-    @Ignore
     @Test
     public void testGetGridMeasuresWithFilterWithoutCanceledAndClosed() throws Exception {
         TblGridMeasureDao dao = createTblGridMeasureDao();
         tbc.tblGridMeasureDao = dao;
         FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(false);
         filterObject.setCanceledStatusActive(false);
         filterObject.setClosedStatusActive(false);
 
-        List<GridMeasure> retList = tbc.getGridMeasures(filterObject);
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
         List<TblGridMeasure> orgList = dao.getGridMeasuresExcludingStatusInTx(PlgmProcessState.CANCELED.getStatusValue(), PlgmProcessState.CLOSED.getStatusValue());
         assertEquals(orgList.size(), retList.size());
         assertEquals(orgList.get(2).getId(), retList.get(2).getId());
-    }*/
+    }
+
+    @Test
+    public void testGetGridMeasuresOnlyUsersGMs() throws Exception {
+        TblGridMeasureDao dao = createTblGridMeasureDao();
+        tbc.tblGridMeasureDao = dao;
+        FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(true);
+        filterObject.setCanceledStatusActive(true);
+        filterObject.setClosedStatusActive(true);
+
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
+        List<TblGridMeasure> orgList = dao.getGridMeasuresByUserName("testhugo");
+        assertEquals(orgList.size(), retList.size());
+        assertEquals(orgList.get(2).getId(), retList.get(2).getId());
+    }
+
+    @Test
+    public void testGetGridMeasuresOnlyUsersGMsWithoutClosed() throws Exception {
+        TblGridMeasureDao dao = createTblGridMeasureDao();
+        tbc.tblGridMeasureDao = dao;
+        FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(true);
+        filterObject.setCanceledStatusActive(true);
+        filterObject.setClosedStatusActive(false);
+
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
+        List<TblGridMeasure> orgList = dao.getGridMeasuresByUserName("testhugo");
+        assertEquals(orgList.size(), retList.size());
+        assertEquals(orgList.get(2).getId(), retList.get(2).getId());
+    }
+
+    @Test
+    public void testGetGridMeasuresOnlyUsersGMsWithoutCanceled() throws Exception {
+        TblGridMeasureDao dao = createTblGridMeasureDao();
+        tbc.tblGridMeasureDao = dao;
+        FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(true);
+        filterObject.setCanceledStatusActive(false);
+        filterObject.setClosedStatusActive(true);
+
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
+        List<TblGridMeasure> orgList = dao.getGridMeasuresByUserName("testhugo");
+        assertEquals(orgList.size(), retList.size());
+        assertEquals(orgList.get(2).getId(), retList.get(2).getId());
+    }
+
+    @Test
+    public void testGetGridMeasuresOnlyUsersGMsWithoutCanceledAndClosed() throws Exception {
+        TblGridMeasureDao dao = createTblGridMeasureDao();
+        tbc.tblGridMeasureDao = dao;
+        FilterObject filterObject = new FilterObject();
+        filterObject.setOnlyUsersGMsDesired(true);
+        filterObject.setCanceledStatusActive(false);
+        filterObject.setClosedStatusActive(false);
+
+        List<GridMeasure> retList = tbc.getGridMeasures("testhugo", filterObject);
+        List<TblGridMeasure> orgList = dao.getGridMeasuresByUserName("testhugo");
+        assertEquals(orgList.size(), retList.size());
+        assertEquals(orgList.get(2).getId(), retList.get(2).getId());
+    }
 
     @Test
     public void testGetGridMeasureById() throws Exception {