Aggiungi colonne personalizzate

Per visualizzare i dati del flusso di lavoro nella inbox, dobbiamo definire e popolare le variabili nel flusso di lavoro. Il valore della variabile deve essere impostato prima che un'attività venga assegnata a un utente. Per fornirti un primo avvio abbiamo fornito un flusso di lavoro di esempio pronto per essere distribuito sul server AEM.

Questo flusso di lavoro ha due variabili definite (isMarried e Revenue) e i suoi valori sono impostati utilizzando il componente della variabile impostata. Queste variabili saranno rese disponibili come colonne da aggiungere AEM casella in entrata

Crea servizio

Per ogni colonna che dobbiamo visualizzare nella nostra inbox dovremmo scrivere un servizio. Il servizio seguente consente di aggiungere una colonna per visualizzare il valore della variabile isMarried

import com.adobe.cq.inbox.ui.column.Column;
import com.adobe.cq.inbox.ui.column.provider.ColumnProvider;

import com.adobe.cq.inbox.ui.InboxItem;
import org.osgi.service.component.annotations.Component;

import java.util.Map;

/**
 * This provider does not require any sightly template to be defined.
 * It is used to display the value of 'ismarried' workflow variable as a column in inbox
 */
@Component(service = ColumnProvider.class, immediate = true)
public class MaritalStatusProvider implements ColumnProvider {@Override
public Column getColumn() {
return new Column("married", "Married", Boolean.class.getName());
}

// Return True or False if 'ismarried' is set. Else returns null
private Boolean isMarried(InboxItem inboxItem) {
Boolean ismarried = null;

Map metaDataMap = inboxItem.getWorkflowMetadata();
if (metaDataMap != null) {
if (metaDataMap.containsKey("isMarried")) {
    ismarried = (Boolean) metaDataMap.get("isMarried");
}
}

return ismarried;
}

@Override
public Object getValue(InboxItem inboxItem) {
return isMarried(inboxItem);
}
}
NOTA

Devi includere AEM 6.5.5 Uber.jar nel tuo progetto affinché il codice di cui sopra funzioni

uber-jar

Test sul server

L’invio del modulo attiverà il flusso di lavoro e un’attività verrà assegnata all’utente "amministratore". Dovresti visualizzare un valore nella colonna Sposato come mostrato in questa schermata

colonna

In questa pagina