Author: jleroux
Date: Sat Sep 19 17:17:09 2009 New Revision: 816944 URL: http://svn.apache.org/viewvc?rev=816944&view=rev Log: A patch from Abdullah Shaikh "Service to get the party postal address" (https://issues.apache.org/jira/browse/OFBIZ-2954) - OFBIZ-2954 There are services to get the party telephone (getPartyTelephone) & email (getPartyEmail), but no service to get the party postal address. Here it is. Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyServices.xml ofbiz/trunk/applications/party/servicedef/services.xml Modified: ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyServices.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyServices.xml?rev=816944&r1=816943&r2=816944&view=diff ============================================================================== --- ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyServices.xml (original) +++ ofbiz/trunk/applications/party/script/org/ofbiz/party/party/PartyServices.xml Sat Sep 19 17:17:09 2009 @@ -770,6 +770,91 @@ </if-not-empty> </simple-method> + <simple-method method-name="getPartyPostalAddress" short-description="Get the postal address of the party"> + <set field="findMap.partyId" from-field="parameters.partyId"/> + <if-empty field="parameters.contactMechPurposeTypeId"> + <!-- search in this order if not provided--> + <set field="type" value="GENERAL_LOCATION"/><field-to-list field="type" list="types"/> + <set field="type" value="BILLING_LOCATION"/><field-to-list field="type" list="types"/> + <set field="type" value="PAYMENT_LOCATION"/><field-to-list field="type" list="types"/> + <set field="type" value="SHIPPING_LOCATION"/><field-to-list field="type" list="types"/> + <else> + <set field="type" from-field="parameters.contactMechPurposeTypeId"/><field-to-list field="type" list="types"/> + </else> + </if-empty> + <set field="findMap.contactMechTypeId" value="POSTAL_ADDRESS"/> + <find-by-and entity-name="PartyContactDetailByPurpose" map="findMap" list="addressAll1"></find-by-and> + <filter-list-by-date list="addressAll1" to-list="addressAll2" from-field-name="purposeFromDate" thru-field-name="purposeThruDate"/> + <filter-list-by-date list="addressAll2" to-list="addressAll3"/> + <if-not-empty field="addressAll3"> + <iterate entry="type" list="types"> + <iterate entry="address" list="addressAll3"> + <if-empty field="found"> + <if-compare-field field="address.contactMechPurposeTypeId" to-field="type" operator="equals"> + <set field="found" value="notImportant"/> + <field-to-result field="address.contactMechId" result-name="contactMechId"/> + <if-not-empty field="address.address1"> + <field-to-result field="address.address1" result-name="address1"/> + </if-not-empty> + <if-not-empty field="address.address2"> + <field-to-result field="address.address2" result-name="address2"/> + </if-not-empty> + <if-not-empty field="address.directions"> + <field-to-result field="address.directions" result-name="directions"/> + </if-not-empty> + <if-not-empty field="address.city"> + <field-to-result field="address.city" result-name="city"/> + </if-not-empty> + <if-not-empty field="address.postalCode"> + <field-to-result field="address.postalCode" result-name="postalCode"/> + </if-not-empty> + <if-not-empty field="address.stateProvinceGeoId"> + <field-to-result field="address.stateProvinceGeoId" result-name="stateProvinceGeoId"/> + </if-not-empty> + <if-not-empty field="address.countyGeoId"> + <field-to-result field="address.countyGeoId" result-name="countyGeoId"/> + </if-not-empty> + <if-not-empty field="address.countryGeoId"> + <field-to-result field="address.countryGeoId" result-name="countryGeoId"/> + </if-not-empty> + <field-to-result field="address.contactMechPurposeTypeId" result-name="contactMechPurposeTypeId"/> + </if-compare-field> + </if-empty> + </iterate> + </iterate> + <else> + <find-by-and entity-name="PartyAndContactMech" map="findMap" list="addressAll1"/> + <filter-list-by-date list="addressAll1" to-list="addressAll2"/> + <first-from-list entry="address" list="addressAll2"/> + <field-to-result field="address.contactMechId" result-name="contactMechId"/> + <if-not-empty field="address.paAddress1"> + <field-to-result field="address.paAddress1" result-name="address1"/> + </if-not-empty> + <if-not-empty field="address.paAddress2"> + <field-to-result field="address.paAddress2" result-name="address2"/> + </if-not-empty> + <if-not-empty field="address.paDirections"> + <field-to-result field="address.paDirections" result-name="directions"/> + </if-not-empty> + <if-not-empty field="address.paCity"> + <field-to-result field="address.paCity" result-name="city"/> + </if-not-empty> + <if-not-empty field="address.paPostalCode"> + <field-to-result field="address.paPostalCode" result-name="postalCode"/> + </if-not-empty> + <if-not-empty field="address.paStateProvinceGeoId"> + <field-to-result field="address.paStateProvinceGeoId" result-name="stateProvinceGeoId"/> + </if-not-empty> + <if-not-empty field="address.paCountyGeoId"> + <field-to-result field="address.paCountyGeoId" result-name="countyGeoId"/> + </if-not-empty> + <if-not-empty field="address.paCountryGeoId"> + <field-to-result field="address.paCountryGeoId" result-name="countryGeoId"/> + </if-not-empty> + </else> + </if-not-empty> + </simple-method> + <!-- address match map --> <simple-method method-name="createAddressMatchMap" short-description="create a AddressMatchMap"> <call-object-method obj-field="parameters.mapValue" method-name="toUpperCase" ret-field="parameters.mapValue"/> Modified: ofbiz/trunk/applications/party/servicedef/services.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/servicedef/services.xml?rev=816944&r1=816943&r2=816944&view=diff ============================================================================== --- ofbiz/trunk/applications/party/servicedef/services.xml (original) +++ ofbiz/trunk/applications/party/servicedef/services.xml Sat Sep 19 17:17:09 2009 @@ -989,6 +989,22 @@ <attribute name="extension" type="String" mode="OUT" optional="true"/> </service> + <service name="getPartyPostalAddress" engine="simple" + location="component://party/script/org/ofbiz/party/party/PartyServices.xml" invoke="getPartyPostalAddress" auth="false"> + <description>Get the party postal address</description> + <attribute name="partyId" type="String" mode="IN" optional="false"/> + <attribute name="contactMechPurposeTypeId" type="String" mode="INOUT" optional="true"/> + <attribute name="contactMechId" type="String" mode="OUT" optional="true"/> + <attribute name="address1" type="String" mode="OUT" optional="true"/> + <attribute name="address2" type="String" mode="OUT" optional="true"/> + <attribute name="directions" type="String" mode="OUT" optional="true"/> + <attribute name="city" type="String" mode="OUT" optional="true"/> + <attribute name="postalCode" type="String" mode="OUT" optional="true"/> + <attribute name="stateProvinceGeoId" type="String" mode="OUT" optional="true"/> + <attribute name="countyGeoId" type="String" mode="OUT" optional="true"/> + <attribute name="countryGeoId" type="String" mode="OUT" optional="true"/> + </service> + <service name="createPartyCarrierAccount" engine="simple" default-entity-name="PartyCarrierAccount" location="component://party/script/org/ofbiz/party/party/PartyServices.xml" invoke="createPartyCarrierAccount" auth="true"> <description>Create a PartyCarrierAccount record</description> |
Free forum by Nabble | Edit this page |