diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerController.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerController.java index 6951468..d9bdb5d 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerController.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerController.java @@ -71,7 +71,7 @@ public class BusinessPartnerController implements Serializable { @Inject BusinessPartnerService businessPartnerService; - private List searchResult = null; + private List searchResult = null; private static Logger logger = Logger.getLogger(BusinessPartnerController.class.getName()); @@ -88,7 +88,7 @@ public class BusinessPartnerController implements Serializable { */ public void search(String regexPattern) { List resultList = null; - searchResult = new ArrayList(); + searchResult = new ArrayList(); // get the param from faces context.... FacesContext fc = FacesContext.getCurrentInstance(); String phrase = fc.getExternalContext().getRequestParameterMap().get("phrase"); @@ -110,6 +110,7 @@ public class BusinessPartnerController implements Serializable { pattern = Pattern.compile(regexPattern); } + // Filter by Regex and convert ItemCollection into a BusinessPartnerSearchEntry for (ItemCollection businessPartner : resultList) { String name = businessPartner.getItemValueString("name"); // Prüfen, ob der name der Regex entspricht @@ -121,10 +122,12 @@ public class BusinessPartnerController implements Serializable { } } String display = businessPartner.getItemValueString("$workflowsummary"); - ; + display = display.replace("\"", ""); display = display.replace("'", ""); - searchResult.add(businessPartner); + + searchResult.add(new BusinessPartnerSearchEntry(name, display, buildJsonData(businessPartner))); + } } @@ -134,7 +137,7 @@ public class BusinessPartnerController implements Serializable { * * @return */ - public List getSearchResult() { + public List getSearchResult() { return searchResult; } @@ -262,7 +265,7 @@ public class BusinessPartnerController implements Serializable { add("name", jsonVal(businessPartner.getItemValueString("name"))). // add("cdtr.number", jsonVal(businessPartner.getItemValueString("cdtr.number"))). // add("dbtr.number", jsonVal(businessPartner.getItemValueString("dbtr.number"))). // - add("name", jsonVal(businessPartner.getItemValueString("partner.name"))); + add("partner.name", jsonVal(businessPartner.getItemValueString("partner.name"))); // get iban list // {iban=[Dxxxxxx1], name=[Bank 1], id=[bank1], bic=[CITIDEFF]} diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerSearchEntry.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerSearchEntry.java new file mode 100644 index 0000000..dcd7234 --- /dev/null +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/BusinessPartnerSearchEntry.java @@ -0,0 +1,48 @@ +package com.alexanderlogistics; + +/** + * Diese Kleine Hilfsklasse dient als DTO für die Übertragugn eines + * Sucheregenisses nach kreditoren an das Frontend. Die Klasse besteht aus einem + * Key, einer DisplayZeile für die Darstellung und einen JSON String der + * beliebige Daten enthalten kann. + * + * @author rsoika + * + */ +public class BusinessPartnerSearchEntry { + + private String key; + private String display; + private String data; + + public BusinessPartnerSearchEntry(String key, String display, String data) { + super(); + this.key = key; + this.display = display; + this.data = data; + } + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getDisplay() { + return display; + } + + public void setDisplay(String display) { + this.display = display; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } +} diff --git a/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/businesspartner_search.xhtml b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/businesspartner_search.xhtml index 292190f..2173bb7 100644 --- a/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/businesspartner_search.xhtml +++ b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/businesspartner_search.xhtml @@ -3,11 +3,11 @@ xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:pt="http://xmlns.jcp.org/jsf/passthrough" xmlns:marty="http://xmlns.jcp.org/jsf/composite/marty" xmlns:i="http://xmlns.jcp.org/jsf/composite/imixs"> - - - + + +