You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ha...@apache.org on 2008/07/27 19:37:46 UTC
svn commit: r680157 - in /ofbiz/trunk/applications/party:
script/org/ofbiz/party/contact/PartyContactMechServices.xml
servicedef/secas.xml
Author: hansbak
Date: Sun Jul 27 10:37:46 2008
New Revision: 680157
URL: http://svn.apache.org/viewvc?rev=680157&view=rev
Log:
check in create contactmech service if the contactmech infostring is already existing, if so do not create again
Modified:
ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml
ofbiz/trunk/applications/party/servicedef/secas.xml
Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml?rev=680157&r1=680156&r2=680157&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml (original)
+++ ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml Sun Jul 27 10:37:46 2008
@@ -27,6 +27,28 @@
<set field="parameters.partyId" from-field="userLogin.partyId"/>
</if-empty>
+ <!-- check if the contact mech infostring is already existing if so, do not create a new one-->
+ <entity-and list-name="partyAndContactMechs" entity-name="PartyAndContactMech">
+ <field-map field-name="partyId" env-name="parameters.partyId"/>
+ </entity-and>
+ <iterate entry-name="partyAndContactMech" list-name="partyAndContactMechs">
+ <entity-one entity-name="ContactMechType" value-name="contactMechType">
+ <field-map field-name="contactMechTypeId" env-name="partyAndContactMech.contactMechTypeId"/>
+ </entity-one>
+ <if>
+ <condition>
+ <and>
+ <if-compare operator="equals" value="N" field="contactMechType.hasTable"/>
+ <if-compare operator="equals" value="${partyAndContactMech.infoString}" field="parameters.infoString"/>
+ </and>
+ </condition>
+ <then>
+ <log level="info" message="Contact mechTypeId: ${parameters.contactMechTypeId} already exists with value: ${partyAndContactMech.infoString} for party: ${parameters.partyId}"/>
+ <return response-code="success"/>
+ </then>
+ </if>
+ </iterate>
+
<if-empty field="parameters.contactMechId">
<set-service-fields service-name="createContactMech" map-name="parameters" to-map-name="createContactMechMap"/>
<call-service service-name="createContactMech" in-map-name="createContactMechMap">
Modified: ofbiz/trunk/applications/party/servicedef/secas.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/servicedef/secas.xml?rev=680157&r1=680156&r2=680157&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/servicedef/secas.xml (original)
+++ ofbiz/trunk/applications/party/servicedef/secas.xml Sun Jul 27 10:37:46 2008
@@ -51,6 +51,7 @@
<!-- NOTE: because we have an ECA on createPartyContactMech, we don't need to do it on createPartyPostalAddress, createPartyEmailAddress, createPartyTelecomNumber because those will call it -->
<eca service="createPartyContactMech" event="commit">
<condition field-name="contactMechPurposeTypeId" operator="is-not-empty"/>
+ <condition field-name="contactMechId" operator="is-not-empty"/>
<action service="createPartyContactMechPurpose" mode="sync"/>
</eca>