update archive suche

This commit is contained in:
Ralph Soika 2024-04-03 12:04:12 +02:00
parent 02c9522bbd
commit 6cafc831ec
5 changed files with 110 additions and 17 deletions

View file

@ -88,11 +88,15 @@ public class CustomSearchController implements Serializable {
Date dueDate = searchEvent.getSearchFilter().getItemValueDate("invoice.duedate"); Date dueDate = searchEvent.getSearchFilter().getItemValueDate("invoice.duedate");
Date closingDate = searchEvent.getSearchFilter().getItemValueDate("invoice.closingdate"); Date closingDate = searchEvent.getSearchFilter().getItemValueDate("invoice.closingdate");
String cdtrNumber = searchEvent.getSearchFilter().getItemValueString("cdtr.number"); String cdtrNumber = searchEvent.getSearchFilter().getItemValueString("cdtr.number").trim();
String invoiceType = searchEvent.getSearchFilter().getItemValueString("invoice.type"); String invoiceType = searchEvent.getSearchFilter().getItemValueString("invoice.type");
String invoiceCurrency = searchEvent.getSearchFilter().getItemValueString("invoice.currency").trim();
String invoiceNumber = searchEvent.getSearchFilter().getItemValueString("invoice.number"); String invoiceNumber = searchEvent.getSearchFilter().getItemValueString("invoice.number");
String paymentType = searchEvent.getSearchFilter().getItemValueString("payment.type").trim();
String sequenceNumber = searchEvent.getSearchFilter().getItemValueString("sequencenumber").trim();
query += " (type:\"workitemarchive\") "; query += " (type:\"workitemarchive\") ";
// process ref= Rechnugnscontorling Prozess // process ref= Rechnugnscontorling Prozess
ItemCollection process = teamController.getProcessByName("Rechnungscontrolling"); ItemCollection process = teamController.getProcessByName("Rechnungscontrolling");
@ -132,6 +136,17 @@ public class CustomSearchController implements Serializable {
query += " AND (invoice.number:" + invoiceNumber + ")"; query += " AND (invoice.number:" + invoiceNumber + ")";
} }
if (paymentType != null && !paymentType.isEmpty()) {
query += " AND (payment.type:" + paymentType + ")";
}
if (sequenceNumber != null && !sequenceNumber.isEmpty()) {
query += " AND (sequencenumber:" + sequenceNumber + ")";
}
if (invoiceCurrency != null && !invoiceCurrency.isEmpty()) {
query += " AND (invoice.currency:" + invoiceCurrency + ")";
}
// Rechnungsart // Rechnungsart
if (invoiceType != null && !"0".equals(invoiceType)) { if (invoiceType != null && !"0".equals(invoiceType)) {
if ("1".equals(invoiceType)) { if ("1".equals(invoiceType)) {

View file

@ -32,6 +32,8 @@ invoicenumber=Rechnungsnummer
invoicedate=Rechnungsdatum invoicedate=Rechnungsdatum
invoiceduedate=Fälligkeit invoiceduedate=Fälligkeit
invoiceamount=Rechnungsbetrag invoiceamount=Rechnungsbetrag
payment_type=Zahlungsart
sequencenumber=Belegnummer
amount=Betrag amount=Betrag
closingdate=Abschlussdatum (nur Monat) closingdate=Abschlussdatum (nur Monat)

View file

@ -32,6 +32,8 @@ invoicenumber=Invoice No.
invoicedate=Invoice Date invoicedate=Invoice Date
invoiceduedate=Due Date invoiceduedate=Due Date
invoiceamount=Invoice amount invoiceamount=Invoice amount
payment_type=Payment Type
sequencenumber=Request No.
amount=Amount amount=Amount
closingdate=Closing date (Month only) closingdate=Closing date (Month only)

View file

@ -4,7 +4,7 @@
lucence.indexDir=${imixs-office.IndexDir} lucence.indexDir=${imixs-office.IndexDir}
index.fields=txtsearchstring,txtSubject,txtname,txtEmail,txtUserName,namCreator,txtworkflowgroup,txtworkflowstatus,txtWorkflowAbstract,txtWorkflowSummary,txtworkflowhistory,txtspacename,txtprocessname,_subject,_description,_name,_projectnumber,_projectname,_ordernumber,_contractnumber,datDueDate,txtcommentlog,htmldescription,htmldocumentation,dms,dms_names,invoice.number.stripped,_childitems,$file.names,_VENDOR_NAME,dbtr.number,cdtr.number index.fields=txtsearchstring,txtSubject,txtname,txtEmail,txtUserName,namCreator,txtworkflowgroup,txtworkflowstatus,txtWorkflowAbstract,txtWorkflowSummary,txtworkflowhistory,txtspacename,txtprocessname,_subject,_description,_name,_projectnumber,_projectname,_ordernumber,_contractnumber,datDueDate,txtcommentlog,htmldescription,htmldocumentation,dms,dms_names,invoice.number.stripped,_childitems,$file.names,_VENDOR_NAME,dbtr.number,cdtr.number
index.fields.analyze=txtUsername index.fields.analyze=txtUsername
index.fields.noanalyze=type,$UniqueIDRef,$created,$modified,$ModelVersion,$participants,namCreator,$ProcessID,datDate,txtWorkflowGroup,txtemail, datdate, datfrom, datto, numsequencenumber,dms_count,invoice.number,invoice.number.stripped,invoice.date,invoice.duedate,taxonomy.verteilung.stop,taxonomy.sachpruefung.stop,taxonomy.verteilung.start,taxonomy.sachpruefung.start,taxonomy.buchhaltung.start,taxonomy.buchhaltung.stop,dbtr.number,cdtr.number,payment.date,invoice.total,$lasteventdate,payment.type index.fields.noanalyze=type,$UniqueIDRef,$created,$modified,$ModelVersion,$participants,namCreator,$ProcessID,datDate,txtWorkflowGroup,txtemail, datdate, datfrom, datto, numsequencenumber,sequencenumber,dms_count,invoice.number,invoice.number.stripped,invoice.date,invoice.duedate,taxonomy.verteilung.stop,taxonomy.sachpruefung.stop,taxonomy.verteilung.start,taxonomy.sachpruefung.start,taxonomy.buchhaltung.start,taxonomy.buchhaltung.stop,dbtr.number,cdtr.number,payment.date,invoice.total,invoice.currency,$lasteventdate,payment.type
index.fields.store=process.name,txtProcessName,txtWorkflowImageURL,payment.date,invoice.number,invoice.date,invoice.duedate index.fields.store=process.name,txtProcessName,txtWorkflowImageURL,payment.date,invoice.number,invoice.date,invoice.duedate
index.fields.category=space.name,space.ref,taxonomy.verteilung.stop.by,taxonomy.sachpruefung.stop.by,taxonomy.buchhaltung.stop.by index.fields.category=space.name,space.ref,taxonomy.verteilung.stop.by,taxonomy.sachpruefung.stop.by,taxonomy.buchhaltung.stop.by
office.search.noanalyze=invoice.number,invoice.number.stripped office.search.noanalyze=invoice.number,invoice.number.stripped

View file

@ -1,19 +1,64 @@
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://xmlns.jcp.org/jsf/core" <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:c="http://xmlns.jcp.org/jsp/jstl/core" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:a="http://xmlns.jcp.org/jsf/passthrough" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:a="http://xmlns.jcp.org/jsf/passthrough"
xmlns:marty="http://xmlns.jcp.org/jsf/composite/marty" xmlns:i="http://xmlns.jcp.org/jsf/composite/imixs"> 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">
<!-- *** Krieger Custom Search form *** --> <!-- *** Krieger Custom Search form *** -->
<hr style="border-width:5px" /> <style>
.invioce-container {
display: flex;
}
.invioce-div1 {
flex: 2;
}
.invioce-div2 {
flex: 1;
}
</style>
<div class="imixs-form-section-3"> <div class="imixs-form-section-3">
<dl> <dl>
<dt>#{custom.invoiceamount}:</dt>
<dd>
<h:inputText style="width:12em;" value="#{searchController.searchFilter.item['invoice.total']}">
<f:convertNumber minFractionDigits="2" locale="de" />
</h:inputText>
</dd> <div class="invioce-container">
<div class="invioce-div1">
<dt>#{custom.invoiceamount}:</dt>
<dd>
<h:inputText style="width:12em;" value="#{searchController.searchFilter.item['invoice.total']}">
<f:convertNumber minFractionDigits="2" locale="de" />
</h:inputText>
</dd>
</div>
<div class="invioce-div2">
<dt>Währung:</dt>
<dd>
<h:inputText value="#{searchController.searchFilter.item['invoice.currency']}"
id="currencyinput_id" pt:autocomplete="off" pt:list="autocomplete-currency" required="false"
style="width:70px;text-transform: uppercase;">
</h:inputText>
<datalist id="autocomplete-currency">
<option value="EUR">EUR</option>
<option value="USD">USD</option>
<option value="SEK">SEK</option>
<option value="NOK">NOK</option>
<option value="GBP">GBP</option>
<option value="CAD">CAD</option>
<option value="PLN">PLN</option>
<option value="RUB">RUB</option>
</datalist>
</dd>
</div>
</div>
</dl> </dl>
<dl> <dl>
<dt>#{custom.invoicedate}:</dt> <dt>#{custom.invoicedate}:</dt>
@ -62,12 +107,39 @@
</dl> </dl>
</div> </div>
<div class="imixs-form-section"> <div class="imixs-form-section-3">
<dl>
<dt>#{custom.payment_type}:</dt>
<dd>
<h:selectOneMenu required="true" value="#{searchController.searchFilter.item['payment.type']}">
<f:selectItem itemLabel=" " itemValue=" " />
<c:forEach items="#{sepaController.dbtrList}" var="dbtr">
<f:selectItem itemLabel="#{dbtr.item['name']}" itemValue="#{dbtr.item['name']}" />
</c:forEach>
<f:selectItem itemLabel="#{custom['payment.no_sepa']}" itemValue="no_sepa" />
<f:selectItem itemLabel="#{custom['payment.direct_debit']}" itemValue="direct_debit" />
<f:selectItem itemLabel="#{custom['payment.credit']}" itemValue="credit" />
</h:selectOneMenu>
</dd>
</dl>
<dl>
<dt>#{custom.sequencenumber}:</dt>
<dd>
<h:inputText value="#{searchController.searchFilter.item['sequencenumber']}">
</h:inputText>
</dd>
</dl>
</div>
<div class="imixs-form-section">
<dl> <dl>
<dt>Rechnungsart:</dt> <dt>Rechnungsart:</dt>
<dd> <dd>
<h:selectOneRadio value="#{searchController.searchFilter.item['invoice.type']}"> <h:selectOneRadio value="#{searchController.searchFilter.item['invoice.type']}">
<f:selectItem itemLabel="Alle" itemValue="0" /> <f:selectItem itemLabel="Alle" itemValue="0" />
<f:selectItem itemLabel="Cargo Rechnung" itemValue="1" /> <f:selectItem itemLabel="Cargo Rechnung" itemValue="1" />
@ -75,13 +147,15 @@
<f:selectItem itemLabel="Gutschrift" itemValue="3" /> <f:selectItem itemLabel="Gutschrift" itemValue="3" />
<f:selectItem itemLabel="Gutschrift Abgleich" itemValue="4" /> <f:selectItem itemLabel="Gutschrift Abgleich" itemValue="4" />
</h:selectOneRadio> </h:selectOneRadio>
</dd> </dd>
</dl> </dl>
<dl>
<dt>#{message['worklist.search_phrase']}: </dt>
<dd>
<h:inputText a:data-id="input_phrase" value="#{searchController.searchFilter.item['phrase']}" />
</dd>
</dl>
</div> </div>
<hr style="border-width:5px" />
</ui:composition> </ui:composition>