Merge branch 'DEVELOP' of ssh://git.eclipse.org:29418/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.backend into SI-381_get_adresses
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGrid.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGrid.java
index 37d81e5..cba6653 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGrid.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGrid.java
@@ -31,13 +31,19 @@
@Component
public class GfiGrid extends ProcessGrid {
public GfiGrid() throws ProcessException {
- DecisionTask decidePlanned = register( NEW, new DecideFailureInfoPlanned());
+ DecisionTask decidePlanned = new DecideFailureInfoPlanned();
+
ProcessTask storeEditStatusPlanned = new StoreEditStatusServiceTask( PLANNED );
+
ProcessTask enterMessage = register( PLANNED,
new UIStoreFailureInformationTask("State PLANNED UI Task", true));
+ register( NEW, enterMessage );
+
ProcessTask storeEditStatusCreated = new StoreEditStatusServiceTask( CREATED );
ProcessTask qualifyMessage = register( CREATED,
new UIStoreFailureInformationTask( "State CREATED UI Task", true));
+ register( UPDATED, qualifyMessage);
+
DecisionTask decideCanceled = new DecideFailureInfoCanceled();
ProcessTask storeEditStatusQualified = new ShortcutTask( QUALIFIED );
ProcessTask storeEditStatusCanceled = new ShortcutTask( CANCELED );
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/StationController.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/StationController.java
new file mode 100644
index 0000000..f8db4c2
--- /dev/null
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/controller/StationController.java
@@ -0,0 +1,46 @@
+/*
+ *******************************************************************************
+ * Copyright (c) 2019 Contributors to the Eclipse Foundation
+ *
+ * See the NOTICE file(s) distributed with this work for additional
+ * information regarding copyright ownership.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v. 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *******************************************************************************
+ */
+package org.eclipse.openk.gridfailureinformation.controller;
+
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import lombok.extern.log4j.Log4j2;
+import org.eclipse.openk.gridfailureinformation.service.StationService;
+import org.eclipse.openk.gridfailureinformation.viewmodel.StationDto;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.annotation.Secured;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Log4j2
+@RestController
+@RequestMapping("/stations")
+public class StationController {
+
+ @Autowired
+ private StationService stationService;
+
+ @Secured({"ROLE_GRID-FAILURE-ADMIN", "ROLE_GRID-FAILURE-CREATOR", "ROLE_GRID-FAILURE-QUALIFIER", "ROLE_GRID-FAILURE-PUBLISHER"})
+ @ApiOperation(value = "Anzeige aller Stationen")
+ @ApiResponses(value = {@ApiResponse(code = 200, message = "Erfolgreich durchgeführt")})
+ @GetMapping
+ public List<StationDto> findStations() {
+ return stationService.getStations();
+ }
+}
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/repository/StationRepository.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/repository/StationRepository.java
index aacd5ca..99b93ec 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/repository/StationRepository.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/repository/StationRepository.java
@@ -17,6 +17,8 @@
import org.eclipse.openk.gridfailureinformation.model.TblStation;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -30,5 +32,7 @@
Optional<TblStation> findByUuid(UUID uuid);
+ @Query("select s from TblStation s where s.stationId = :stationid and s.stationName = :stationname")
+ List<TblStation> findStationsByIdAndName(@Param("stationid") String stationid, @Param("stationname") String stationname);
}
diff --git a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/StationService.java b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/StationService.java
index 0100a00..03d2cf8 100644
--- a/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/StationService.java
+++ b/gfsBackendService/src/main/java/org/eclipse/openk/gridfailureinformation/service/StationService.java
@@ -11,7 +11,7 @@
*
* SPDX-License-Identifier: EPL-2.0
*******************************************************************************
-*/
+ */
package org.eclipse.openk.gridfailureinformation.service;
import org.eclipse.openk.gridfailureinformation.mapper.StationMapper;
@@ -34,10 +34,15 @@
public List<StationDto> getStations() {
return stationRepository.findAll().stream()
- .map( stationMapper::toStationDto )
+ .map(stationMapper::toStationDto)
.collect(Collectors.toList());
}
+ public List<StationDto> getStationsByIdAndName(String stationId, String stationName) {
+ return stationRepository.findStationsByIdAndName(stationId, stationName).stream()
+ .map(stationMapper::toStationDto)
+ .collect(Collectors.toList());
+ }
}
diff --git a/gfsBackendService/src/main/resources/application_localdev.yml b/gfsBackendService/src/main/resources/application_localdev.yml
index 6d8f61a..9500bf2 100644
--- a/gfsBackendService/src/main/resources/application_localdev.yml
+++ b/gfsBackendService/src/main/resources/application_localdev.yml
@@ -39,7 +39,7 @@
jwt:
tokenHeader: Authorization
- useStaticJwt: false
+ useStaticJwt: true
staticJwt: eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJIYlI3Z2pobmE2eXJRZnZJTWhUSV9tY2g3ZmtTQWVFX3hLTjBhZVl0bjdjIn0.eyJqdGkiOiJlMmQ2YjE3Zi1iMWUyLTQxMzUtOTM1YS0zOWRiMmFkMzE5MjYiLCJleHAiOjE1ODYwMTI1MzUsIm5iZiI6MCwiaWF0IjoxNTg2MDEyMjM1LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvRWxvZ2Jvb2siLCJhdWQiOiJlbG9nYm9vay1iYWNrZW5kIiwic3ViIjoiMzMzMmRmOWItYmYyMy00Nzg5LThmMmQtM2JhZTM2MzA4YzNkIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoiZWxvZ2Jvb2stYmFja2VuZCIsImF1dGhfdGltZSI6MCwic2Vzc2lvbl9zdGF0ZSI6IjYxMzRmN2RhLTdlNjQtNDJjNy05NjYyLTY0ZGNhZTk1MjQ5YSIsImFjciI6IjEiLCJhbGxvd2VkLW9yaWdpbnMiOlsiKiJdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsiZ3JpZC1mYWlsdXJlLXF1YWxpZmllciIsImdyaWQtZmFpbHVyZS1jcmVhdG9yIiwiZ3JpZC1mYWlsdXJlLWFjY2VzcyIsImdyaWQtZmFpbHVyZS1hZG1pbiIsImdyaWQtZmFpbHVyZS1wdWJsaXNoZXIiXX0sInJlc291cmNlX2FjY2VzcyI6e30sIm5hbWUiOiJTdGF0aWMgSldUIiwicHJlZmVycmVkX3VzZXJuYW1lIjoidGVzdHVzZXJfZ2ZpX3N0YXRpY2p3dCIsImdpdmVuX25hbWUiOiJTdGF0aWMiLCJmYW1pbHlfbmFtZSI6IkpXVCJ9.SWpekZHxlDNWbaaZ2fHlts00c1Xi6yIb0ZMr9f8ujSI_6LVYuHx8FTt6g9tinyVcx5gQKfrooRW28Cdq1EVuexNtTtZ7ciKk4iEo_kgqUgRvHCwO7HQl2igpoGErheYD0kj3-u4Te6NPHKtXWIEfGyl0ZQBD2c4vtaCTQAy5Ilb146G7p_IcLYaZgpJPlGG0Bf2oZ0UqTQsrXxRJkXWARDz8D4lIrN84lAbqNlPlSZDN-8xp_z6mXgWpvgeZuFoYHItJMg2cjR0SXH-ycbWVXctRNQJfTWR0acIhp_nB_Xe6JlUx2vls99EVw-WUrd0hc8Y9658HdeyktvpQLDxP2g
services:
diff --git a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/DecideFailureInfoPlannedTest.java b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/DecideFailureInfoPlannedTest.java
index 48dfe7f..ee789c2 100644
--- a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/DecideFailureInfoPlannedTest.java
+++ b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/DecideFailureInfoPlannedTest.java
@@ -59,25 +59,4 @@
.setEditStatusAndStore(any( UUID.class ), eq(GfiProcessState.CREATED));
}
- @Test
- public void shouldcall_DecideFailureInfoPlanned_Result_Planned() {
- RefStatus refStatus = MockDataHelper.mockRefStatus();
- refStatus.setId(GfiProcessState.NEW.getStatusValue());
-
- FailureInformationDto fiDto = MockDataHelper.mockFailureInformationDto();
- fiDto.setStatusInternId(UUID.randomUUID());
-
- TblFailureInformation fiTbl = MockDataHelper.mockTblFailureInformation();
- fiTbl.setId(777L);
-
- when(processHelper.isFailureInfoPlanned(any( FailureInformationDto.class ))).thenReturn(true);
- when(statusRepository.findByUuid(any( UUID.class ))).thenReturn(Optional.of(refStatus));
- when(failureInformationRepository.findByUuid(any(UUID.class))).thenReturn(Optional.of(fiTbl));
- when(failureInformationRepository.save(any(TblFailureInformation.class))).thenReturn(fiTbl);
-
- FailureInformationDto savedDto = failureInformationService.updateFailureInfo(fiDto);
-
- verify(processHelper, times(1))
- .setEditStatusAndStore(any( UUID.class ), eq(GfiProcessState.PLANNED));
- }
}
diff --git a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGridTest.java b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGridTest.java
index 5e2ac16..301302e 100644
--- a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGridTest.java
+++ b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/GfiGridTest.java
@@ -16,13 +16,47 @@
package org.eclipse.openk.gridfailureinformation.bpmn.impl;
import org.eclipse.openk.gridfailureinformation.bpmn.base.*;
+import org.eclipse.openk.gridfailureinformation.bpmn.impl.tasks.ProcessHelper;
+import org.eclipse.openk.gridfailureinformation.config.TestConfiguration;
+import org.eclipse.openk.gridfailureinformation.model.RefStatus;
+import org.eclipse.openk.gridfailureinformation.model.TblFailureInformation;
+import org.eclipse.openk.gridfailureinformation.repository.FailureInformationRepository;
+import org.eclipse.openk.gridfailureinformation.repository.StatusRepository;
+import org.eclipse.openk.gridfailureinformation.service.FailureInformationService;
+import org.eclipse.openk.gridfailureinformation.support.MockDataHelper;
+import org.eclipse.openk.gridfailureinformation.viewmodel.FailureInformationDto;
import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
+import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.test.context.ContextConfiguration;
+
+import java.util.Optional;
+import java.util.UUID;
import static org.hibernate.validator.internal.util.Contracts.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.*;
+
+@DataJpaTest
+@ContextConfiguration(classes = {TestConfiguration.class})
public class GfiGridTest {
+ @Qualifier("myFailureInformationService")
+ @Autowired
+ private FailureInformationService failureInformationService;
+
+ @MockBean
+ private ProcessHelper processHelper;
+ @MockBean
+ private StatusRepository statusRepository;
+ @MockBean
+ private FailureInformationRepository failureInformationRepository;
+
@Test
public void testProcessGrid() throws ProcessException {
ProcessGridImpl theGrid = new ProcessGridImpl();
@@ -46,4 +80,37 @@
assertNotNull(grid);
}
+ @Test
+ public void shouldEndInQualifyMessageWhenStoredWithCreatedFromDBStateNew() {
+ FailureInformationDto dtoToSave = MockDataHelper.mockFailureInformationDto();
+ TblFailureInformation failureFromDB = MockDataHelper.mockTblFailureInformation();
+ RefStatus refStatusFromDB = MockDataHelper.mockRefStatus();
+ refStatusFromDB.setId(GfiProcessState.NEW.getStatusValue());
+
+ when( failureInformationRepository.findByUuid(eq(dtoToSave.getUuid()))).thenReturn(Optional.of(failureFromDB));
+ when( statusRepository.findByUuid(eq(failureFromDB.getRefStatusIntern().getUuid()))).thenReturn(Optional.of(refStatusFromDB));
+
+ failureInformationService.updateFailureInfo(dtoToSave);
+
+ verify(processHelper, times(1))
+ .setEditStatusAndStore(any( UUID.class ), eq(GfiProcessState.CREATED));
+
+ }
+
+ @Test
+ public void shouldEndInQualifyMessageWhenStoredWithCreatedFromDBStatePlanned() {
+ FailureInformationDto dtoToSave = MockDataHelper.mockFailureInformationDto();
+ TblFailureInformation failureFromDB = MockDataHelper.mockTblFailureInformation();
+ RefStatus refStatusFromDB = MockDataHelper.mockRefStatus();
+ refStatusFromDB.setId(GfiProcessState.PLANNED.getStatusValue());
+
+ when( failureInformationRepository.findByUuid(eq(dtoToSave.getUuid()))).thenReturn(Optional.of(failureFromDB));
+ when( statusRepository.findByUuid(eq(failureFromDB.getRefStatusIntern().getUuid()))).thenReturn(Optional.of(refStatusFromDB));
+
+ failureInformationService.updateFailureInfo(dtoToSave);
+
+ verify(processHelper, times(1))
+ .setEditStatusAndStore(eq(dtoToSave.getUuid()), eq(GfiProcessState.CREATED));
+
+ }
}
diff --git a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/UIStoreFailureInformationTaskTest.java b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/UIStoreFailureInformationTaskTest.java
index 91da7ec..2a46923 100644
--- a/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/UIStoreFailureInformationTaskTest.java
+++ b/gfsBackendService/src/test/java/org/eclipse/openk/gridfailureinformation/bpmn/impl/UIStoreFailureInformationTaskTest.java
@@ -86,4 +86,6 @@
assertTrue(task.onLeaveStepCalled);
}
+
+
}