async rag index
This commit is contained in:
parent
c54eff0cd4
commit
a942f9f15f
7 changed files with 827 additions and 181 deletions
|
|
@ -38,6 +38,7 @@ import org.eclipse.microprofile.config.inject.ConfigProperty;
|
||||||
import org.imixs.ai.workflow.OpenAIAPIService;
|
import org.imixs.ai.workflow.OpenAIAPIService;
|
||||||
import org.imixs.workflow.ItemCollection;
|
import org.imixs.workflow.ItemCollection;
|
||||||
import org.imixs.workflow.SignalAdapter;
|
import org.imixs.workflow.SignalAdapter;
|
||||||
|
import org.imixs.workflow.engine.EventLogService;
|
||||||
import org.imixs.workflow.engine.WorkflowService;
|
import org.imixs.workflow.engine.WorkflowService;
|
||||||
import org.imixs.workflow.exceptions.AdapterException;
|
import org.imixs.workflow.exceptions.AdapterException;
|
||||||
import org.imixs.workflow.exceptions.PluginException;
|
import org.imixs.workflow.exceptions.PluginException;
|
||||||
|
|
@ -45,52 +46,60 @@ import org.imixs.workflow.exceptions.PluginException;
|
||||||
import ai.dynamixs.rag.cluster.ClusterException;
|
import ai.dynamixs.rag.cluster.ClusterException;
|
||||||
import ai.dynamixs.rag.cluster.ClusterService;
|
import ai.dynamixs.rag.cluster.ClusterService;
|
||||||
import ai.dynamixs.rag.cluster.RetrievalResult;
|
import ai.dynamixs.rag.cluster.RetrievalResult;
|
||||||
|
import ai.dynamixs.rag.events.RAGEventService;
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The RAGAdapter is used for Retrieval-Augmented Generation workflows.
|
* The RAGAdapter is used for Retrieval-Augmented Generation workflows.
|
||||||
* <p>
|
* <p>
|
||||||
* The adapter automatically index and embed text data.
|
* The adapter operates in two modes:
|
||||||
* <p>
|
* <p>
|
||||||
* The imixs-ai prompt definition defines the API endpoint and processing events
|
* In the 'INDEX' mode the adapter evaluates an associated imixs-ai prompt
|
||||||
* to adapt the indexing and the prompt template.
|
* definition and generates - based on the given prompt template - a text to be
|
||||||
* <p>
|
* indexed in the RAG database.
|
||||||
* The Adapter can be configured by a event entity.
|
|
||||||
* <p>
|
|
||||||
* INDEX configuration - to add embeddings:
|
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
* {@code
|
* {@code
|
||||||
<imixs-ai name="INDEX">
|
<imixs-ai name="INDEX">
|
||||||
<endpoint><propertyvalue>llm.service.endpoint</propertyvalue></endpoint>
|
<endpoint><propertyvalue>llm.service.endpoint</propertyvalue></endpoint>
|
||||||
<debug>true</debug>
|
<debug>true</debug>
|
||||||
</imixs-ai>
|
</imixs-ai>
|
||||||
* }
|
* }
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
|
||||||
* The Endpoint defines the Rest API endpoint of the llama-cpp http server or
|
|
||||||
* any compatible OpenAI / Open API rest service endpoint.
|
|
||||||
* <p>
|
* <p>
|
||||||
* Example Prompt Template:
|
* In the 'RETRIEVAL' mode, the adapter evaluates an associated imixs-ai prompt
|
||||||
*
|
* definition to get retrieval embeddings from the RAG database.
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
* {@code
|
* {@code
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<imixs-ai name="RETRIEVAL">
|
||||||
<IndexDefinition>
|
<endpoint><propertyvalue>llm.service.endpoint</propertyvalue></endpoint>
|
||||||
<index_options>{"n_predict": 4096, "temperature": 0}</index_options>
|
<debug>true</debug>
|
||||||
<![CDATA[<text><itemvalue>$workflowgroup</itemvalue>: <itemvalue>$workflowstatus</itemvalue>
|
</imixs-ai>
|
||||||
|
|
||||||
# Summary
|
|
||||||
<itemvalue>$workflowsummary</itemvalue>
|
|
||||||
|
|
||||||
<itemvalue>offer.summary</itemvalue>
|
|
||||||
|
|
||||||
]]></text>
|
|
||||||
</IndexDefinition>
|
|
||||||
* }
|
* }
|
||||||
* </pre>
|
* </pre>
|
||||||
*
|
*
|
||||||
|
* In both modes the Endpoint defines the Rest API endpoint of the llama-cpp
|
||||||
|
* http server or any compatible OpenAI / Open API rest service endpoint.
|
||||||
|
* <p>
|
||||||
|
* The Prompt Template is based on the concepts of Imixs-AI:
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
* {@code
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<IndexDefinition>
|
||||||
|
< index_options>{"n_predict": 4096, "temperature": 0}< /index_options>
|
||||||
|
<![CDATA[<text><itemvalue>$workflowgroup</itemvalue>: <itemvalue>$workflowstatus</itemvalue>
|
||||||
|
# Summary
|
||||||
|
<itemvalue>$workflowsummary</itemvalue>
|
||||||
|
<itemvalue>offer.summary</itemvalue>
|
||||||
|
]]></text>
|
||||||
|
</IndexDefinition>
|
||||||
|
* }
|
||||||
|
* </pre>
|
||||||
|
*
|
||||||
|
* The index Process is
|
||||||
|
*
|
||||||
* @author Ralph Soika
|
* @author Ralph Soika
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
*
|
*
|
||||||
|
|
@ -101,7 +110,6 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
public static final String API_ERROR = "API_ERROR";
|
public static final String API_ERROR = "API_ERROR";
|
||||||
|
|
||||||
public static final String RAG_INDEX = "INDEX";
|
public static final String RAG_INDEX = "INDEX";
|
||||||
public static final String RAG_DELETE = "DELETE";
|
|
||||||
public static final String RAG_RETRIEVAL = "RETRIEVAL";
|
public static final String RAG_RETRIEVAL = "RETRIEVAL";
|
||||||
|
|
||||||
private static Logger logger = Logger.getLogger(RAGAdapter.class.getName());
|
private static Logger logger = Logger.getLogger(RAGAdapter.class.getName());
|
||||||
|
|
@ -113,6 +121,9 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
@Inject
|
@Inject
|
||||||
private WorkflowService workflowService;
|
private WorkflowService workflowService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
EventLogService eventLogService;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private OpenAIAPIService llmService;
|
private OpenAIAPIService llmService;
|
||||||
|
|
||||||
|
|
@ -160,18 +171,6 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
List<ItemCollection> llmRetrievalDefinitions = workflowService.evalWorkflowResultXML(event, "imixs-ai",
|
List<ItemCollection> llmRetrievalDefinitions = workflowService.evalWorkflowResultXML(event, "imixs-ai",
|
||||||
RAG_RETRIEVAL, workitem, false);
|
RAG_RETRIEVAL, workitem, false);
|
||||||
|
|
||||||
List<ItemCollection> llmDeleteDefinitions = workflowService.evalWorkflowResultXML(event, "imixs-ai",
|
|
||||||
RAG_DELETE, workitem, false);
|
|
||||||
|
|
||||||
// verify if we have an DELETE configuration
|
|
||||||
if (llmDeleteDefinitions != null && llmDeleteDefinitions.size() > 0) {
|
|
||||||
try {
|
|
||||||
clusterService.removeAllEmbeddings(workitem.getUniqueID());
|
|
||||||
} catch (ClusterException e) {
|
|
||||||
throw new PluginException(RAGAdapter.class.getSimpleName(), API_ERROR, e.getMessage(), e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// verify if we have an INDEX configuration
|
// verify if we have an INDEX configuration
|
||||||
if (llmIndexDefinitions != null && llmIndexDefinitions.size() > 0) {
|
if (llmIndexDefinitions != null && llmIndexDefinitions.size() > 0) {
|
||||||
createIndex(llmIndexDefinitions, workitem, event);
|
createIndex(llmIndexDefinitions, workitem, event);
|
||||||
|
|
@ -186,7 +185,7 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a RAG Index for a Worktiem based on IndexDefinitions
|
* Creates a RAG Index for a Workitem based on IndexDefinitions
|
||||||
*
|
*
|
||||||
* @param llmIndexDefinitions
|
* @param llmIndexDefinitions
|
||||||
* @param workitem
|
* @param workitem
|
||||||
|
|
@ -213,41 +212,57 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
|
|
||||||
logger.info("├── post RAG index request: " + llmAPIEndpoint);
|
logger.info("├── post RAG index request: " + llmAPIEndpoint);
|
||||||
String promptTemplate = llmService.loadPromptTemplate(event);
|
String promptTemplate = llmService.loadPromptTemplate(event);
|
||||||
|
indexDefinition.setItemValue("promptTemplate", promptTemplate);
|
||||||
|
indexDefinition.setItemValue("debug", llmAPIDebug);
|
||||||
|
indexDefinition.setItemValue("endpoint", llmAPIEndpoint);
|
||||||
|
|
||||||
|
if (llmAPIDebug) {
|
||||||
logger.info("│ ├── PromptTemplate: ");
|
logger.info("│ ├── PromptTemplate: ");
|
||||||
logger.info(promptTemplate);
|
logger.info(promptTemplate);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Build the prompt template...
|
||||||
String llmPrompt = llmService.buildPrompt(promptTemplate, workitem);
|
String llmPrompt = llmService.buildPrompt(promptTemplate, workitem);
|
||||||
if (llmPrompt.isBlank()) {
|
if (llmPrompt.isBlank()) {
|
||||||
throw new PluginException(
|
throw new PluginException(
|
||||||
RAGAdapter.class.getSimpleName(), API_ERROR,
|
RAGAdapter.class.getSimpleName(), API_ERROR,
|
||||||
"Unable to parse prompt for RAG indexing");
|
"Unable to parse prompt for RAG indexing");
|
||||||
}
|
}
|
||||||
|
indexDefinition.setItemValue("prompt", llmPrompt);
|
||||||
|
|
||||||
if (llmAPIDebug) {
|
// send eventLog ....
|
||||||
logger.info("│ ├── Total Prompt Length = " + llmPrompt.length());
|
eventLogService.createEvent(
|
||||||
logger.info("│ ├── Prompt: ");
|
RAGEventService.EVENTLOG_TOPIC_RAG_EVENT_INDEX,
|
||||||
logger.info(llmPrompt);
|
workitem.getUniqueID(),
|
||||||
}
|
indexDefinition);
|
||||||
|
|
||||||
// remove old embeddings
|
// if (llmAPIDebug) {
|
||||||
clusterService.removeAllEmbeddings(workitem.getUniqueID());
|
// logger.info("│ ├── Total Prompt Length = " + llmPrompt.length());
|
||||||
// chunk text....
|
// logger.info("│ ├── Prompt: ");
|
||||||
List<String> chunk_list = RAGUtil.chunkMarkupDocument(llmPrompt);
|
// logger.info(llmPrompt);
|
||||||
for (String chunk : chunk_list) {
|
// }
|
||||||
if (llmAPIDebug) {
|
|
||||||
logger.info("│ ├── 🔸 chunk: ");
|
// // remove old embeddings
|
||||||
logger.info(chunk);
|
// clusterService.removeAllEmbeddings(workitem.getUniqueID());
|
||||||
}
|
// // chunk text....
|
||||||
List<Float> indexResult = llmService.postEmbedding(chunk, llmAPIEndpoint, llmAPIDebug);
|
// List<String> chunk_list = RAGUtil.chunkMarkupDocument(llmPrompt);
|
||||||
// write to cassandra
|
// for (String chunk : chunk_list) {
|
||||||
clusterService.insertVector(workitem.getUniqueID(),
|
// if (llmAPIDebug) {
|
||||||
workitem.getModelVersion(),
|
// logger.info("│ ├── 🔸 chunk: ");
|
||||||
workitem.getTaskID(),
|
// logger.info(chunk);
|
||||||
chunk,
|
// }
|
||||||
indexResult);
|
// List<Float> indexResult = llmService.postEmbedding(chunk, llmAPIEndpoint,
|
||||||
if (llmAPIDebug) {
|
// llmAPIDebug);
|
||||||
logger.info("│ ├── ⇨ " + indexResult.size() + " floats stored in RAG db.");
|
// // write to cassandra
|
||||||
}
|
// clusterService.insertVector(workitem.getUniqueID(),
|
||||||
}
|
// workitem.getModelVersion(),
|
||||||
|
// workitem.getTaskID(),
|
||||||
|
// chunk,
|
||||||
|
// indexResult);
|
||||||
|
// if (llmAPIDebug) {
|
||||||
|
// logger.info("│ ├── ⇨ " + indexResult.size() + " floats stored in RAG db.");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
if (llmAPIDebug) {
|
if (llmAPIDebug) {
|
||||||
logger.info(
|
logger.info(
|
||||||
|
|
@ -257,8 +272,6 @@ public class RAGAdapter implements SignalAdapter {
|
||||||
} catch (PluginException e) {
|
} catch (PluginException e) {
|
||||||
logger.severe("├── ⚠️ Failed to post embeddings: " + e.getMessage());
|
logger.severe("├── ⚠️ Failed to post embeddings: " + e.getMessage());
|
||||||
throw e;
|
throw e;
|
||||||
} catch (ClusterException e) {
|
|
||||||
throw new PluginException(RAGAdapter.class.getSimpleName(), API_ERROR, e.getMessage(), e);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,12 +33,15 @@ import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import org.apache.commons.compress.archivers.ArchiveException;
|
import org.apache.commons.compress.archivers.ArchiveException;
|
||||||
|
import org.imixs.ai.workflow.OpenAIAPIService;
|
||||||
import org.imixs.workflow.ItemCollection;
|
import org.imixs.workflow.ItemCollection;
|
||||||
import org.imixs.workflow.engine.AsyncEventScheduler;
|
import org.imixs.workflow.engine.AsyncEventScheduler;
|
||||||
import org.imixs.workflow.engine.EventLogService;
|
import org.imixs.workflow.engine.EventLogService;
|
||||||
import org.imixs.workflow.engine.WorkflowService;
|
import org.imixs.workflow.engine.WorkflowService;
|
||||||
import org.imixs.workflow.engine.jpa.EventLog;
|
import org.imixs.workflow.engine.jpa.EventLog;
|
||||||
|
import org.imixs.workflow.exceptions.PluginException;
|
||||||
|
|
||||||
|
import ai.dynamixs.rag.RAGUtil;
|
||||||
import ai.dynamixs.rag.cluster.ClusterException;
|
import ai.dynamixs.rag.cluster.ClusterException;
|
||||||
import ai.dynamixs.rag.cluster.ClusterService;
|
import ai.dynamixs.rag.cluster.ClusterService;
|
||||||
import jakarta.annotation.security.DeclareRoles;
|
import jakarta.annotation.security.DeclareRoles;
|
||||||
|
|
@ -98,6 +101,9 @@ public class RAGEventService {
|
||||||
@Inject
|
@Inject
|
||||||
private ClusterService clusterService;
|
private ClusterService clusterService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private OpenAIAPIService llmService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The method lookups for RAG event log entries and updates the RAG index
|
* The method lookups for RAG event log entries and updates the RAG index
|
||||||
* information
|
* information
|
||||||
|
|
@ -109,7 +115,6 @@ public class RAGEventService {
|
||||||
@TransactionAttribute(value = TransactionAttributeType.REQUIRES_NEW)
|
@TransactionAttribute(value = TransactionAttributeType.REQUIRES_NEW)
|
||||||
public void processEventLog() {
|
public void processEventLog() {
|
||||||
long l = System.currentTimeMillis();
|
long l = System.currentTimeMillis();
|
||||||
boolean debug = logger.isLoggable(Level.FINE);
|
|
||||||
|
|
||||||
// test for new event log entries by timeout...
|
// test for new event log entries by timeout...
|
||||||
List<EventLog> events = eventLogService.findEventsByTimeout(100,
|
List<EventLog> events = eventLogService.findEventsByTimeout(100,
|
||||||
|
|
@ -142,8 +147,42 @@ public class RAGEventService {
|
||||||
clusterService.updateMetaData(eventLogEntry.getRef(), workitem.getModelVersion(),
|
clusterService.updateMetaData(eventLogEntry.getRef(), workitem.getModelVersion(),
|
||||||
workitem.getTaskID());
|
workitem.getTaskID());
|
||||||
break;
|
break;
|
||||||
case RAGEventService.EVENTLOG_TOPIC_RAG_EVENT_INDEX:
|
case RAGEventService.EVENTLOG_TOPIC_RAG_EVENT_INDEX + ".lock":
|
||||||
logger.log(Level.WARNING, "│ ├── ⚠️ RAG_INDEX Event is not yet supported!");
|
|
||||||
|
// get indexDefinition
|
||||||
|
ItemCollection indexDefinition = new ItemCollection(eventLogEntry.getData());
|
||||||
|
String llmAPIEndpoint = indexDefinition.getItemValueString("endpoint");
|
||||||
|
boolean debug = indexDefinition.getItemValueBoolean("debug");
|
||||||
|
// String llmPromptTemplate =
|
||||||
|
// indexDefinition.getItemValueString("promptTemplate");
|
||||||
|
String llmPrompt = indexDefinition.getItemValueString("prompt");
|
||||||
|
|
||||||
|
if (debug) {
|
||||||
|
logger.info("│ ├── Total Prompt Length = " + llmPrompt.length());
|
||||||
|
logger.info("│ ├── Prompt: ");
|
||||||
|
logger.info(llmPrompt);
|
||||||
|
}
|
||||||
|
|
||||||
|
// remove old embeddings
|
||||||
|
clusterService.removeAllEmbeddings(workitem.getUniqueID());
|
||||||
|
// chunk text....
|
||||||
|
List<String> chunk_list = RAGUtil.chunkMarkupDocument(llmPrompt);
|
||||||
|
for (String chunk : chunk_list) {
|
||||||
|
if (debug) {
|
||||||
|
logger.info("│ ├── 🔸 chunk: ");
|
||||||
|
logger.info(chunk);
|
||||||
|
}
|
||||||
|
List<Float> indexResult = llmService.postEmbedding(chunk, llmAPIEndpoint, debug);
|
||||||
|
// write to cassandra
|
||||||
|
clusterService.insertVector(workitem.getUniqueID(),
|
||||||
|
workitem.getModelVersion(),
|
||||||
|
workitem.getTaskID(),
|
||||||
|
chunk,
|
||||||
|
indexResult);
|
||||||
|
if (debug) {
|
||||||
|
logger.info("│ ├── ⇨ " + indexResult.size() + " floats stored in RAG db.");
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// no op
|
// no op
|
||||||
|
|
@ -160,6 +199,10 @@ public class RAGEventService {
|
||||||
logger.log(Level.WARNING, e.getErrorCode() + " - " + e.getMessage());
|
logger.log(Level.WARNING, e.getErrorCode() + " - " + e.getMessage());
|
||||||
// remove the event log entry...
|
// remove the event log entry...
|
||||||
eventLogService.removeEvent(eventLogEntry.getId());
|
eventLogService.removeEvent(eventLogEntry.getId());
|
||||||
|
} catch (PluginException e) {
|
||||||
|
logger.log(Level.WARNING, e.getErrorCode() + " - " + e.getMessage());
|
||||||
|
// remove the event log entry...
|
||||||
|
eventLogService.removeEvent(eventLogEntry.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
2
pom.xml
2
pom.xml
|
|
@ -61,7 +61,7 @@
|
||||||
<!-- Dependency Versions -->
|
<!-- Dependency Versions -->
|
||||||
<jakarta.version>10.0.0</jakarta.version>
|
<jakarta.version>10.0.0</jakarta.version>
|
||||||
<microprofile.version>6.0</microprofile.version>
|
<microprofile.version>6.0</microprofile.version>
|
||||||
<org.imixs.workflow.version>6.2.2-SNAPSHOT</org.imixs.workflow.version>
|
<org.imixs.workflow.version>6.2.3-SNAPSHOT</org.imixs.workflow.version>
|
||||||
<org.imixs.archive.version>3.1.2-SNAPSHOT</org.imixs.archive.version>
|
<org.imixs.archive.version>3.1.2-SNAPSHOT</org.imixs.archive.version>
|
||||||
<org.imixs.office.version>5.1.3-SNAPSHOT</org.imixs.office.version>
|
<org.imixs.office.version>5.1.3-SNAPSHOT</org.imixs.office.version>
|
||||||
<org.imixs.marty.version>5.0.3</org.imixs.marty.version>
|
<org.imixs.marty.version>5.0.3</org.imixs.marty.version>
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,15 @@
|
||||||
<bpmn2:flowNodeRef>event_qTIbqA</bpmn2:flowNodeRef>
|
<bpmn2:flowNodeRef>event_qTIbqA</bpmn2:flowNodeRef>
|
||||||
<bpmn2:flowNodeRef>dataObject_axJA7Q</bpmn2:flowNodeRef>
|
<bpmn2:flowNodeRef>dataObject_axJA7Q</bpmn2:flowNodeRef>
|
||||||
<bpmn2:flowNodeRef>event_y0smQw</bpmn2:flowNodeRef>
|
<bpmn2:flowNodeRef>event_y0smQw</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>task_ol2R9A</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_P1MFZQ</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_NLZbsw</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>task_0THxmg</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_KwpMKw</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>dataObject_iq4agg</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>dataObject_u4ZytA</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_zsQpoQ</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_EyDvQQ</bpmn2:flowNodeRef>
|
||||||
</bpmn2:lane>
|
</bpmn2:lane>
|
||||||
</bpmn2:laneSet>
|
</bpmn2:laneSet>
|
||||||
<bpmn2:startEvent id="StartEvent_1" name="Start">
|
<bpmn2:startEvent id="StartEvent_1" name="Start">
|
||||||
|
|
@ -127,6 +136,7 @@ Color: <itemvalue>_color</itemvalue><br />
|
||||||
<bpmn2:incoming>sequenceFlow_8NDJxA</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_8NDJxA</bpmn2:incoming>
|
||||||
<bpmn2:outgoing>sequenceFlow_UIpo9Q</bpmn2:outgoing>
|
<bpmn2:outgoing>sequenceFlow_UIpo9Q</bpmn2:outgoing>
|
||||||
<bpmn2:incoming>sequenceFlow_WRPdIA</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_WRPdIA</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_ytbNEQ</bpmn2:incoming>
|
||||||
</bpmn2:task>
|
</bpmn2:task>
|
||||||
<bpmn2:dataObject id="DataObject_2" imixs:datatype="form-data" name="Order Form">
|
<bpmn2:dataObject id="DataObject_2" imixs:datatype="form-data" name="Order Form">
|
||||||
<bpmn2:documentation id="Documentation_8"><![CDATA[<?xml version="1.0"?>
|
<bpmn2:documentation id="Documentation_8"><![CDATA[<?xml version="1.0"?>
|
||||||
|
|
@ -193,7 +203,9 @@ Color: <itemvalue>_color</itemvalue><br />
|
||||||
<bpmn2:documentation id="Documentation_27"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
<bpmn2:documentation id="Documentation_27"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
<bpmn2:incoming>SequenceFlow_42</bpmn2:incoming>
|
<bpmn2:incoming>SequenceFlow_42</bpmn2:incoming>
|
||||||
<bpmn2:outgoing>sequenceFlow_HCxYvw</bpmn2:outgoing>
|
<bpmn2:outgoing>sequenceFlow_HCxYvw</bpmn2:outgoing>
|
||||||
<bpmn2:incoming>sequenceFlow_4DUFiA</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_RppP5Q</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_VlP5cw</bpmn2:outgoing>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_ZtZaBQ</bpmn2:outgoing>
|
||||||
</bpmn2:task>
|
</bpmn2:task>
|
||||||
<bpmn2:task id="Task_4" imixs:processid="1400" name="Bestellt">
|
<bpmn2:task id="Task_4" imixs:processid="1400" name="Bestellt">
|
||||||
<bpmn2:extensionElements>
|
<bpmn2:extensionElements>
|
||||||
|
|
@ -295,7 +307,7 @@ Color: <itemvalue>_color</itemvalue><br />
|
||||||
<bpmn2:sequenceFlow id="SequenceFlow_47" sourceRef="Task_5" targetRef="EndEvent_2">
|
<bpmn2:sequenceFlow id="SequenceFlow_47" sourceRef="Task_5" targetRef="EndEvent_2">
|
||||||
<bpmn2:documentation id="documentation_ad1jJw"/>
|
<bpmn2:documentation id="documentation_ad1jJw"/>
|
||||||
</bpmn2:sequenceFlow>
|
</bpmn2:sequenceFlow>
|
||||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_17" imixs:activityid="40" name="Bestellt">
|
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_17" imixs:activityid="40" name="Versenden">
|
||||||
<bpmn2:extensionElements>
|
<bpmn2:extensionElements>
|
||||||
<imixs:item name="keylogtimeformat" type="xs:string">
|
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||||
<imixs:value><![CDATA[2]]></imixs:value>
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
|
@ -365,6 +377,7 @@ Betrag: <itemvalue>_amount</itemvalue> (Brutto € <itemvalue>_amount_brutto</it
|
||||||
<bpmn2:documentation id="Documentation_32"><![CDATA[Bestellung ausgeführt]]></bpmn2:documentation>
|
<bpmn2:documentation id="Documentation_32"><![CDATA[Bestellung ausgeführt]]></bpmn2:documentation>
|
||||||
<bpmn2:outgoing>SequenceFlow_56</bpmn2:outgoing>
|
<bpmn2:outgoing>SequenceFlow_56</bpmn2:outgoing>
|
||||||
<bpmn2:incoming>sequenceFlow_HCxYvw</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_HCxYvw</bpmn2:incoming>
|
||||||
|
<bpmn2:messageEventDefinition id="messageEventDefinition_59qUIg" messageRef="message_1"/>
|
||||||
</bpmn2:intermediateCatchEvent>
|
</bpmn2:intermediateCatchEvent>
|
||||||
<bpmn2:sequenceFlow id="SequenceFlow_56" sourceRef="IntermediateCatchEvent_17" targetRef="ExclusiveGateway_2">
|
<bpmn2:sequenceFlow id="SequenceFlow_56" sourceRef="IntermediateCatchEvent_17" targetRef="ExclusiveGateway_2">
|
||||||
<bpmn2:documentation id="documentation_T3n4KQ"/>
|
<bpmn2:documentation id="documentation_T3n4KQ"/>
|
||||||
|
|
@ -1061,7 +1074,7 @@ result.isValid=true;
|
||||||
<bpmn2:association id="association_JGXYyg" sourceRef="event_qTIbqA" targetRef="dataObject_axJA7Q">
|
<bpmn2:association id="association_JGXYyg" sourceRef="event_qTIbqA" targetRef="dataObject_axJA7Q">
|
||||||
<bpmn2:documentation id="documentation_mvyBDQ"/>
|
<bpmn2:documentation id="documentation_mvyBDQ"/>
|
||||||
</bpmn2:association>
|
</bpmn2:association>
|
||||||
<bpmn2:intermediateCatchEvent id="event_y0smQw" imixs:activityid="10" name="Weiterleiten">
|
<bpmn2:intermediateCatchEvent id="event_y0smQw" imixs:activityid="20" name="Angebot erstellen">
|
||||||
<bpmn2:extensionElements>
|
<bpmn2:extensionElements>
|
||||||
<imixs:item name="keylogtimeformat" type="xs:string">
|
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||||
<imixs:value><![CDATA[2]]></imixs:value>
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
|
@ -1113,7 +1126,7 @@ result.isValid=true;
|
||||||
<imixs:value/>
|
<imixs:value/>
|
||||||
</imixs:item>
|
</imixs:item>
|
||||||
<imixs:item name="txtactivityresult" type="xs:string">
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
<imixs:value><![CDATA[<item name="comment" ignore="true"/>
|
<imixs:value><![CDATA[<item name="action">home</item>
|
||||||
<item name="process">Vertrieb</item>]]></imixs:value>
|
<item name="process">Vertrieb</item>]]></imixs:value>
|
||||||
</imixs:item>
|
</imixs:item>
|
||||||
<imixs:item name="txtname" type="xs:string">
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
|
@ -1132,8 +1145,9 @@ result.isValid=true;
|
||||||
<bpmn2:documentation id="documentation_bvKjjA"><![CDATA[Zwischenspeichern]]></bpmn2:documentation>
|
<bpmn2:documentation id="documentation_bvKjjA"><![CDATA[Zwischenspeichern]]></bpmn2:documentation>
|
||||||
<bpmn2:outgoing>sequenceFlow_4DUFiA</bpmn2:outgoing>
|
<bpmn2:outgoing>sequenceFlow_4DUFiA</bpmn2:outgoing>
|
||||||
<bpmn2:incoming>sequenceFlow_UIpo9Q</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_UIpo9Q</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_VlP5cw</bpmn2:incoming>
|
||||||
</bpmn2:intermediateCatchEvent>
|
</bpmn2:intermediateCatchEvent>
|
||||||
<bpmn2:sequenceFlow id="sequenceFlow_4DUFiA" sourceRef="event_y0smQw" targetRef="Task_3">
|
<bpmn2:sequenceFlow id="sequenceFlow_4DUFiA" sourceRef="event_y0smQw" targetRef="task_ol2R9A">
|
||||||
<bpmn2:documentation id="documentation_LHW0zQ"/>
|
<bpmn2:documentation id="documentation_LHW0zQ"/>
|
||||||
</bpmn2:sequenceFlow>
|
</bpmn2:sequenceFlow>
|
||||||
<bpmn2:sequenceFlow id="sequenceFlow_HCxYvw" sourceRef="Task_3" targetRef="IntermediateCatchEvent_17">
|
<bpmn2:sequenceFlow id="sequenceFlow_HCxYvw" sourceRef="Task_3" targetRef="IntermediateCatchEvent_17">
|
||||||
|
|
@ -1148,11 +1162,447 @@ result.isValid=true;
|
||||||
<bpmn2:sequenceFlow id="sequenceFlow_WRPdIA" sourceRef="event_qTIbqA" targetRef="Task_2">
|
<bpmn2:sequenceFlow id="sequenceFlow_WRPdIA" sourceRef="event_qTIbqA" targetRef="Task_2">
|
||||||
<bpmn2:documentation id="documentation_YclfqA"/>
|
<bpmn2:documentation id="documentation_YclfqA"/>
|
||||||
</bpmn2:sequenceFlow>
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:task id="task_ol2R9A" imixs:processid="1100" name="RETRIEVAL">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[form_basic]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtworkflowabstract" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<strong>Product: <itemvalue>_name</itemvalue></strong><br />
|
||||||
|
EAN: <itemvalue>_ean</itemvalue><br />
|
||||||
|
Category: <itemvalue>_category</itemvalue><br />
|
||||||
|
Brand: <itemvalue>_brand</itemvalue><br />
|
||||||
|
<hr />
|
||||||
|
Description: <br />
|
||||||
|
<itemvalue>_description</itemvalue><br />
|
||||||
|
<hr />
|
||||||
|
Price: <itemvalue>_price</itemvalue> <itemvalue>_currency</itemvalue><br />
|
||||||
|
Stock: <itemvalue>_stock</itemvalue><br />
|
||||||
|
Size: <itemvalue>_size</itemvalue><br />
|
||||||
|
Color: <itemvalue>_color</itemvalue><br />
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Rechnung erhalten]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-download-outline]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<itemvalue>request.subject</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessassist]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namspacemanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namspaceteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessassist]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitem]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_dQiKXw"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>sequenceFlow_WRPdIA</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_4DUFiA</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_0Q20mA</bpmn2:outgoing>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_P1MFZQ" imixs:activityid="50" name="(RAG)">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyarchive" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtmailsubject" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaccessmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfmailbody" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyversion" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextactivityid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyfollowup" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keypublicresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[1]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keylogdateformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<imixs-ai name="RETRIEVAL">
|
||||||
|
<endpoint>https://llama.cpp2.imixs.com/</endpoint>
|
||||||
|
<debug>true</debug>
|
||||||
|
</imixs-ai>
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_00qc3A"><![CDATA[RAG Test]]></bpmn2:documentation>
|
||||||
|
<bpmn2:signalEventDefinition id="signalEventDefinition_cAd1tQ" signalRef="signal_4"/>
|
||||||
|
<bpmn2:incoming>sequenceFlow_0Q20mA</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_InfPdQ</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_hZg0iw</bpmn2:outgoing>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:boundaryEvent attachedToRef="task_ol2R9A" id="event_NLZbsw" name="">
|
||||||
|
<bpmn2:documentation id="documentation_u0BGKw"/>
|
||||||
|
<bpmn2:timerEventDefinition id="timerEventDefinition_cGzCLw"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_InfPdQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:boundaryEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_0Q20mA" sourceRef="task_ol2R9A" targetRef="event_P1MFZQ">
|
||||||
|
<bpmn2:documentation id="documentation_hKA1ng"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_InfPdQ" sourceRef="event_NLZbsw" targetRef="event_P1MFZQ">
|
||||||
|
<bpmn2:documentation id="documentation_M1WwCA"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:task id="task_0THxmg" imixs:processid="1101" name="GENERATE">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[form_basic]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtworkflowabstract" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<strong>Product: <itemvalue>_name</itemvalue></strong><br />
|
||||||
|
EAN: <itemvalue>_ean</itemvalue><br />
|
||||||
|
Category: <itemvalue>_category</itemvalue><br />
|
||||||
|
Brand: <itemvalue>_brand</itemvalue><br />
|
||||||
|
<hr />
|
||||||
|
Description: <br />
|
||||||
|
<itemvalue>_description</itemvalue><br />
|
||||||
|
<hr />
|
||||||
|
Price: <itemvalue>_price</itemvalue> <itemvalue>_currency</itemvalue><br />
|
||||||
|
Stock: <itemvalue>_stock</itemvalue><br />
|
||||||
|
Size: <itemvalue>_size</itemvalue><br />
|
||||||
|
Color: <itemvalue>_color</itemvalue><br />
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Rechnung erhalten]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-download-outline]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<itemvalue>request.subject</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessassist]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namspacemanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namspaceteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessassist]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitem]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_OqV5nQ"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>sequenceFlow_4DUFiA</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_hZg0iw</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_HfDRCQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_hZg0iw" sourceRef="event_P1MFZQ" targetRef="task_0THxmg">
|
||||||
|
<bpmn2:documentation id="documentation_g8x3HQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_KwpMKw" imixs:activityid="50" name="(LLM)">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyarchive" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtmailsubject" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaccessmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfmailbody" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyversion" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextactivityid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyfollowup" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keypublicresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[1]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keylogdateformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<imixs-ai name="PROMPT">
|
||||||
|
<endpoint><propertyvalue>llm.service.endpoint</propertyvalue></endpoint>
|
||||||
|
<result-item>offer.proposal</result-item>
|
||||||
|
<debug>true</debug>
|
||||||
|
</imixs-ai>
|
||||||
|
<validation name="required">false</validation>
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_rjaifw"><![CDATA[RAG Test]]></bpmn2:documentation>
|
||||||
|
<bpmn2:signalEventDefinition id="signalEventDefinition_gJ2xPg" signalRef="signal_3"/>
|
||||||
|
<bpmn2:incoming>sequenceFlow_InfPdQ</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_HfDRCQ</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_RppP5Q</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_JZ6sYQ</bpmn2:incoming>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_HfDRCQ" sourceRef="task_0THxmg" targetRef="event_KwpMKw">
|
||||||
|
<bpmn2:documentation id="documentation_9L7Crw"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_RppP5Q" sourceRef="event_KwpMKw" targetRef="Task_3">
|
||||||
|
<bpmn2:documentation id="documentation_IvSc3w"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:association id="association_AIXGmw" sourceRef="dataObject_axJA7Q" targetRef="event_P1MFZQ">
|
||||||
|
<bpmn2:documentation id="documentation_kEcmWQ"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:dataObject id="dataObject_iq4agg" imixs:datatype="prompt-data" name="Prompt">
|
||||||
|
<bpmn2:documentation id="documentation_fFWo7Q" open-bpmn:file-link="file://offer-proposal-de.xml"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<PromptDefinition>
|
||||||
|
<prompt_options>{"n_predict": 4096, "temperature": 0}</prompt_options>
|
||||||
|
<prompt><![CDATA[[INST] Du bist Vertriebsmitarbeiter bei der LUPI Wärmetauscher GmbH. Deine Aufgabe ist es, eingehende Anfragen zu beantworten und Vorschläge für Angebote zu unterbreiten. [/INST]
|
||||||
|
|
||||||
|
<itemvalue>request.description</itemvalue>
|
||||||
|
|
||||||
|
</s>[INST]
|
||||||
|
|
||||||
|
Zu dem hier vorliegenden Angebot kommen folgende Produkte in Frage:
|
||||||
|
|
||||||
|
|
||||||
|
<for-each-ref item="product.ref">
|
||||||
|
<itemvalue>$workflowabstract</itemvalue>
|
||||||
|
</for-each-ref>
|
||||||
|
|
||||||
|
|
||||||
|
Prüfe welches dieser Produkte am besten für die Anfrage geeignet ist und erstelle ein Angebot sowie eine kurze Begründung für deine Auswahl die für den Kunden verständlich ist.
|
||||||
|
|
||||||
|
Füge eine Tabelle mit den folgenden Spalten für die Angebotserstellung mit ein:
|
||||||
|
|
||||||
|
- Produkt
|
||||||
|
- Menge
|
||||||
|
- Preis pro Stück
|
||||||
|
- Mehrwertsteuer
|
||||||
|
- Gesamtpreis
|
||||||
|
|
||||||
|
|
||||||
|
[/INST]
|
||||||
|
]]]]><![CDATA[>
|
||||||
|
</prompt>
|
||||||
|
</PromptDefinition> ]]></bpmn2:documentation>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:association id="association_IJuYEA" sourceRef="dataObject_iq4agg" targetRef="event_KwpMKw">
|
||||||
|
<bpmn2:documentation id="documentation_2mN70Q"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:dataObject id="dataObject_u4ZytA" imixs:datatype="form-data" name="Order Form">
|
||||||
|
<bpmn2:documentation id="documentation_lSiw2w"><![CDATA[<?xml version="1.0"?>
|
||||||
|
<imixs-form>
|
||||||
|
<imixs-form-section columns="1" label="" readonly="false">
|
||||||
|
<item name="request.subject" type="text" label="Anfrage:" />
|
||||||
|
<item name="request.description" type="textarea" label="Beschreibung:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Angebot:" readonly="true" >
|
||||||
|
<item name="offer.proposal" type="custom" path="markdown" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Produkte Vorschalg" readonly="true" >
|
||||||
|
<item name="product.ref"
|
||||||
|
type="custom" required="true"
|
||||||
|
path="workitemlink"
|
||||||
|
options="($workflowgroup:Produkt)((type:workitem) OR (type:workitemarchive))"
|
||||||
|
label="Referenz:" />
|
||||||
|
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
</imixs-form>
|
||||||
|
]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataState id="dataState_X4nVjg"/>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:association id="association_0SKl0g" sourceRef="dataObject_u4ZytA" targetRef="Task_3">
|
||||||
|
<bpmn2:documentation id="documentation_VQTg6w"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_VlP5cw" sourceRef="Task_3" targetRef="event_y0smQw">
|
||||||
|
<bpmn2:documentation id="documentation_DBOmUA"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:boundaryEvent attachedToRef="task_0THxmg" id="event_zsQpoQ" name="">
|
||||||
|
<bpmn2:documentation id="documentation_3lp4uw"/>
|
||||||
|
<bpmn2:timerEventDefinition id="timerEventDefinition_Db9Rjg"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_JZ6sYQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:boundaryEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_JZ6sYQ" sourceRef="event_zsQpoQ" targetRef="event_KwpMKw">
|
||||||
|
<bpmn2:documentation id="documentation_WBLfdQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_EyDvQQ" imixs:activityid="11" name="Zurück (Debug)">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyarchive" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtmailsubject" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaccessmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfmailbody" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyversion" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextactivityid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyfollowup" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keypublicresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[1]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keylogdateformat" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[2]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namCurrentEditor]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[namCreator]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="numnextid" type="xs:int">
|
||||||
|
<imixs:value><![CDATA[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<item name="comment" ignore="true"/>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipmode" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_ENg2sw"><![CDATA[Zwischenspeichern]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>sequenceFlow_ZtZaBQ</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_ytbNEQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_ZtZaBQ" sourceRef="Task_3" targetRef="event_EyDvQQ">
|
||||||
|
<bpmn2:documentation id="documentation_gD4Xww"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_ytbNEQ" sourceRef="event_EyDvQQ" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_10SRvg"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
</bpmn2:process>
|
</bpmn2:process>
|
||||||
<bpmn2:process id="process_2" name="Default Process" processType="Public">
|
<bpmn2:process id="process_2" name="Default Process" processType="Public">
|
||||||
<bpmn2:documentation id="documentation_imRbaw"/>
|
<bpmn2:documentation id="documentation_imRbaw"/>
|
||||||
</bpmn2:process>
|
</bpmn2:process>
|
||||||
<bpmn2:signal id="signal_3" name="org.imixs.workflow.wopi.WopiTemplateAdapter"/>
|
<bpmn2:signal id="signal_3" name="org.imixs.ai.workflow.OpenAIAPIAdapter"/>
|
||||||
<bpmn2:signal id="signal_4" name="ai.dynamixs.rag.RAGAdapter"/>
|
<bpmn2:signal id="signal_4" name="ai.dynamixs.rag.RAGAdapter"/>
|
||||||
<bpmn2:message id="message_1" name="Message 1">
|
<bpmn2:message id="message_1" name="Message 1">
|
||||||
<bpmn2:documentation id="documentation_lq3hSg"/>
|
<bpmn2:documentation id="documentation_lq3hSg"/>
|
||||||
|
|
@ -1160,15 +1610,15 @@ result.isValid=true;
|
||||||
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
|
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
|
||||||
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_Process_1">
|
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_Process_1">
|
||||||
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
||||||
<dc:Bounds height="530.0" width="1880.0" x="100.0" y="70.0"/>
|
<dc:Bounds height="1050.0" width="2420.0" x="90.0" y="70.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Lane_1" id="BPMNShape_Lane_1" isHorizontal="true">
|
<bpmndi:BPMNShape bpmnElement="Lane_1" id="BPMNShape_Lane_1" isHorizontal="true">
|
||||||
<dc:Bounds height="530.0" width="1850.0" x="130.0" y="70.0"/>
|
<dc:Bounds height="1050.0" width="2390.0" x="120.0" y="70.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="StartEvent_1" id="BPMNShape_StartEvent_1">
|
<bpmndi:BPMNShape bpmnElement="StartEvent_1" id="BPMNShape_StartEvent_1">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="227.0" y="317.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="217.0" y="317.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_1" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_1" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="196.5" y="351.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="186.5" y="351.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape id="BPMNShape_TextAnnotation_1">
|
<bpmndi:BPMNShape id="BPMNShape_TextAnnotation_1">
|
||||||
|
|
@ -1178,188 +1628,187 @@ result.isValid=true;
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_2" id="BPMNShape_Task_5">
|
<bpmndi:BPMNShape bpmnElement="Task_2" id="BPMNShape_Task_5">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="360.0" y="310.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="350.0" y="310.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="DataObject_2" id="BPMNShape_DataObject_1">
|
<bpmndi:BPMNShape bpmnElement="DataObject_2" id="BPMNShape_DataObject_1">
|
||||||
<dc:Bounds height="50.0" width="35.0" x="290.0" y="210.0"/>
|
<dc:Bounds height="50.0" width="35.0" x="280.0" y="210.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_85">
|
<bpmndi:BPMNLabel id="BPMNLabel_85">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="258.0" y="260.0000305175781"/>
|
<dc:Bounds height="20.0" width="100.0" x="248.0" y="260.0000305175781"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_3" id="BPMNShape_Task_9">
|
<bpmndi:BPMNShape bpmnElement="Task_3" id="BPMNShape_Task_9">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="670.0" y="310.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="660.0" y="310.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_4" id="BPMNShape_Task_10">
|
<bpmndi:BPMNShape bpmnElement="Task_4" id="BPMNShape_Task_10">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="1150.0" y="310.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="1140.0" y="310.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_5" id="BPMNShape_Task_11">
|
<bpmndi:BPMNShape bpmnElement="Task_5" id="BPMNShape_Task_11">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="1630.0" y="310.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="1620.0" y="310.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="EndEvent_2" id="BPMNShape_EndEvent_2">
|
<bpmndi:BPMNShape bpmnElement="EndEvent_2" id="BPMNShape_EndEvent_2">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1787.0" y="247.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1777.0" y="247.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_110" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_110" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1758.138671875" y="282.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="1748.138671875" y="282.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_17" id="BPMNShape_IntermediateCatchEvent_27">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_17" id="BPMNShape_IntermediateCatchEvent_27">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="857.0" y="317.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="847.0" y="317.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_116" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_116" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="834.0128173828125" y="357.1767883300781"/>
|
<dc:Bounds height="20.0" width="100.0" x="824.0128173828125" y="357.1767883300781"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_4" id="BPMNShape_IntermediateCatchEvent_9">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_4" id="BPMNShape_IntermediateCatchEvent_9">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1347.0" y="317.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1337.0" y="317.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_46" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_46" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1317.7283935546875" y="351.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="1307.7283935546875" y="351.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_1" id="BPMNShape_Task_3">
|
<bpmndi:BPMNShape bpmnElement="Task_1" id="BPMNShape_Task_3">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="1150.0" y="160.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="1140.0" y="160.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_6" id="BPMNShape_IntermediateCatchEvent_11">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_6" id="BPMNShape_IntermediateCatchEvent_11">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1187.0" y="237.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1177.0" y="237.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_56" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_56" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1155.2283935546875" y="278.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="1145.2283935546875" y="278.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="TextAnnotation_4" id="BPMNShape_TextAnnotation_4">
|
<bpmndi:BPMNShape bpmnElement="TextAnnotation_4" id="BPMNShape_TextAnnotation_4">
|
||||||
<dc:Bounds height="60.0" width="239.0" x="1240.0" y="90.0"/>
|
<dc:Bounds height="60.0" width="239.0" x="1230.0" y="90.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_7" id="BPMNShape_IntermediateCatchEvent_12">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_7" id="BPMNShape_IntermediateCatchEvent_12">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1077.0" y="167.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1067.0" y="167.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_31" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_31" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1048.638671875" y="203.10794067382812"/>
|
<dc:Bounds height="20.0" width="100.0" x="1038.638671875" y="203.10794067382812"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_8" id="BPMNShape_IntermediateCatchEvent_14">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_8" id="BPMNShape_IntermediateCatchEvent_14">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1187.0" y="427.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1177.0" y="427.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_70" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_70" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1154.7283935546875" y="464.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="1144.7283935546875" y="464.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="Task_6" id="BPMNShape_Task_4">
|
<bpmndi:BPMNShape bpmnElement="Task_6" id="BPMNShape_Task_4">
|
||||||
<dc:Bounds height="50.0" width="110.0" x="1630.0" y="160.0"/>
|
<dc:Bounds height="50.0" width="110.0" x="1620.0" y="160.0"/>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="EventBasedGateway_1" id="BPMNShape_EventBasedGateway_1" isMarkerVisible="true">
|
<bpmndi:BPMNShape bpmnElement="EventBasedGateway_1" id="BPMNShape_EventBasedGateway_1" isMarkerVisible="true">
|
||||||
<dc:Bounds height="50.0" width="50.0" x="1340.0" y="160.0"/>
|
<dc:Bounds height="50.0" width="50.0" x="1330.0" y="160.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_74" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_74" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1315.0" y="213.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="1305.0" y="213.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_9" id="BPMNShape_IntermediateCatchEvent_15">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_9" id="BPMNShape_IntermediateCatchEvent_15">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="1497.0" y="167.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="1487.0" y="167.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_76" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_76" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="1467.138671875" y="203.10794067382812"/>
|
<dc:Bounds height="20.0" width="100.0" x="1457.138671875" y="203.10794067382812"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="ExclusiveGateway_2" id="BPMNShape_ExclusiveGateway_2" isMarkerVisible="true">
|
<bpmndi:BPMNShape bpmnElement="ExclusiveGateway_2" id="BPMNShape_ExclusiveGateway_2" isMarkerVisible="true">
|
||||||
<dc:Bounds height="50.0" width="50.0" x="980.0" y="310.0"/>
|
<dc:Bounds height="50.0" width="50.0" x="970.0" y="310.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_82" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_82" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="955.0" y="363.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="945.0" y="363.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_10" id="BPMNShape_IntermediateCatchEvent_16">
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_10" id="BPMNShape_IntermediateCatchEvent_16">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="707.0" y="427.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="697.0" y="217.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_92" labelStyle="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabel id="BPMNLabel_92" labelStyle="BPMNLabelStyle_1">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="676.7044067382812" y="462.10797119140625"/>
|
<dc:Bounds height="20.0" width="100.0" x="666.7044067382812" y="252.10797119140625"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNEdge bpmnElement="Association_2" id="BPMNEdge_Association_2" sourceElement="BPMNShape_DataObject_1" targetElement="BPMNShape_Task_5">
|
<bpmndi:BPMNEdge bpmnElement="Association_2" id="BPMNEdge_Association_2" sourceElement="BPMNShape_DataObject_1" targetElement="BPMNShape_Task_5">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_86"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_86"/>
|
||||||
<di:waypoint x="325.0" y="247.0"/>
|
<di:waypoint x="315.0" y="247.0"/>
|
||||||
<di:waypoint x="407.0" y="247.0"/>
|
<di:waypoint x="397.0" y="247.0"/>
|
||||||
<di:waypoint x="407.0" y="310.0"/>
|
<di:waypoint x="397.0" y="310.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_47" id="BPMNEdge_SequenceFlow_48" sourceElement="BPMNShape_Task_11" targetElement="BPMNShape_EndEvent_2">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_47" id="BPMNEdge_SequenceFlow_48" sourceElement="BPMNShape_Task_11" targetElement="BPMNShape_EndEvent_2">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_111"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_111"/>
|
||||||
<di:waypoint x="1740.0" y="323.0"/>
|
<di:waypoint x="1730.0" y="323.0"/>
|
||||||
<di:waypoint x="1805.0" y="323.0"/>
|
<di:waypoint x="1795.0" y="323.0"/>
|
||||||
<di:waypoint x="1805.0" y="283.0"/>
|
<di:waypoint x="1795.0" y="283.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_56" id="BPMNEdge_SequenceFlow_57" sourceElement="BPMNShape_IntermediateCatchEvent_27" targetElement="BPMNShape_ExclusiveGateway_2">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_56" id="BPMNEdge_SequenceFlow_57" sourceElement="BPMNShape_IntermediateCatchEvent_27" targetElement="BPMNShape_ExclusiveGateway_2">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_118"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_118"/>
|
||||||
<di:waypoint x="893.0" y="335.0"/>
|
<di:waypoint x="883.0" y="335.0"/>
|
||||||
<di:waypoint x="980.0" y="335.0"/>
|
<di:waypoint x="970.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_19" id="BPMNEdge_SequenceFlow_20" sourceElement="BPMNShape_Task_10" targetElement="BPMNShape_IntermediateCatchEvent_9">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_19" id="BPMNEdge_SequenceFlow_20" sourceElement="BPMNShape_Task_10" targetElement="BPMNShape_IntermediateCatchEvent_9">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_48"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_48"/>
|
||||||
<di:waypoint x="1260.0" y="335.0"/>
|
<di:waypoint x="1250.0" y="335.0"/>
|
||||||
<di:waypoint x="1347.0" y="335.0"/>
|
<di:waypoint x="1337.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_21" id="BPMNEdge_SequenceFlow_21" sourceElement="BPMNShape_IntermediateCatchEvent_9" targetElement="BPMNShape_Task_11">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_21" id="BPMNEdge_SequenceFlow_21" sourceElement="BPMNShape_IntermediateCatchEvent_9" targetElement="BPMNShape_Task_11">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_49"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_49"/>
|
||||||
<di:waypoint x="1383.0" y="335.0"/>
|
<di:waypoint x="1373.0" y="335.0"/>
|
||||||
<di:waypoint x="1630.0" y="335.0"/>
|
<di:waypoint x="1620.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_25" id="BPMNEdge_SequenceFlow_26" sourceElement="BPMNShape_Task_10" targetElement="BPMNShape_IntermediateCatchEvent_11">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_25" id="BPMNEdge_SequenceFlow_26" sourceElement="BPMNShape_Task_10" targetElement="BPMNShape_IntermediateCatchEvent_11">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_57"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_57"/>
|
||||||
<di:waypoint x="1205.0" y="310.0"/>
|
<di:waypoint x="1195.0" y="310.0"/>
|
||||||
<di:waypoint x="1205.0" y="273.0"/>
|
<di:waypoint x="1195.0" y="273.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_26" id="BPMNEdge_SequenceFlow_27" sourceElement="BPMNShape_IntermediateCatchEvent_11" targetElement="BPMNShape_Task_3">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_26" id="BPMNEdge_SequenceFlow_27" sourceElement="BPMNShape_IntermediateCatchEvent_11" targetElement="BPMNShape_Task_3">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_59"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_59"/>
|
||||||
<di:waypoint x="1205.0" y="237.0"/>
|
<di:waypoint x="1195.0" y="237.0"/>
|
||||||
<di:waypoint x="1205.0" y="210.0"/>
|
<di:waypoint x="1195.0" y="210.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_27" id="BPMNEdge_SequenceFlow_28" sourceElement="BPMNShape_EventBasedGateway_1" targetElement="BPMNShape_IntermediateCatchEvent_9">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_27" id="BPMNEdge_SequenceFlow_28" sourceElement="BPMNShape_EventBasedGateway_1" targetElement="BPMNShape_IntermediateCatchEvent_9">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_62"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_62"/>
|
||||||
<di:waypoint x="1365.0" y="210.0"/>
|
<di:waypoint x="1355.0" y="210.0"/>
|
||||||
<di:waypoint x="1365.0" y="263.0"/>
|
<di:waypoint x="1355.0" y="263.0"/>
|
||||||
<di:waypoint x="1365.0" y="317.0"/>
|
<di:waypoint x="1355.0" y="317.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="Association_5" id="BPMNEdge_Association_5" sourceElement="BPMNShape_TextAnnotation_4" targetElement="BPMNShape_Task_3">
|
<bpmndi:BPMNEdge bpmnElement="Association_5" id="BPMNEdge_Association_5" sourceElement="BPMNShape_TextAnnotation_4" targetElement="BPMNShape_Task_3">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_12"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_12"/>
|
||||||
<di:waypoint x="1240.0" y="112.0"/>
|
<di:waypoint x="1230.0" y="112.0"/>
|
||||||
<di:waypoint x="1209.0" y="112.0"/>
|
<di:waypoint x="1199.0" y="112.0"/>
|
||||||
<di:waypoint x="1209.0" y="160.0"/>
|
<di:waypoint x="1199.0" y="160.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_17" id="BPMNEdge_SequenceFlow_18" sourceElement="BPMNShape_IntermediateCatchEvent_14" targetElement="BPMNShape_Task_10">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_17" id="BPMNEdge_SequenceFlow_18" sourceElement="BPMNShape_IntermediateCatchEvent_14" targetElement="BPMNShape_Task_10">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_71"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_71"/>
|
||||||
<di:waypoint x="1205.0" y="427.0"/>
|
<di:waypoint x="1195.0" y="427.0"/>
|
||||||
<di:waypoint x="1205.0" y="360.0"/>
|
<di:waypoint x="1195.0" y="360.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_22" id="BPMNEdge_SequenceFlow_22" sourceElement="BPMNShape_Task_4" targetElement="BPMNShape_EndEvent_2">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_22" id="BPMNEdge_SequenceFlow_22" sourceElement="BPMNShape_Task_4" targetElement="BPMNShape_EndEvent_2">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_73"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_73"/>
|
||||||
<di:waypoint x="1740.0" y="185.0"/>
|
<di:waypoint x="1730.0" y="185.0"/>
|
||||||
<di:waypoint x="1805.0" y="185.0"/>
|
<di:waypoint x="1795.0" y="185.0"/>
|
||||||
<di:waypoint x="1805.0" y="247.0"/>
|
<di:waypoint x="1795.0" y="247.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_23" id="BPMNEdge_SequenceFlow_23" sourceElement="BPMNShape_Task_3" targetElement="BPMNShape_EventBasedGateway_1">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_23" id="BPMNEdge_SequenceFlow_23" sourceElement="BPMNShape_Task_3" targetElement="BPMNShape_EventBasedGateway_1">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_75"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_75"/>
|
||||||
<di:waypoint x="1260.0" y="185.0"/>
|
<di:waypoint x="1250.0" y="185.0"/>
|
||||||
<di:waypoint x="1340.0" y="185.0"/>
|
<di:waypoint x="1330.0" y="185.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_34" id="BPMNEdge_SequenceFlow_35" sourceElement="BPMNShape_EventBasedGateway_1" targetElement="BPMNShape_IntermediateCatchEvent_15">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_34" id="BPMNEdge_SequenceFlow_35" sourceElement="BPMNShape_EventBasedGateway_1" targetElement="BPMNShape_IntermediateCatchEvent_15">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_78"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_78"/>
|
||||||
<di:waypoint x="1390.0" y="185.0"/>
|
<di:waypoint x="1380.0" y="185.0"/>
|
||||||
<di:waypoint x="1497.0" y="185.0"/>
|
<di:waypoint x="1487.0" y="185.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_36" id="BPMNEdge_SequenceFlow_37" sourceElement="BPMNShape_Task_3" targetElement="BPMNShape_IntermediateCatchEvent_12">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_36" id="BPMNEdge_SequenceFlow_37" sourceElement="BPMNShape_Task_3" targetElement="BPMNShape_IntermediateCatchEvent_12">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_83"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_83"/>
|
||||||
<di:waypoint x="1150.0" y="185.0"/>
|
<di:waypoint x="1140.0" y="185.0"/>
|
||||||
<di:waypoint x="1113.0" y="185.0"/>
|
<di:waypoint x="1103.0" y="185.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_39" id="BPMNEdge_SequenceFlow_40" sourceElement="BPMNShape_IntermediateCatchEvent_12" targetElement="BPMNShape_ExclusiveGateway_2">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_39" id="BPMNEdge_SequenceFlow_40" sourceElement="BPMNShape_IntermediateCatchEvent_12" targetElement="BPMNShape_ExclusiveGateway_2">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_84"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_84"/>
|
||||||
<di:waypoint x="1077.0" y="185.0"/>
|
<di:waypoint x="1067.0" y="185.0"/>
|
||||||
<di:waypoint x="1006.0" y="185.0"/>
|
<di:waypoint x="996.0" y="185.0"/>
|
||||||
<di:waypoint x="1006.0" y="311.0"/>
|
<di:waypoint x="996.0" y="311.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_40" id="BPMNEdge_SequenceFlow_41" sourceElement="BPMNShape_ExclusiveGateway_2" targetElement="BPMNShape_Task_10">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_40" id="BPMNEdge_SequenceFlow_41" sourceElement="BPMNShape_ExclusiveGateway_2" targetElement="BPMNShape_Task_10">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_87"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_87"/>
|
||||||
<di:waypoint x="1030.0" y="335.0"/>
|
<di:waypoint x="1020.0" y="335.0"/>
|
||||||
<di:waypoint x="1150.0" y="335.0"/>
|
<di:waypoint x="1140.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_41" id="BPMNEdge_SequenceFlow_42" sourceElement="BPMNShape_IntermediateCatchEvent_15" targetElement="BPMNShape_Task_4">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_41" id="BPMNEdge_SequenceFlow_42" sourceElement="BPMNShape_IntermediateCatchEvent_15" targetElement="BPMNShape_Task_4">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_88"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_88"/>
|
||||||
<di:waypoint x="1533.0" y="185.0"/>
|
<di:waypoint x="1523.0" y="185.0"/>
|
||||||
<di:waypoint x="1630.0" y="185.0"/>
|
<di:waypoint x="1620.0" y="185.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_42" id="BPMNEdge_SequenceFlow_43" sourceElement="BPMNShape_IntermediateCatchEvent_16" targetElement="BPMNShape_Task_9">
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_42" id="BPMNEdge_SequenceFlow_43" sourceElement="BPMNShape_IntermediateCatchEvent_16" targetElement="BPMNShape_Task_9">
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_94"/>
|
<bpmndi:BPMNLabel id="BPMNLabel_94"/>
|
||||||
<di:waypoint x="725.0" y="427.0"/>
|
<di:waypoint x="715.0" y="253.0"/>
|
||||||
<di:waypoint x="725.0" y="395.0"/>
|
<di:waypoint x="715.0" y="310.0"/>
|
||||||
<di:waypoint x="725.0" y="360.0"/>
|
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNShape bpmnElement="message_1" id="BPMNShape_5X9D7w">
|
<bpmndi:BPMNShape bpmnElement="message_1" id="BPMNShape_5X9D7w">
|
||||||
<dc:Bounds height="20.0" width="30.0" x="190.0" y="0.0"/>
|
<dc:Bounds height="20.0" width="30.0" x="190.0" y="0.0"/>
|
||||||
|
|
@ -1368,46 +1817,155 @@ result.isValid=true;
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="event_qTIbqA" id="BPMNShape_0OS0TQ">
|
<bpmndi:BPMNShape bpmnElement="event_qTIbqA" id="BPMNShape_0OS0TQ">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="397.0" y="417.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="387.0" y="417.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_S00mag">
|
<bpmndi:BPMNLabel id="BPMNLabel_S00mag">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="365.0" y="456.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="355.0" y="456.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNShape bpmnElement="dataObject_axJA7Q" id="BPMNShape_3PbNFQ">
|
<bpmndi:BPMNShape bpmnElement="dataObject_axJA7Q" id="BPMNShape_3PbNFQ">
|
||||||
<dc:Bounds height="50.0" width="35.0" x="290.0" y="410.0"/>
|
<dc:Bounds height="50.0" width="35.0" x="320.0" y="570.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_0LrXLw">
|
<bpmndi:BPMNLabel id="BPMNLabel_0LrXLw">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="257.5" y="465.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="287.5" y="625.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNEdge bpmnElement="association_JGXYyg" id="BPMNEdge_bHPaEg" sourceElement="BPMNShape_0OS0TQ" targetElement="BPMNShape_3PbNFQ">
|
<bpmndi:BPMNEdge bpmnElement="association_JGXYyg" id="BPMNEdge_bHPaEg" sourceElement="BPMNShape_0OS0TQ" targetElement="BPMNShape_3PbNFQ">
|
||||||
<di:waypoint x="397.0" y="435.0"/>
|
<di:waypoint x="387.0" y="435.0"/>
|
||||||
<di:waypoint x="325.0" y="435.0"/>
|
<di:waypoint x="352.0" y="435.0"/>
|
||||||
|
<di:waypoint x="352.0" y="570.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNShape bpmnElement="event_y0smQw" id="BPMNShape_JqPTSA">
|
<bpmndi:BPMNShape bpmnElement="event_y0smQw" id="BPMNShape_JqPTSA">
|
||||||
<dc:Bounds height="36.0" width="36.0" x="547.0" y="317.0"/>
|
<dc:Bounds height="36.0" width="36.0" x="537.0" y="317.0"/>
|
||||||
<bpmndi:BPMNLabel id="BPMNLabel_CUZv5A">
|
<bpmndi:BPMNLabel id="BPMNLabel_CUZv5A">
|
||||||
<dc:Bounds height="20.0" width="100.0" x="515.0" y="356.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="505.0" y="356.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_4DUFiA" id="BPMNEdge_SHExwQ" sourceElement="BPMNShape_JqPTSA" targetElement="BPMNShape_Task_9">
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_4DUFiA" id="BPMNEdge_SHExwQ" sourceElement="BPMNShape_JqPTSA" targetElement="BPMNShape_GaaSuQ">
|
||||||
<di:waypoint x="583.0" y="335.0"/>
|
<di:waypoint x="555.0" y="353.0"/>
|
||||||
<di:waypoint x="670.0" y="335.0"/>
|
<di:waypoint x="555.0" y="462.0"/>
|
||||||
|
<di:waypoint x="555.0" y="570.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_HCxYvw" id="BPMNEdge_HrTn1A" sourceElement="BPMNShape_Task_9" targetElement="BPMNShape_IntermediateCatchEvent_27">
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_HCxYvw" id="BPMNEdge_HrTn1A" sourceElement="BPMNShape_Task_9" targetElement="BPMNShape_IntermediateCatchEvent_27">
|
||||||
<di:waypoint x="780.0" y="335.0"/>
|
<di:waypoint x="770.0" y="335.0"/>
|
||||||
<di:waypoint x="857.0" y="335.0"/>
|
<di:waypoint x="847.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_8NDJxA" id="BPMNEdge_5jeXwQ" sourceElement="BPMNShape_StartEvent_1" targetElement="BPMNShape_Task_5">
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_8NDJxA" id="BPMNEdge_5jeXwQ" sourceElement="BPMNShape_StartEvent_1" targetElement="BPMNShape_Task_5">
|
||||||
<di:waypoint x="263.0" y="335.0"/>
|
<di:waypoint x="253.0" y="335.0"/>
|
||||||
<di:waypoint x="360.0" y="335.0"/>
|
<di:waypoint x="350.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_UIpo9Q" id="BPMNEdge_GbmXGw" sourceElement="BPMNShape_Task_5" targetElement="BPMNShape_JqPTSA">
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_UIpo9Q" id="BPMNEdge_GbmXGw" sourceElement="BPMNShape_Task_5" targetElement="BPMNShape_JqPTSA">
|
||||||
<di:waypoint x="470.0" y="335.0"/>
|
<di:waypoint x="460.0" y="335.0"/>
|
||||||
<di:waypoint x="547.0" y="335.0"/>
|
<di:waypoint x="537.0" y="335.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_WRPdIA" id="BPMNEdge_OPuJYA" sourceElement="BPMNShape_0OS0TQ" targetElement="BPMNShape_Task_5">
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_WRPdIA" id="BPMNEdge_OPuJYA" sourceElement="BPMNShape_0OS0TQ" targetElement="BPMNShape_Task_5">
|
||||||
<di:waypoint x="415.0" y="417.0"/>
|
<di:waypoint x="405.0" y="417.0"/>
|
||||||
<di:waypoint x="415.0" y="360.0"/>
|
<di:waypoint x="405.0" y="360.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="task_ol2R9A" id="BPMNShape_GaaSuQ">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="500.0" y="570.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_P1MFZQ" id="BPMNShape_X7JvIg">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="537.0" y="707.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_UXw4qw">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="505.0" y="746.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_NLZbsw" id="BPMNShape_zb0q5w">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="597.0" y="577.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_mxSzrg">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="565.0" y="616.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_0Q20mA" id="BPMNEdge_0rXE0w" sourceElement="BPMNShape_GaaSuQ" targetElement="BPMNShape_X7JvIg">
|
||||||
|
<di:waypoint x="555.0" y="620.0"/>
|
||||||
|
<di:waypoint x="555.0" y="707.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_InfPdQ" id="BPMNEdge_Z4fGdA" sourceElement="BPMNShape_zb0q5w" targetElement="BPMNShape_X7JvIg">
|
||||||
|
<di:waypoint x="633.0" y="595.0"/>
|
||||||
|
<di:waypoint x="650.0" y="595.0"/>
|
||||||
|
<di:waypoint x="650.0" y="725.0"/>
|
||||||
|
<di:waypoint x="573.0" y="725.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="task_0THxmg" id="BPMNShape_wu0GaA">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="500.0" y="830.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_hZg0iw" id="BPMNEdge_rJd3OA" sourceElement="BPMNShape_X7JvIg" targetElement="BPMNShape_wu0GaA">
|
||||||
|
<di:waypoint x="555.0" y="743.0"/>
|
||||||
|
<di:waypoint x="555.0" y="830.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_KwpMKw" id="BPMNShape_qvXTpw">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="537.0" y="937.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_fI5L0A">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="505.0" y="976.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_HfDRCQ" id="BPMNEdge_VZ4APw" sourceElement="BPMNShape_wu0GaA" targetElement="BPMNShape_qvXTpw">
|
||||||
|
<di:waypoint x="555.0" y="880.0"/>
|
||||||
|
<di:waypoint x="555.0" y="937.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_RppP5Q" id="BPMNEdge_8ic0PQ" sourceElement="BPMNShape_qvXTpw" targetElement="BPMNShape_Task_9">
|
||||||
|
<di:waypoint x="555.0" y="973.0"/>
|
||||||
|
<di:waypoint x="555.0" y="1026.0"/>
|
||||||
|
<di:waypoint x="717.0" y="1026.0"/>
|
||||||
|
<di:waypoint x="717.0" y="360.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="association_AIXGmw" id="BPMNEdge_th7hjg" sourceElement="BPMNShape_3PbNFQ" targetElement="BPMNShape_X7JvIg">
|
||||||
|
<di:waypoint x="338.0" y="620.0"/>
|
||||||
|
<di:waypoint x="338.0" y="725.0"/>
|
||||||
|
<di:waypoint x="537.0" y="725.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="dataObject_iq4agg" id="BPMNShape_tMFi0g">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="330.0" y="930.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_7DuFzg">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="295.0" y="980.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="association_IJuYEA" id="BPMNEdge_fyp9yg" sourceElement="BPMNShape_tMFi0g" targetElement="BPMNShape_qvXTpw">
|
||||||
|
<di:waypoint x="365.0" y="955.0"/>
|
||||||
|
<di:waypoint x="537.0" y="955.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="dataObject_u4ZytA" id="BPMNShape_zNuYaQ">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="600.0" y="210.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_aquA5Q">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="568.0" y="268.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="association_0SKl0g" id="BPMNEdge_XpKvAg" sourceElement="BPMNShape_zNuYaQ" targetElement="BPMNShape_Task_9">
|
||||||
|
<di:waypoint x="635.0" y="235.0"/>
|
||||||
|
<di:waypoint x="678.0" y="235.0"/>
|
||||||
|
<di:waypoint x="678.0" y="310.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_VlP5cw" id="BPMNEdge_2nDXYg" sourceElement="BPMNShape_Task_9" targetElement="BPMNShape_JqPTSA">
|
||||||
|
<di:waypoint x="660.0" y="335.0"/>
|
||||||
|
<di:waypoint x="573.0" y="335.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_zsQpoQ" id="BPMNShape_4N0zng">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="587.0" y="837.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_8IelbQ">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="555.0" y="876.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_JZ6sYQ" id="BPMNEdge_zqEK5w" sourceElement="BPMNShape_4N0zng" targetElement="BPMNShape_qvXTpw">
|
||||||
|
<di:waypoint x="623.0" y="855.0"/>
|
||||||
|
<di:waypoint x="648.0" y="855.0"/>
|
||||||
|
<di:waypoint x="648.0" y="955.0"/>
|
||||||
|
<di:waypoint x="573.0" y="955.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_EyDvQQ" id="BPMNShape_yKgIag">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="797.0" y="147.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_bQWcwg">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="765.0" y="186.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_ZtZaBQ" id="BPMNEdge_fPCXug" sourceElement="BPMNShape_Task_9" targetElement="BPMNShape_yKgIag">
|
||||||
|
<di:waypoint x="747.0" y="310.0"/>
|
||||||
|
<di:waypoint x="747.0" y="285.0"/>
|
||||||
|
<di:waypoint x="815.0" y="285.0"/>
|
||||||
|
<di:waypoint x="815.0" y="183.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_ytbNEQ" id="BPMNEdge_Ycm48g" sourceElement="BPMNShape_yKgIag" targetElement="BPMNShape_Task_5">
|
||||||
|
<di:waypoint x="797.0" y="165.0"/>
|
||||||
|
<di:waypoint x="436.0" y="165.0"/>
|
||||||
|
<di:waypoint x="436.0" y="310.0"/>
|
||||||
</bpmndi:BPMNEdge>
|
</bpmndi:BPMNEdge>
|
||||||
</bpmndi:BPMNPlane>
|
</bpmndi:BPMNPlane>
|
||||||
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||||
|
|
|
||||||
32
workflow/offer-proposal-de.xml
Normal file
32
workflow/offer-proposal-de.xml
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<PromptDefinition>
|
||||||
|
<prompt_options>{"n_predict": 4096, "temperature": 0}</prompt_options>
|
||||||
|
<prompt><![CDATA[[INST] Du bist Vertriebsmitarbeiter bei der LUPI Wärmetauscher GmbH. Deine Aufgabe ist es, eingehende Anfragen zu beantworten und Vorschläge für Angebote zu unterbreiten. [/INST]
|
||||||
|
|
||||||
|
<itemvalue>request.description</itemvalue>
|
||||||
|
|
||||||
|
</s>[INST]
|
||||||
|
|
||||||
|
Zu dem hier vorliegenden Angebot kommen folgende Produkte in Frage:
|
||||||
|
|
||||||
|
|
||||||
|
<for-each-ref item="product.ref">
|
||||||
|
<itemvalue>$workflowabstract</itemvalue>
|
||||||
|
</for-each-ref>
|
||||||
|
|
||||||
|
|
||||||
|
Prüfe welches dieser Produkte am besten für die Anfrage geeignet ist und erstelle ein Angebot sowie eine kurze Begründung für deine Auswahl die für den Kunden verständlich ist.
|
||||||
|
|
||||||
|
Füge eine Tabelle mit den folgenden Spalten für die Angebotserstellung mit ein:
|
||||||
|
|
||||||
|
- Produkt
|
||||||
|
- Menge
|
||||||
|
- Preis pro Stück
|
||||||
|
- Mehrwertsteuer
|
||||||
|
- Gesamtpreis
|
||||||
|
|
||||||
|
|
||||||
|
[/INST]
|
||||||
|
]]>
|
||||||
|
</prompt>
|
||||||
|
</PromptDefinition>
|
||||||
|
|
@ -1333,10 +1333,10 @@ Betrag: <itemvalue>_amount</itemvalue> (Brutto € <itemvalue>_amount_brutto</it
|
||||||
</imixs:item>
|
</imixs:item>
|
||||||
<imixs:item name="txtactivityresult" type="xs:string">
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
<imixs:value><![CDATA[<item name="action">home</item>
|
<imixs:value><![CDATA[<item name="action">home</item>
|
||||||
<imixs-ai name="DELETE">
|
<rag-index name="DELETE">
|
||||||
<endpoint>https://llama.cpp2.imixs.com/</endpoint>
|
<endpoint>https://llama.cpp2.imixs.com/</endpoint>
|
||||||
<debug>true</debug>
|
<debug>true</debug>
|
||||||
</imixs-ai>
|
</rag-index>
|
||||||
]]></imixs:value>
|
]]></imixs:value>
|
||||||
</imixs:item>
|
</imixs:item>
|
||||||
<imixs:item name="txtname" type="xs:string">
|
<imixs:item name="txtname" type="xs:string">
|
||||||
|
|
@ -1355,7 +1355,7 @@ Betrag: <itemvalue>_amount</itemvalue> (Brutto € <itemvalue>_amount_brutto</it
|
||||||
<bpmn2:documentation id="documentation_DVm0Lg"><![CDATA[Bestellung ausgeführt]]></bpmn2:documentation>
|
<bpmn2:documentation id="documentation_DVm0Lg"><![CDATA[Bestellung ausgeführt]]></bpmn2:documentation>
|
||||||
<bpmn2:incoming>sequenceFlow_Jkgs0A</bpmn2:incoming>
|
<bpmn2:incoming>sequenceFlow_Jkgs0A</bpmn2:incoming>
|
||||||
<bpmn2:outgoing>sequenceFlow_RgOnDQ</bpmn2:outgoing>
|
<bpmn2:outgoing>sequenceFlow_RgOnDQ</bpmn2:outgoing>
|
||||||
<bpmn2:signalEventDefinition id="signalEventDefinition_auduLQ" signalRef="signal_4"/>
|
<bpmn2:conditionalEventDefinition id="conditionalEventDefinition_2U0SbA"/>
|
||||||
</bpmn2:intermediateCatchEvent>
|
</bpmn2:intermediateCatchEvent>
|
||||||
<bpmn2:sequenceFlow id="sequenceFlow_Jkgs0A" sourceRef="gateway_cDqotg" targetRef="event_k2i6EQ">
|
<bpmn2:sequenceFlow id="sequenceFlow_Jkgs0A" sourceRef="gateway_cDqotg" targetRef="event_k2i6EQ">
|
||||||
<bpmn2:documentation id="documentation_JgAfHA"/>
|
<bpmn2:documentation id="documentation_JgAfHA"/>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue