Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import com.netgrif.application.engine.elastic.service.interfaces.IElasticCaseMappingService;
import com.netgrif.application.engine.objects.petrinet.domain.I18nString;
import com.netgrif.application.engine.objects.petrinet.domain.dataset.*;
import com.netgrif.application.engine.objects.petrinet.domain.dataset.TaskField;
import com.netgrif.application.engine.objects.workflow.domain.Case;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
Expand Down Expand Up @@ -77,6 +78,8 @@ protected Optional<DataField> transformDataField(String fieldId, Case useCase) {
return this.transformFilterFieldField(caseField, (com.netgrif.application.engine.objects.petrinet.domain.dataset.FilterField) netField);
} else if (netField instanceof com.netgrif.application.engine.objects.petrinet.domain.dataset.StringCollectionField) {
return this.transformStringCollectionField(caseField, (com.netgrif.application.engine.objects.petrinet.domain.dataset.StringCollectionField) netField);
} else if (netField instanceof com.netgrif.application.engine.objects.petrinet.domain.dataset.TaskField) {
return this.transformTaskField(caseField);
} else {
String string = caseField.getValue().toString();
if (string == null)
Expand Down Expand Up @@ -226,6 +229,11 @@ private Optional<Set> getMultichoiceValue(com.netgrif.application.engine.objects
return Optional.of(new com.netgrif.application.engine.adapter.spring.elastic.domain.UserListField(userMappingData));
}

protected Optional<DataField> transformTaskField(com.netgrif.application.engine.objects.workflow.domain.DataField dataField) {
String[] referencedTasks = ((List<String>) dataField.getValue()).toArray(new String[0]);
return Optional.of(new com.netgrif.application.engine.adapter.spring.elastic.domain.TaskField(referencedTasks));
}

private UserField.UserMappingData transformUserValue(UserFieldValue user) {
return new UserField.UserMappingData(user.getId(), user.getRealmId(), user.getUsername(), buildFullName(user.getFirstName(), user.getLastName()).toString());
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.netgrif.application.engine.objects.elastic.domain;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.Arrays;

@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public abstract class TaskField extends DataField {

public String[] taskRefValue;

public TaskField(String[] values) {
super(values);
this.taskRefValue = values;
}

@Override
public Object getValue() {
if (taskRefValue == null) {
return new ArrayList<>();
}
return new ArrayList<>(Arrays.asList(taskRefValue));
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package com.netgrif.application.engine.adapter.spring.elastic.domain;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.springframework.data.elasticsearch.annotations.Field;

import static org.springframework.data.elasticsearch.annotations.FieldType.Keyword;
import static org.springframework.data.elasticsearch.annotations.FieldType.Text;

@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class TaskField extends com.netgrif.application.engine.objects.elastic.domain.TaskField {

public TaskField(String[] values) {
super(values);
}

@Override
@Field(type = Text)
public String[] getFulltextValue() {
return super.getFulltextValue();
}

@Override
@Field(type = Keyword)
public String[] getTaskRefValue() {
return super.getTaskRefValue();
}
}
Loading