From 297bee8101c0e3faa7d8e6140d76ccdc9f0a4c90 Mon Sep 17 00:00:00 2001 From: Manuel Tauber Date: Mon, 15 Apr 2024 11:21:53 +0200 Subject: [PATCH] DONE --- .../calender/api/KalenderRestController.java | 5 ++- .../nttdata/calender/api/RemedyJavaAPI.java | 2 +- .../nttdata/calender/contracts/Contract.java | 41 ++++++++----------- 3 files changed, 21 insertions(+), 27 deletions(-) diff --git a/backend/src/main/java/com/nttdata/calender/api/KalenderRestController.java b/backend/src/main/java/com/nttdata/calender/api/KalenderRestController.java index 9fbabde..1c9c4be 100644 --- a/backend/src/main/java/com/nttdata/calender/api/KalenderRestController.java +++ b/backend/src/main/java/com/nttdata/calender/api/KalenderRestController.java @@ -182,13 +182,14 @@ public class KalenderRestController { * * @return {@link ArrayList} of {@link ContractGetResponse} objects * @throws ARException if an AR exception occurs + * @throws NotFoundError */ @CrossOrigin("*") @GetMapping("/api/getContracts") @ResponseBody - public ArrayList getContracts() throws ARException { + public ArrayList getContracts() throws ARException, NotFoundError { var contract = Contract.getInstance(); - return contract.get(); + return contract.get(this.javaAPI); } /** diff --git a/backend/src/main/java/com/nttdata/calender/api/RemedyJavaAPI.java b/backend/src/main/java/com/nttdata/calender/api/RemedyJavaAPI.java index 04d0fef..f471a76 100644 --- a/backend/src/main/java/com/nttdata/calender/api/RemedyJavaAPI.java +++ b/backend/src/main/java/com/nttdata/calender/api/RemedyJavaAPI.java @@ -42,7 +42,7 @@ public class RemedyJavaAPI { public RemedyJavaAPI() throws ARException, NotFoundError { server = new ARServerUser(); // server.setServer("itsm-app-dev.asfinag.at"); - server.setServer("itsm-app-dev-neu.asfinag.at"); + server.setServer("itsm-app-test-neu.asfinag.at"); server.setUser("changecalender_integration"); server.setPassword("VXrvLm4q#8P#MXthfZNc"); server.setPort(46262); diff --git a/backend/src/main/java/com/nttdata/calender/contracts/Contract.java b/backend/src/main/java/com/nttdata/calender/contracts/Contract.java index 159050c..e52539e 100644 --- a/backend/src/main/java/com/nttdata/calender/contracts/Contract.java +++ b/backend/src/main/java/com/nttdata/calender/contracts/Contract.java @@ -14,8 +14,7 @@ import com.nttdata.calender.errorhandling.ErrorTypes.NotFoundError; * and retrieving a list of contracts based on matching id's. */ public class Contract { - private static final String formName_changes = "ASF:WI_TAS_Paket"; - private static final String formName_contracts = "CTR:ContractBase"; + private static final String formName_contracts = "ASF:WI_CAL_CALENDARCONTRACTS4USER"; private static final Contract INSTANCE = new Contract(); private ArrayList contracts; @@ -45,25 +44,18 @@ public class Contract { * @throws NotFoundError if no contracts are found in the given context */ public void queryContracts(RemedyJavaAPI api) throws ARException, NotFoundError { - ArrayList allChanges = new ArrayList(); ArrayList allContracts = new ArrayList(); + api.impersonateUser("btwien_test"); - var queryChanges = new Query.QueryBuilder(formName_changes) - .addFieldId("Contract", 670031002).build(); - - allChanges = api.queryFieldsById("", queryChanges.getFieldIds(), formName_changes, null, 0, 0) - .stream() - .map(entry -> new ContractGetResponse(null, - entry.get(queryChanges.getFieldId("Contract")).toString())) - .distinct() - .collect(Collectors.toCollection(ArrayList::new)); var queryContracts = new Query.QueryBuilder(formName_contracts) .addFieldId("Id", 179) - .addFieldId("Name", 8).build(); + .addFieldId("Name", 700008020).build(); + + System.out.println("\n### USER: "+api.getUser()); allContracts = api - .queryFieldsById("\'Contract ID+\' != \"\"", queryContracts.getFieldIds(), formName_contracts, null, + .queryFieldsById("\'4\' = \""+api.getUser()+"\"", queryContracts.getFieldIds(), formName_contracts, null, 0, 0) .stream() .map(entry -> new ContractGetResponse( @@ -72,24 +64,25 @@ public class Contract { .distinct() .collect(Collectors.toCollection(ArrayList::new)); - for (var change : allChanges) { - for (var contract : allContracts) { - if (change.id.equals(contract.id)) { - this.contracts.add(contract); - break; + for (ContractGetResponse contractGetResponse : allContracts) { + System.out.println(contractGetResponse.name); } - } - } + - if (contracts.isEmpty()) { - throw new NotFoundError("No contracts found in this context"); + + if (allContracts.isEmpty()) { + System.out.println("No contracts found in this context"); } + contracts = allContracts; } /** * @return the list of contracts + * @throws ARException + * @throws NotFoundError */ - public ArrayList get() { + public ArrayList get(RemedyJavaAPI api) throws NotFoundError, ARException { + this.queryContracts(api); return contracts; } }