Author: mor
Date: Mon Sep 8 00:41:42 2008 New Revision: 693009 URL: http://svn.apache.org/viewvc?rev=693009&view=rev Log: Improvement in Manage Addresses feature in Ecommerce. Changed the behaviour of the phone numbers available for billing and shipping. Now these are separated from the "Billing address is the same as the shipping address" functionality and does not have any effect of this check box. Also fixed the billing phone number was not processed and saved. Contribution from Rishi Solanki Modified: ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml ofbiz/trunk/applications/party/script/org/ofbiz/party/contact/PartyContactMechServices.xml Modified: ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml?rev=693009&r1=693008&r2=693009&view=diff ============================================================================== --- ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml (original) +++ ofbiz/trunk/applications/ecommerce/script/org/ofbiz/ecommerce/customer/CustomerEvents.xml Mon Sep 8 00:41:42 2008 @@ -1282,8 +1282,6 @@ <if-compare field="parameters.useShippingAddressForBilling" operator="not-equals" value="Y"> <call-map-processor xml-resource="org/ofbiz/ecommerce/customer/CheckoutMapProcs.xml" processor-name="billToAddress" in-map-name="parameters" out-map-name="billToAddressCtx"/> - <call-map-processor xml-resource="org/ofbiz/ecommerce/customer/CheckoutMapProcs.xml" - processor-name="billToPhone" in-map-name="parameters" out-map-name="billToTelecomNumberCtx"/> <set field="billToAddressCtx.partyId" from-field="parameters.partyId"/> <set field="billToAddressCtx.userLogin" from-field="parameters.userLogin"/> <set field="billToAddressCtx.setBillingPurpose" value="Y"/> @@ -1297,6 +1295,8 @@ </else> </if-compare> <!-- create billing telecom number --> + <call-map-processor xml-resource="org/ofbiz/ecommerce/customer/CheckoutMapProcs.xml" + processor-name="billToPhone" in-map-name="parameters" out-map-name="billToTelecomNumberCtx"/> <set field="billToTelecomNumberCtx.partyId" from-field="parameters.partyId"/> <set field="billToTelecomNumberCtx.userLogin" from-field="parameters.userLogin"/> <set field="billToTelecomNumberCtx.contactMechPurposeTypeId" value="PHONE_BILLING"/> 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=693009&r1=693008&r2=693009&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 Mon Sep 8 00:41:42 2008 @@ -492,99 +492,11 @@ <call-service service-name="updatePostalAddressAndPurposes" in-map-name="updatePostalAddressAndPurposesCtx"/> <if-not-empty field="parameters.phoneContactMechId"> - <entity-and entity-name="PartyContactMechPurpose" list-name="partyContactMachPurposes" filter-by-date="true"> - <field-map field-name="partyId" env-name="userLogin.partyId"/> - <field-map field-name="contactMechId" env-name="parameters.phoneContactMechId"/> - <select-field field-name="contactMechPurposeTypeId"/> - </entity-and> - - <iterate list-name="partyContactMachPurposes" entry-name="partyContactMachPurpose"> - <if-compare field="partyContactMachPurpose.contactMechPurposeTypeId" operator="equals" value="PHONE_SHIPPING"> - <set field="hasShipToPhonePurpose" value="Y"/> - </if-compare> - <if-compare field="partyContactMachPurpose.contactMechPurposeTypeId" operator="equals" value="PHONE_BILLING"> - <set field="hasBillToPhonePurpose" value="Y"/> - </if-compare> - </iterate> - <set field="parameters.contactMechId" from-field="parameters.phoneContactMechId"/> - - <if-compare-field field="hasShipToPhonePurpose" operator="not-equals" to-field="hasBillToPhonePurpose"> - <set-service-fields service-name="updatePartyTelecomNumber" map-name="parameters" to-map-name="updatePartyTelecomNumberCtx"/> - <call-service service-name="updatePartyTelecomNumber" in-map-name="updatePartyTelecomNumberCtx"> - <result-to-field result-name="contactMechId" field-name="parameters.contactMechId"/> - </call-service> - <else> - <set-service-fields service-name="updateTelecomNumber" map-name="parameters" to-map-name="updateTelecomNumberMap"/> - <call-service service-name="updateTelecomNumber" in-map-name="updateTelecomNumberMap"> - <default-message resource="PartyUiLabels" property="PartyTelecomNumberSuccessfullyUpdated"/> - <result-to-field result-name="contactMechId" field-name="parameters.newContactMechId"/> - </call-service> - - <if-compare-field field="parameters.contactMechId" operator="not-equals" to-field="parameters.newContactMechId"> - <set-service-fields service-name="createPartyContactMech" map-name="parameters" to-map-name="createPartyContactMechMap"/> - <set field="createPartyContactMechMap.contactMechId" from-field="parameters.newContactMechId"/> - <set field="createPartyContactMechMap.contactMechTypeId" value="TELECOM_NUMBER"/> - <call-service service-name="createPartyContactMech" in-map-name="createPartyContactMechMap" break-on-error="true"> - <default-message resource="PartyUiLabels" property="PartyPostalAddressSuccessfullyCreated"/> - </call-service> - </if-compare-field> - <set field="parameters.contactMechId" from-field="parameters.newContactMechId"/> - </else> - </if-compare-field> - <!-- Setting the purposes --> - <if-compare field="parameters.setShippingPurpose" operator="equals" value="Y"> - <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpShipList" filter-by-date="true"> - <field-map field-name="partyId" env-name="userLogin.partyId"/> - <field-map field-name="contactMechId" env-name="parameters.contactMechId"/> - <field-map field-name="contactMechPurposeTypeId" value="PHONE_SHIPPING"/> - </entity-and> - <!-- If purpose is not exists then create --> - <if-empty field="pcmpShipList"> - <set-service-fields service-name="createPartyContactMechPurpose" map-name="parameters" to-map-name="serviceContext"/> - <set field="serviceContext.partyId" from-field="userLogin.partyId"/> - - <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpList" filter-by-date="true"> - <field-map field-name="partyId" env-name="userLogin.partyId"/> - <field-map field-name="contactMechPurposeTypeId" value="PHONE_SHIPPING"/> - </entity-and> - <if-not-empty field="pcmpList"> - <first-from-list list-name="pcmpList" entry-name="pcmp"/> - <set-service-fields service-name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map-name="serviceInMap"/> - <call-service service-name="deletePartyContactMechPurposeIfExists" in-map-name="serviceInMap"/> - <clear-field field-name="serviceInMap"/> - </if-not-empty> - <set field="serviceContext.contactMechPurposeTypeId" value="PHONE_SHIPPING"/> - <call-service service-name="createPartyContactMechPurpose" in-map-name="serviceContext"/> - <clear-field field-name="pcmpList"/> - <clear-field field-name="serviceContext"/> - </if-empty> - </if-compare> - - <if-compare field="parameters.setBillingPurpose" operator="equals" value="Y"> - <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpBillList" filter-by-date="true"> - <field-map field-name="partyId" env-name="userLogin.partyId"/> - <field-map field-name="contactMechId" env-name="parameters.contactMechId"/> - <field-map field-name="contactMechPurposeTypeId" value="PHONE_BILLING"/> - </entity-and> - <!-- If purpose is not exists then create --> - <if-empty field="pcmpBillList"> - <set-service-fields service-name="createPartyContactMechPurpose" map-name="parameters" to-map-name="serviceContext"/> - <set field="serviceContext.partyId" from-field="userLogin.partyId"/> - - <entity-and entity-name="PartyContactMechPurpose" list-name="pcmpList" filter-by-date="true"> - <field-map field-name="partyId" env-name="userLogin.partyId"/> - <field-map field-name="contactMechPurposeTypeId" value="PHONE_BILLING"/> - </entity-and> - <if-not-empty field="pcmpList"> - <first-from-list list-name="pcmpList" entry-name="pcmp"/> - <set-service-fields service-name="deletePartyContactMechPurposeIfExists" map-name="pcmp" to-map-name="serviceInMap"/> - <call-service service-name="deletePartyContactMechPurposeIfExists" in-map-name="serviceInMap"/> - <clear-field field-name="serviceInMap"/> - </if-not-empty> - <set field="serviceContext.contactMechPurposeTypeId" value="PHONE_BILLING"/> - <call-service service-name="createPartyContactMechPurpose" in-map-name="serviceContext"/> - </if-empty> - </if-compare> + <set-service-fields service-name="updatePartyTelecomNumber" map-name="parameters" to-map-name="updatePartyTelecomNumberCtx"/> + <set field="updatePartyTelecomNumberCtx.contactMechId" from-field="parameters.phoneContactMechId"/> + <call-service service-name="updatePartyTelecomNumber" in-map-name="updatePartyTelecomNumberCtx"> + <result-to-field result-name="contactMechId" field-name="parameters.contactMechId"/> + </call-service> </if-not-empty> </simple-method> </simple-methods> \ No newline at end of file |
Free forum by Nabble | Edit this page |