diff --git a/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/controller/MissioniMagazzinoAutomaticoController.java b/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/controller/MissioniMagazzinoAutomaticoController.java index ab165b5b1d..a9ad4377f6 100644 --- a/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/controller/MissioniMagazzinoAutomaticoController.java +++ b/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/controller/MissioniMagazzinoAutomaticoController.java @@ -65,6 +65,15 @@ public class MissioniMagazzinoAutomaticoController { } + @GetMapping(value = "retrieve-row") + public @ResponseBody + ServiceRestResponse retrieveRow(@RequestParam(CommonConstants.PROFILE_DB) String profileDB, + @RequestParam long rowId) throws Exception { + + return ServiceRestResponse.createPositiveResponse(missioniMagazzinoAutomaticoService.retrieveItem(multiDBTransactionManager, rowId)); + } + + @PostMapping(value = "create") public @ResponseBody ServiceRestResponse create(@RequestParam(CommonConstants.PROFILE_DB) String profileDB, diff --git a/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/service/MissioniMagazzinoAutomaticoService.java b/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/service/MissioniMagazzinoAutomaticoService.java index 928b1da636..5081686cb1 100644 --- a/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/service/MissioniMagazzinoAutomaticoService.java +++ b/ems-engine/src/main/java/it/integry/ems/logistic/missioni/magazzino_automatico/service/MissioniMagazzinoAutomaticoService.java @@ -2,6 +2,7 @@ package it.integry.ems.logistic.missioni.magazzino_automatico.service; import it.integry.ems.exception.PrimaryDatabaseNotPresentException; import it.integry.ems.logistic.missioni.magazzino_automatico.dto.MissioneMagazzinoAutomaticoDTO; +import it.integry.ems.logistic.missioni.magazzino_automatico.dto.MissioneMagazzinoAutomaticoRowDTO; import it.integry.ems.logistic.missioni.magazzino_automatico.dto.UpdateDestinazioneMissioniRequestDTO; import it.integry.ems.logistic.missioni.magazzino_automatico.utils.MissioniMagazzinoAutomaticoUtils; import it.integry.ems.retail.wms.Utility.WMSUtility; @@ -163,6 +164,21 @@ public class MissioniMagazzinoAutomaticoService { return MissioniMagazzinoAutomaticoUtils.convertEntityToDto(missione); } + public MissioneMagazzinoAutomaticoRowDTO retrieveRowItem(MultiDBTransactionManager multiDBTransactionManager, long missionRowId) throws PrimaryDatabaseNotPresentException, DataConverterNotFoundException, SQLException, InstantiationException, IllegalAccessException { + String sql = "SELECT mmma_det.*\n" + + "FROM " + MtbMissioneMagAutoDet.ENTITY + " mmma_det \n" + + "WHERE mmma_det.id = " + UtilityDB.valueToString(missionRowId); + + + final MtbMissioneMagAutoDet missione = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MtbMissioneMagAutoDet.class); + + if (missione == null) { + return null; + } + + return MissioniMagazzinoAutomaticoUtils.convertEntityRowToDto(missione); + } + public long createMissione(MultiDBTransactionManager multiDBTransactionManager, String username, MissioneMagazzinoAutomaticoDTO missione) throws Exception { if (UtilityString.isNullOrEmpty(username)) throw new UsernameNotFoundException("Username is null or empty");