Merge branch 'main' of https://dev.azure.com/asfinag/Tech-Supporting.ITSM/_git/Tech-Supporting.ITSM.ChangeKalender
commit
3059829efd
|
|
@ -40,8 +40,8 @@ import com.nttdata.calender.states.StateChange;
|
|||
import com.nttdata.calender.states.StateChangeRequest;
|
||||
import com.nttdata.calender.states.StateResponse;
|
||||
import com.nttdata.calender.supportgroup.SupportGroup;
|
||||
|
||||
import net.bytebuddy.asm.Advice.Origin;
|
||||
import com.nttdata.calender.urlConstructor.UrlConstructor;
|
||||
import com.nttdata.calender.urlConstructor.UrlResponse;
|
||||
|
||||
/**
|
||||
* REST Controller for Remedy Data
|
||||
|
|
@ -53,15 +53,17 @@ public class KalenderRestController {
|
|||
private final Implementer implementer;
|
||||
private final PackageType packageType;
|
||||
private final Approval approval;
|
||||
private final UrlConstructor urlConstructor;
|
||||
|
||||
@Autowired
|
||||
public KalenderRestController(RemedyJavaAPI javaAPI, Change change, Implementer implementer,
|
||||
PackageType packageType, Approval approval) {
|
||||
PackageType packageType, Approval approval, UrlConstructor urlConstructor) {
|
||||
this.javaAPI = javaAPI;
|
||||
this.change = change;
|
||||
this.implementer = implementer;
|
||||
this.packageType = packageType;
|
||||
this.approval = approval;
|
||||
this.urlConstructor = urlConstructor;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -111,6 +113,12 @@ public class KalenderRestController {
|
|||
return ResponseEntity.internalServerError().body("Support Groups couldnt be fetched.");
|
||||
}
|
||||
|
||||
@CrossOrigin("*")
|
||||
@GetMapping("/api/getUrl")
|
||||
public UrlResponse getLink() throws ARException {
|
||||
return urlConstructor.construct(javaAPI);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Handles a GET request to retrieve the user's support group.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
package com.nttdata.calender.urlConstructor;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.bmc.arsys.api.ARException;
|
||||
import com.bmc.arsys.api.Constants;
|
||||
import com.nttdata.calender.api.RemedyJavaAPI;
|
||||
|
||||
@Service
|
||||
public class UrlConstructor {
|
||||
String viewForm = "/SHR%3ALandingConsole/Default+Administrator+View/?mode=search&F304255500=";
|
||||
String getPkg = "&F1000000076=FormOpenNoAppList&F303647600=SearchTicketWithQual&F304255610=";
|
||||
|
||||
public UrlResponse construct(RemedyJavaAPI api) throws ARException {
|
||||
var server = api.getServer();
|
||||
var setting = new int[] { Constants.AR_SERVER_INFO_SERVER_NAME, Constants.AR_SERVER_INFO_DEFAULT_WEB_PATH };
|
||||
var serverInfo = server.getServerInfo(setting);
|
||||
var midTierLink = serverInfo.get(Constants.AR_SERVER_INFO_DEFAULT_WEB_PATH).getValue().toString() + "/forms/";
|
||||
var shortName = midTierLink.replaceFirst("https://", "").substring(0, midTierLink.indexOf("."));
|
||||
|
||||
var viewFormUrl = midTierLink + shortName + viewForm;
|
||||
|
||||
return new UrlResponse(getPkg, viewFormUrl);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
package com.nttdata.calender.urlConstructor;
|
||||
|
||||
public class UrlResponse {
|
||||
private String entryUrl;
|
||||
private String viewFormUrl;
|
||||
|
||||
public UrlResponse(String entryUrl, String viewFormUrl) {
|
||||
this.entryUrl = entryUrl;
|
||||
this.viewFormUrl = viewFormUrl;
|
||||
}
|
||||
|
||||
public String getEntryUrl() {
|
||||
return this.entryUrl;
|
||||
}
|
||||
|
||||
public void setEntryUrl(String entryUrl) {
|
||||
this.entryUrl = entryUrl;
|
||||
}
|
||||
|
||||
public String getViewFormUrl() {
|
||||
return this.viewFormUrl;
|
||||
}
|
||||
|
||||
public void setViewFormUrl(String viewFormUrl) {
|
||||
this.viewFormUrl = viewFormUrl;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue