<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">
    
    
    <simple-method method-name="createCommunicationEventWithPermission" short-description="Create a CommunicationEvent with permission check">
        <set field="parameters.permission" value="true"/>
        <call-simple-method method-name="createCommunicationEvent"/>
    </simple-method>
        
    <simple-method method-name="createCommunicationEventWithoutPermission" short-description="Create a CommunicationEvent without permission check">
        <set field="parameters.permission" value="false"/>
        <call-simple-method method-name="createCommunicationEvent"/>
    </simple-method>
        
    <simple-method method-name="createCommunicationEvent" short-description="Create a CommunicationEvent with or w/o permission check">
        <if-not-empty field="parameters.parentCommEventId">
            <entity-and list-name="roles" entity-name="CommunicationEventRole">
                <field-map field-name="communicationEventId" env-name="parameters.parentCommEventId"/>
                <field-map field-name="partyId" env-name="parameters.partyIdFrom"/>
            </entity-and>
            <if-not-empty field="roles">
                <first-from-list list-name="roles" entry-name="role"/>
                <set field="newStat.communicationEventId" from-field="parameters.parentCommEventId"/>
                <set field="newStat.partyId" from-field="parameters.partyIdFrom"/>
                <set field="newStat.roleTypeId" from-field="role.roleTypeId"/>
                <set field="newStat.statusId" value="COM_ROLE_COMPLETED"/>
                <call-service service-name="setCommunicationEventRoleStatus" in-map-name="newStat"/>
            </if-not-empty>
        </if-not-empty>
        
        <if-empty field="parameters.statusId">
            <set value="COM_ENTERED" field="parameters.statusId"/>     
        </if-empty>

        <make-value value-name="newEntity" entity-name="CommunicationEvent"/>
        <set-nonpk-fields map-name="parameters" value-name="newEntity"/>
        
        <if-empty field="parameters.communicationEventId">
            <sequenced-id-to-env sequence-name="CommunicationEvent" env-name="newEntity.communicationEventId"/>
            <else>
                <set field="newEntity.communicationEventId" from-field="parameters.communicationEventId"/>
            </else>
        </if-empty>
        <field-to-result field-name="newEntity.communicationEventId" result-name="communicationEventId"/>
        
        <!-- if only contactMechId and no partyIdTo is provided for creation email address find the related party -->
        <if-empty field="parameters.partyIdTo">
            <if-not-empty field="parameters.contactMechIdTo">
                <entity-and entity-name="PartyAndContactMech" list-name="partyContactMechs" filter-by-date="true">
                    <field-map field-name="contactMechId" env-name="parameters.contactMechIdTo"/>
                    <field-map field-name="contactMechTypeId" value="EMAIL_ADDRESS"/>
                </entity-and>
                <first-from-list entry-name="partyContactMech" list-name="partyContactMechs"/>
                <set field="newEntity.partyIdTo" from-field="partyContactMech.partyId"/>
            </if-not-empty>
        </if-empty>
        
        <now-timestamp-to-env env-name="newEntity.entryDate"/>
        <create-value value-name="newEntity"/>

        <if-not-empty field="parameters.productId">
            <make-value value-name="eventProduct" entity-name="CommunicationEventProduct"/>
            <set from-field="parameters.productId" field="eventProduct.productId"/>
            <set from-field="newEntity.communicationEventId" field="eventProduct.communicationEventId"/>
            <create-value value-name="eventProduct"/>
        </if-not-empty>
        <if-not-empty field="parameters.orderId">
            <make-value value-name="eventOrder" entity-name="CommunicationEventOrder"/>
            <set from-field="parameters.orderId" field="eventOrder.orderId"/>
            <set from-field="newEntity.communicationEventId" field="eventOrder.communicationEventId"/>
            <create-value value-name="eventOrder"/>
        </if-not-empty>
        <if-not-empty field="parameters.custReqId">
            <make-value value-name="eventRequest" entity-name="CustRequestCommEvent"/>
            <set from-field="parameters.custReqId" field="eventRequest.custReqId"/>
            <set from-field="newEntity.communicationEventId" field="eventRequest.communicationEventId"/>
            <create-value value-name="eventRequest"/>
        </if-not-empty>
        
        <!-- partyIdTo role-->
        <if-not-empty field="newEntity.partyIdTo">
            <set field="commRole.communicationEventId" from-field="newEntity.communicationEventId" />
            <set field="commRole.partyId" from-field="newEntity.partyIdTo" />
            <set field="commRole.roleTypeId" value="ADDRESSEE" />
            <set field="commRole.contactMechId" from-field="newEntity.contactMechIdTo" />
            <set field="commRole.statusId" value="COM_ROLE_CREATED" />
            <if-compare field="parameters.permission" value="true" operator="equals">
                <call-service service-name="createCommunicationEventRole" in-map-name="commRole"/>
                <else>
                    <call-service service-name="createCommunicationEventRoleWithoutPermission" in-map-name="commRole"/>
                </else>
            </if-compare>
        </if-not-empty>
    
        <!-- partyIdFrom role-->
        <if-not-empty field="newEntity.partyIdFrom">
            <set field="commRole.communicationEventId" from-field="newEntity.communicationEventId" />
            <set field="commRole.partyId" from-field="newEntity.partyIdFrom" />
            <set field="commRole.roleTypeId" value="ORIGINATOR" />
            <set field="commRole.contactMechId" from-field="newEntity.contactMechIdFrom" />
            <set field="commRole.statusId" value="COM_ROLE_COMPLETED" />            
            <if-compare field="parameters.permission" value="true" operator="equals">
                <call-service service-name="createCommunicationEventRole" in-map-name="commRole"/>
                <else>
                    <call-service service-name="createCommunicationEventRoleWithoutPermission" in-map-name="commRole"/>
                </else>
            </if-compare>
        </if-not-empty>
    </simple-method>

    <simple-method method-name="updateCommunicationEvent"
        short-description="Update a CommunicationEvent">
        <entity-one entity-name="CommunicationEvent" value-name="event" />
        <set field="oldStatusId" from-field="event.statusId" />
        <set-nonpk-fields map-name="parameters" value-name="event" />
        <if-compare-field operator="not-equals" field="event.statusId"
            to-field="oldStatusId">
            <call-simple-method method-name="setCommunicationEventStatus" />
        </if-compare-field>
        
        <!-- if the from- or to-party changed change also the roles -->
        <if-not-empty field="parameters.partyIdFrom">
            <if-compare operator="not-equals" value="parameters.partIdFrom" field="event.partyIdFrom">
                <!-- check if role exist then delete old role -->
                <entity-one entity-name="CommunicationEventRole"
                    value-name="roleFrom">
                    <field-map field-name="communicationEventId" env-name="event.communicationEventId" />
                    <field-map field-name="partyId" env-name="parameters.partyIdFrom" />
                    <field-map field-name="roleTypeId" value="ORIGINATOR" />
                </entity-one>
                <if-not-empty field="roleFrom">
                    <remove-value value-name="roleFrom" />
                </if-not-empty>
                <!-- add new role -->
                <set field="newRoleFrom.communicationEventId" from-field="event.communicationEventId" />
                <set field="newRoleFrom.partyId" from-field="event.partyIdFrom" />
                <set field="newRoleFrom.roleTypeId" value="ORIGINATOR" />
                <set field="newRoleFrom.contactMechId" from-field="event.contactMechIdFrom" />
                <call-service service-name="createCommunicationEventRole"
                    in-map-name="newRoleFrom" />
            </if-compare>
        </if-not-empty>
        <if-empty field="parameters.partyIdTo">
            <if-not-empty field="parameters.contactMechIdTo">
                <entity-and entity-name="PartyAndContactMech" list-name="partyContactMechs" filter-by-date="true">
                    <field-map field-name="contactMechId" env-name="parameters.contactMechIdTo"/>
                    <field-map field-name="contactMechTypeId" value="EMAIL_ADDRESS"/>
                </entity-and>
                <first-from-list entry-name="partyContactMech" list-name="partyContactMechs"/>                
                <set field="parameters.partyIdTo" from-field="partyContactMech.partyId"/>
                <set field="event.partyIdTo" from-field="partyContactMech.partyId"/>
            </if-not-empty>
        </if-empty>
        <if-not-empty field="parameters.partyIdTo">
            <if-compare operator="not-equals" value="parameters.partIdTo"
                field="event.partyIdTo">
                <!-- check if role exist then delete old role -->
                <entity-one entity-name="CommunicationEventRole"
                    value-name="roleTo">
                    <field-map field-name="communicationEventId" env-name="event.communicationEventId" />
                    <field-map field-name="partyId" env-name="event.partyIdTo" />
                    <field-map field-name="roleTypeId" value="ADDRESSEE" />
                </entity-one>
                <if-not-empty field="roleTo">
                    <remove-value value-name="roleTo" />
                </if-not-empty>
                <!-- add new role -->
                <set field="newRoleTo.communicationEventId" from-field="event.communicationEventId" />
                <set field="newRoleTo.partyId" from-field="event.partyIdTo" />
                <set field="newRoleTo.roleTypeId" value="ADDRESSEE" />
                <set field="newRoleTo.contactMechId" from-field="event.contactMechIdTo" />
                <call-service service-name="createCommunicationEventRole"
                    in-map-name="newRoleTo" />
            </if-compare>
        </if-not-empty>
        <store-value value-name="event" />
    </simple-method>

    <simple-method method-name="deleteCommunicationEvent" short-description="Delete a CommunicationEvent">
        <entity-one entity-name="CommunicationEvent" value-name="event"/>
        <!-- remove related links to content -->
        <get-related value-name="event" relation-name="CommEventContentAssoc" list-name="contentAssocs"/>
        <if-not-empty field="contentAssocs">
            <iterate entry-name="contentAssoc" list-name="contentAssocs">
                <remove-value value-name="contentAssoc"/>
                <!-- delete content and dataresource too if requested -->
                <if-compare field="parameters.delContentDataResource" value="Y" operator="equals">
                    <get-related value-name="contentAssoc" relation-name="FromContent" list-name="contents"/>
                    <if-not-empty field="contents">
                        <iterate entry-name="content" list-name="contents">
                            <remove-related value-name="content" relation-name="ContentRole"/>
                            <remove-value value-name="content"/>
                            <get-related-one value-name="content" relation-name="DataResource" to-value-name="dataResource"/>
                            <if-not-empty field="dataResource">
                                <get-related-one value-name="dataResource" relation-name="ImageDataResource" to-value-name="imageDataResource"/>
                                <if-not-empty field="imageDataResource">
                                    <remove-value value-name="imageDataResource"/>
                                </if-not-empty>
                                <get-related-one value-name="dataResource" relation-name="ElectronicText" to-value-name="electronicText"/>
                                <if-not-empty field="electronicText">
                                    <remove-value value-name="electronicText"/>
                                </if-not-empty>
                                <remove-related value-name="dataResource" relation-name="DataResourceRole"/>
                                <remove-value value-name="dataResource"/>
                            </if-not-empty>
                        </iterate>
                    </if-not-empty>
                </if-compare>  
            </iterate>
        </if-not-empty>
        <!-- delete the roles when exist and the event itself -->
        <remove-related value-name="event" relation-name="CommunicationEventRole"/>
        <remove-value value-name="event"/>
    </simple-method>
    <simple-method method-name="deleteCommunicationEventWorkEffort" short-description="delete commEvent and workEffort">
        
        <entity-one entity-name="CommunicationEvent" value-name="event"/>
        <!-- remove related workeffort when this is the only communicationevent connected to it -->
        <get-related value-name="event" relation-name="CommunicationEventWorkEff" list-name="workEffortComs"/>
        <if-not-empty field="workEffortComs">
            <iterate entry-name="workEffortCom" list-name="workEffortComs">
                <remove-value value-name="workEffortCom"/>
                <get-related-one value-name="workEffortCom" relation-name="WorkEffort" to-value-name="workEffort"/>
                <get-related value-name="workEffort" relation-name="CommunicationEventWorkEff" list-name="otherComs"/>
                <if-empty field="otherComs">
                    <log level="info" message="remove workeffort ${workEffort.workEffortId} and related parties and status"/>
                    <remove-related value-name="workEffort" relation-name="WorkEffortPartyAssignment"/>
                    <remove-related value-name="workEffort" relation-name="WorkEffortPartyAssignment"/>
                    <remove-related value-name="workEffort" relation-name="WorkEffortStatus"/>
                    <remove-related value-name="workEffort" relation-name="WorkEffortKeyword"/>
                    <remove-value value-name="workEffort"/>
                </if-empty>
            </iterate>
        </if-not-empty>
        <!-- delete the event itself -->
        <call-service service-name="deleteCommunicationEvent" in-map-name="parameters"/>
    </simple-method>
    <!-- since these ancillary operations on communication event cause them to be updated,
        they will all use the CME_UPDATE permission -->
    <simple-method method-name="createCommunicationEventPurpose" short-description="Create a CommunicationEventPurpose">
        
        <make-value value-name="newEntity" entity-name="CommunicationEventPurpose"/>
        <set-pk-fields map-name="parameters" value-name="newEntity"/>
        <set-nonpk-fields map-name="parameters" value-name="newEntity"/>        
        <create-value value-name="newEntity"/>    
    </simple-method>
    <simple-method method-name="removeCommunicationEventPurpose" short-description="Remove a CommunicationEventPurpose">
        <entity-one entity-name="CommunicationEventPurpose" value-name="eventPurpose"/>        
        <remove-value value-name="eventPurpose"/>
    </simple-method>
    <simple-method method-name="createCommunicationEventRole"
        short-description="Create a CommunicationEventRole">
        <!-- check if role already exist, then ignore -->
        <entity-one entity-name="CommunicationEventRole" value-name="communicationEventRole" />
        <if-empty field="communicationEventRole">
            <entity-one entity-name="UserLogin" value-name="sysUserLogin">
                <field-map field-name="userLoginId" value="system"/>
            </entity-one>
            <set-service-fields service-name="createPartyRole" map-name="parameters" to-map-name="partyRole"/>
            <set field="partyRole.userLogin" from-field="sysUserLogin"/>
            <call-service service-name="createPartyRole" in-map-name="partyRole" include-user-login="false"/>
            <make-value value-name="newEntity" entity-name="CommunicationEventRole" />
            <set-pk-fields map-name="parameters" value-name="newEntity" />
            <set-nonpk-fields map-name="parameters" value-name="newEntity" />
            <if-empty field="newEntity.statusId">
                <set field="newEntity.statusId" value="COM_ROLE_CREATED" />
            </if-empty>
            <create-value value-name="newEntity" />
        </if-empty>
    </simple-method>
    <simple-method method-name="updateCommunicationEventRole" short-description="Create a CommunicationEventRole">
        <entity-one value-name="eventRole" entity-name="CommunicationEventRole" />
        <if-not-empty field="eventRole">
            <set-nonpk-fields map-name="parameters" value-name="eventRole" />
            <store-value value-name="eventRole" />
        </if-not-empty>
    </simple-method>
    <simple-method method-name="removeCommunicationEventRole" short-description="Remove a CommunicationEventRole">
        <entity-one entity-name="CommunicationEventRole" value-name="eventRole"/>
        <if-not-empty field="eventRole">
            <remove-value value-name="eventRole"/>
            <if-compare field="parameters.deleteCommEventIfLast" operator="equals" value="Y">
                <entity-and list-name="roles" entity-name="CommunicationEventRole">
                    <field-map field-name="communicationEventId" env-name="eventRole.communicationEventId"/>
                </entity-and>
                <if-empty field="roles">
                    <set-service-fields service-name="deleteCommunicationEvent" map-name="parameters" to-map-name="inMapDel"/>
                    <call-service service-name="deleteCommunicationEvent" in-map-name="inMapDel"/>
                </if-empty>
            </if-compare>
        </if-not-empty>        
    </simple-method>

    <simple-method method-name="markEventRead" short-description="Marks a Communication Event as Read">
        <if-empty field="parameters.communicationEventId">
            <set from-field="parameters.messageId" field="parameters.communicationEventId"/>   
        </if-empty>
        <entity-one entity-name="CommunicationEvent" value-name="event"/>
        
        <if>
            <condition>
                <or>
                    <if-compare-field field="event.partyIdTo" to-field="userLogin.partyId" operator="equals"/>
                    <if-has-permission permission="PARTYMGR" action="_CME_UPDATE"/>
                </or>
            </condition>
            <then>
                <if>
                    <condition>
                        <or>
                            <if-compare field="event.statusId" operator="equals" value="COM_ENTERED"/>
                            <if-compare field="event.statusId" operator="equals" value="COM_PENDING"/>
                        </or>
                    </condition>
                    <then>
                        <set value="COM_READ" field="event.statusId"/>
                        <store-value value-name="event"/>
                    </then>
                </if>
            </then>
        </if>        
    </simple-method>

    <simple-method method-name="sendEmailDated"
        short-description="Checks for email communication events with the status COM_IN_PROGRESS and a startdate which is expired, then send the email">
        <now-timestamp-to-env env-name="nowDate" />
        <entity-condition entity-name="CommunicationEvent" list-name="communicationEvents">
            <condition-list combine="and">
                <condition-list combine="or">
                    <condition-expr field-name="communicationEventTypeId" operator="equals" value="EMAIL_COMMUNICATION" />
                    <condition-expr field-name="communicationEventTypeId" operator="equals" value="AUTO_EMAIL_COMM" />
                </condition-list>
                <condition-expr field-name="statusId" operator="equals" value="COM_IN_PROGRESS" />
                <condition-list combine="or">
                    <condition-expr field-name="datetimeStarted" operator="less" env-name="nowDate" />
                    <condition-expr field-name="datetimeStarted" operator="equals" env-name="nullField" />
                </condition-list>
            </condition-list>
        </entity-condition>
        <iterate entry-name="communicationEvent" list-name="communicationEvents">
            <set-service-fields service-name="sendCommEventAsEmail" map-name="communicationEvent" to-map-name="inMap"/>
            <call-service service-name="sendCommEventAsEmail" in-map-name="inMap" require-new-transaction="true"/>
        </iterate>
        <set field="cookie" from-field="parameters.cookie" type="Integer"/>
        <calculate field-name="cookie" type="Integer">
            <calcop operator="add">
                <number value="1"/>
                <calcop operator="get" field-name="cookie"/>
            </calcop>
        </calculate>
        <set field="pk.runtimeDataId" value="TESTID"/>
        <find-by-primary-key map-name="pk" value-name="runtimeData" entity-name="RuntimeData"/>
        <set field="newData.runtimeDataId" from-field="pk.runtimeDataId"/>
        <set field="newData.cookie" from-field="cookie"/>
        <call-class-method method-name="serialize" class-name="org.ofbiz.entity.serialize.XmlSerializer" ret-field-name="dummy">
            <field field-name="newData" type="Object"/>
        </call-class-method>
        <log level="always" message="${dummy}"></log>
        <set field="runtimeData.runtimeInfo" from-field="dummy"/>
        <store-value value-name="runtimeData"/>
    </simple-method>

    <simple-method method-name="allocateMsgToParty" short-description="Allocate an emailaddress to an existing/new party, update the communication event accordingly">

        <entity-one entity-name="CommunicationEvent" value-name="communicationEvent"/>
        <if-empty field="communicationEvent">
            <add-error><fail-message message="Communication Event ID: ${parameters.commnicationEventId} not found"/></add-error>
        </if-empty>

        <if-empty field="parameters.partyId">
            <if-empty field="parameters.emailAddress">
                <add-error><fail-message message="Email address is required"/></add-error>
            </if-empty>

            <if-empty field="parameters.lastName">
                <add-error><fail-message message="Please enter a lastName"/></add-error>
            </if-empty>
    
            <if-empty field="parameters.firstName">
                <add-error><fail-message message="Please enter a firstName"/></add-error>
                <check-errors/>
            </if-empty>
        </if-empty>

        <check-errors/>

        <!-- create partyId if not provided -->
        <if-empty field="parameters.partyId">
            <set-service-fields service-name="createPerson" map-name="parameters" to-map-name="newParty"/>
            <call-service service-name="createPerson" in-map-name="newParty">
                <result-to-field result-name="partyId" field-name="parameters.partyId"/>
            </call-service>
        </if-empty>

        <!-- allocate email to the party -->
        <if-not-empty field="parameters.emailAddress">
            <entity-one entity-name="Party" value-name="party" />
            <if-empty field="party">
                <add-error>
                     <fail-message message="Party ID: ${parameters.partyId} not found" />
                </add-error>
                <check-errors />
            </if-empty>
            <set field="newEmail.contactMechPurposeTypeId" value="PRIMARY_EMAIL" />
            <set field="newEmail.partyId" from-field="parameters.partyId" />
            <set field="newEmail.emailAddress" from-field="parameters.emailAddress" />
            <call-service service-name="createPartyEmailAddress"
                in-map-name="newEmail">
                <result-to-field result-name="contactMechId"
                    field-name="inCom.contactMechIdFrom" />
            </call-service>
        </if-not-empty>

        <!-- update the communication event -->
        <set field="inCom.communicationEventId" from-field="parameters.communicationEventId"/>
        <set field="inCom.partyIdFrom" from-field="parameters.partyId"/>
        <set field="inCom.statusId" value="COM_ENTERED"/>
        <call-service service-name="updateCommunicationEvent" in-map-name="inCom"/>

        <field-to-request field-name="parameters.communicationEventId" request-name="communicationEventId"/>
        <entity-one entity-name="PartyNameView" value-name="nameView"/>
        <set field="_event_message_" value="Email addres: ${parameters.emailAddress} allocated to party: ${nameView.groupName}${nameView.firstName} ${nameView.middleName} ${nameView.lastName}[${parameters.partyId}]"/>
    </simple-method>

    <simple-method method-name="createCustRequestCommEvent" short-description="Create CustRequestCommEvent" >
        <make-value value-name="newEntity" entity-name="CustRequestCommEvent"/>
        <set-pk-fields map-name="parameters" value-name="newEntity"/>
        <create-value value-name="newEntity"/>    
    </simple-method>

    <simple-method method-name="setCommunicationEventStatus" short-description="Set The Communication Event Status">
        <entity-one entity-name="CommunicationEvent" value-name="communicationEvent"/>
        <field-to-result field-name="communicationEvent.statusId" result-name="oldStatusId"/>
        <if-compare-field field="communicationEvent.statusId" to-field="parameters.statusId" operator="not-equals">
            <entity-one entity-name="StatusValidChange" value-name="statusChange">
                <field-map field-name="statusId" env-name="communicationEvent.statusId"/>
                <field-map field-name="statusIdTo" env-name="parameters.statusId"/>
            </entity-one>
            <if-empty field="statusChange">
                <add-error><fail-message message="Status is not a valid change"/></add-error>
                <log level="error" message="Cannot change from ${communicationEvent.statusId} to ${parameters.statusId}"/>
                <check-errors/>
                <else>
                    <set field="communicationEvent.statusId" from-field="parameters.statusId"/>
                    <store-value value-name="communicationEvent"/>
                    <!-- if complete, set all role status fields to 'complete' (intentionally ignoring the status change checking)-->
                    <if-compare operator="equals" value="COM_COMPLETE" field="parameters.statusId">
                        <get-related value-name="communicationEvent" relation-name="CommunicationEventRole" list-name="updRoles"/>
                        <iterate entry-name="updRole" list-name="updRoles">
                            <set field="updRole.statusId" value="COM_ROLE_COMPLETED"/>
                            <store-value value-name="updRole"/>
                        </iterate>
                    </if-compare>
                </else>
            </if-empty>
        </if-compare-field>
    </simple-method>
    <simple-method method-name="setCommunicationEventRoleStatus" short-description="Set The Communication Event Status for a specific role">
        <entity-one entity-name="CommunicationEventRole" value-name="communicationEventRole"/>
        <field-to-result field-name="communicationEventRole.statusId" result-name="oldStatusId"/>
        <if-compare-field field="communicationEventRole.statusId" to-field="parameters.statusId" operator="not-equals">
            <entity-one entity-name="StatusValidChange" value-name="statusChange">
                <field-map field-name="statusId" env-name="communicationEventRole.statusId"/>
                <field-map field-name="statusIdTo" env-name="parameters.statusId"/>
            </entity-one>
            <if-empty field="statusChange">
                <add-error><fail-message message="Status is not a valid change"/></add-error>
                <log level="error" message="Cannot change from ${communicationEventRole.statusId} to ${parameters.statusId}"/>
                <check-errors/>
                <else>
                    <set field="communicationEventRole.statusId" from-field="parameters.statusId"/>
                    <store-value value-name="communicationEventRole"/>
                </else>
            </if-empty>
        </if-compare-field>
    </simple-method>
</simple-methods>
