Author: jleroux Date: Fri Nov 10 11:50:33 2006 New Revision: 473451 URL: http://svn.apache.org/viewvc?view=rev&rev=473451 Log: A patch from Krzysztof Podejma "Cannot create New Contact Information In Facility Manager Application" (https://issues.apache.org/jira/browse/OFBIZ-426) Thanks Krzysztof (aka Kopia ;o) and Ashish for this patches
Added: incubator/ofbiz/trunk/ContactMechServices.patch incubator/ofbiz/trunk/FacilityContactMechServices.patch Added: incubator/ofbiz/trunk/ContactMechServices.patch URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/ContactMechServices.patch?view=auto&rev=473451 ============================================================================== --- incubator/ofbiz/trunk/ContactMechServices.patch (added) +++ incubator/ofbiz/trunk/ContactMechServices.patch Fri Nov 10 11:50:33 2006 @@ -0,0 +1,15 @@ +Index: applications/party/script/org/ofbiz/party/contact/ContactMechServices.xml +=================================================================== +--- applications/party/script/org/ofbiz/party/contact/ContactMechServices.xml (wersja 471862) ++++ applications/party/script/org/ofbiz/party/contact/ContactMechServices.xml (kopia robocza) +@@ -48,8 +48,8 @@ + <log level="info" message="Contact mech need updating"/> + <clone-value value-name="oldValue" new-value-name="newValue"/> + <set-nonpk-fields map-name="parameters" value-name="newValue" set-if-null="false"/> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="contactMech" in-map-name="newValue" out-map-name="context"/> ++ <set field="context.contactMechTypeId" from-field="parameters.contactMechTypeId"/> ++ <set field="context.infoString" from-field="parameters.infoString"/> + <call-service service-name="createContactMech" in-map-name="context"> + <default-message>Contact Mechanism successfully created.</default-message> + <result-to-field result-name="contactMechId" map-name="newValue"/> Added: incubator/ofbiz/trunk/FacilityContactMechServices.patch URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/FacilityContactMechServices.patch?view=auto&rev=473451 ============================================================================== --- incubator/ofbiz/trunk/FacilityContactMechServices.patch (added) +++ incubator/ofbiz/trunk/FacilityContactMechServices.patch Fri Nov 10 11:50:33 2006 @@ -0,0 +1,419 @@ +Index: applications/product/script/org/ofbiz/product/storage/FacilityContactMechServices.xml +=================================================================== +--- applications/product/script/org/ofbiz/product/storage/FacilityContactMechServices.xml (wersja 471862) ++++ applications/product/script/org/ofbiz/product/storage/FacilityContactMechServices.xml (kopia robocza) +@@ -21,40 +21,41 @@ + <simple-method method-name="createFacilityContactMech" short-description="Create a FacilityContactMech"> + <check-permission permission="FACILITY" action="_CREATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> +- <make-value value-name="newValue" entity-name="FacilityContactMech"/> +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> ++ <make-value entity-name="FacilityContactMech" value-name="newValue"/> ++ <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <log level="info" message="contactMechId is ${parameters.contactMechId}"/> +- + <if-empty map-name="parameters" field-name="contactMechId"> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="contactMech" in-map-name="parameters" out-map-name="context"/> +- <call-service service-name="createContactMech" in-map-name="context"> ++ ++ <set-service-fields service-name="createContactMech" map-name="parameters" to-map-name="createContactMechMap"/> ++ <set field="createContactMechMap.contactMechTypeId" from-field="parameters.contactMechTypeId" /> ++ <call-service service-name="createContactMech" in-map-name="createContactMechMap"> + <default-message>Contact Mechanism successfully created.</default-message> + <result-to-field result-name="contactMechId" map-name="newValue"/> + </call-service> + <log level="info" message="ContactMech created"/> + <else> ++ + <set field="newValue.contactMechId" from-field="parameters.contactMechId" /> + </else> + </if-empty> +- +- <log level="info" message="Creating a FacilityContactMech"/> ++ <log level="info" message="Creating a FacilityContactMech with id: ${parameters.contactMechId}"/> + <set field="newValue.facilityId" from-field="parameters.facilityId" /> + <field-to-result field-name="contactMechId" map-name="newValue"/> + <field-to-request field-name="contactMechId" map-name="newValue"/> + <set-nonpk-fields map-name="parameters" value-name="newValue"/> +- <now-timestamp-to-env env-name="nowTimestamp"/> +- <set field="newValue.fromDate" from-field="nowTimestamp" /> ++ <now-timestamp-to-env env-name="newValue.fromDate"/> ++ + <create-value value-name="newValue"/> + </simple-method> +- ++ + <simple-method method-name="updateFacilityContactMech" short-description="Update a FacilityContactMech"> + <check-permission permission="FACILITY" action="_UPDATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + + <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> +- ++ + <!-- Find old value --> ++ + <make-value entity-name="FacilityContactMech" value-name="facilityContactMechMap"/> + <set-pk-fields value-name="facilityContactMechMap" map-name="parameters"/> + <find-by-and entity-name="FacilityContactMech" list-name="facilityContactMechs" map-name="facilityContactMechMap"/> +@@ -64,110 +65,123 @@ + <add-error><fail-message message="ERROR: Cannot update specified contact info because it does not correspond to the specified facility"/></add-error> + </if-empty> + <check-errors/> +- <field-to-list list-name="storeList" field-name="facilityContactMech"/> +- ++ ++ <log message="parameters: ${parameters}" level="info"/> + <clone-value value-name="facilityContactMech" new-value-name="newFacilityContactMech"/> +- ++ <log message="parameters: ${parameters}" level="info"/> + <!-- If we already have a new contactMechId don't update ContactMech --> +- <if-empty map-name="parameters" field-name="newContactMechId"> +- <log level="info" message="Calling map procs"/> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="updateContactMech" in-map-name="parameters" out-map-name="context"/> +- <to-string field-name="contactMechId" map-name="context"/> +- <log level="info" message="Calling generic updateContactMech method"/> +- <call-service service-name="updateContactMech" in-map-name="context"> ++ <if-empty map-name="parameters" field-name="newContactMechId"> ++ <set-service-fields service-name="updateContactMech" map-name="parameters" to-map-name="updateContactMechMap"/> ++ <set field="updateContactMechMap.contactMechTypeId" from-field="parameters.contactMechTypeId" /> ++ <call-service service-name="updateContactMech" in-map-name="updateContactMechMap"> + <default-message>Contact Mechanism successfully updated.</default-message> ++ + <result-to-field result-name="contactMechId" map-name="newFacilityContactMech"/> + </call-service> + <else> +- <set field="newFacilityContactMech.contactMechId" from-field="parameters.newContactMechId" /> ++ <set field="newFacilityContactMech.contactMechId" from-field="parameters.newContactMechId"/> + <log level="info" message="Using supplied new contact mech id: ${newFacilityContactMech.contactMechId}"/> + </else> +- </if-empty> ++ </if-empty> + + <set-nonpk-fields value-name="newFacilityContactMech" map-name="parameters" set-if-null="false"/> +- <now-timestamp-to-env env-name="now"/> +- <set field="newFacilityContactMech.fromDate" from-field="now" /> +- <set field="facilityContactMech.thruDate" from-field="now" /> +- <field-to-list list-name="storeList" field-name="newFacilityContactMech"/> +- ++ ++ <now-timestamp-to-env env-name="newFacilityContactMech.fromDate"/> ++ <now-timestamp-to-env env-name="facilityContactMech.thruDate"/> ++ ++ <store-value value-name="facilityContactMech"/> ++ <create-value value-name="newFacilityContactMech"/> ++ + <if-compare-field field-name="contactMechId" map-name="parameters" to-map-name="newFacilityContactMech" operator="not-equals"> +- <get-related value-name="facilityContactMech" relation-name="FacilityContactMechPurpose" list-name="facilityContactMechPurposes"/> +- <iterate entry-name="facilityContactMechPurpose" list-name="facilityContactMechPurposes"> +- <set field="facilityContactMechPurpose.contactMechId" from-field="newFacilityContactMech.contactMechId" /> +- <field-to-list field-name="facilityContactMechPurpose" list-name="storeList"/> ++ <get-related value-name="facilityContactMech" relation-name="FacilityContactMechPurpose" list-name="facilityContactMechPurposes"/> ++ <iterate entry-name="facilityContactMechPurposeOld" list-name="facilityContactMechPurposes"> ++ <clone-value value-name="facilityContactMechPurposeOld" new-value-name="facilityContactMechPurpose"/> ++ ++ <now-timestamp-to-env env-name="facilityContactMechPurposeOld.thruDate"/> ++ <store-value value-name="facilityContactMechPurposeOld"/> ++ ++ <set field="facilityContactMechPurpose.contactMechId" from-field="newFacilityContactMech.contactMechId"/> ++ <set field="purposeMap.facilityId" from-field="facilityContactMechPurpose.facilityId"/> ++ <set field="purposeMap.contactMechPurposeTypeId" from-field="facilityContactMechPurpose.contactMechPurposeTypeId"/> ++ <set field="purposeMap.contactMechId" from-field="facilityContactMechPurpose.contactMechId"/> ++ <find-by-and entity-name="FacilityContactMechPurpose" list-name="purposeResult" map-name="purposeMap"/> ++ ++ <if-empty field-name="purposeResult"> ++ ++ <create-value value-name="facilityContactMechPurpose"/> ++ </if-empty> + </iterate> + </if-compare-field> +- +- <store-list list-name="storeList"/> ++ + <log level="info" message="Setting id to result: ${newFacilityContactMech.contactMechId}"/> +- <field-to-result field-name="contactMechId" map-name="newFacilityContactMech"/> +- <field-to-request field-name="contactMechId" map-name="newFacilityContactMech"/> ++ <field-to-result field-name="newFacilityContactMech.contactMechId" result-name="contactMechId"/> ++ <field-to-request field-name="newFacilityContactMech.contactMechId" request-name="contactMechId"/> + </simple-method> +- ++ + <simple-method method-name="deleteFacilityContactMech" short-description="Delete a FacilityContactMech"> ++ <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <check-permission permission="FACILITY" action="_DELETE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <make-value entity-name="FacilityContactMech" value-name="facilityContactMechMap"/> + <set-pk-fields value-name="facilityContactMechMap" map-name="parameters"/> + <find-by-and entity-name="FacilityContactMech" list-name="facilityContactMechs" map-name="facilityContactMechMap"/> + <filter-list-by-date list-name="facilityContactMechs" to-list-name="validFacilityContactMechs"/> ++ + <first-from-list entry-name="facilityContactMech" list-name="validFacilityContactMechs"/> + <if-empty field-name="facilityContactMech"> +- <add-error><fail-message message="ERROR: Could not delete contact info (facility contact mech not found)"/></add-error> ++ <add-error> ++ <fail-property resource="FacilityUiLabels" property="FacilityContactMechNotFoundCannotDelete"/> ++ </add-error> + <return/> + </if-empty> +- <now-timestamp-to-env env-name="now"/> +- <set field="facilityContactMech.thruDate" from-field="now" /> ++ <now-timestamp-to-env env-name="facilityContactMech.thruDate"/> + <store-value value-name="facilityContactMech"/> ++ + </simple-method> +- ++ + <simple-method method-name="createFacilityPostalAddress" short-description="Create a PostalAddress for facility"> + <check-permission permission="FACILITY" action="_CREATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> +- <log level="info" message="Creating postal address"/> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="postalAddress" in-map-name="parameters" out-map-name="context"/> +- <call-service in-map-name="context" service-name="createPostalAddress"> ++ <set-service-fields service-name="createPostalAddress" map-name="parameters" to-map-name="createPostalAddressMap"/> ++ <call-service in-map-name="createPostalAddressMap" service-name="createPostalAddress"> + <default-message>Postal Address successfully created</default-message> +- <result-to-field result-name="contactMechId" map-name="newFacilityContactMech"/> ++ ++ <result-to-field result-name="contactMechId" map-name="newFacilityContactMech"/> + </call-service> +- <log level="info" message="ContactMech for postal address was ${newFacilityContactMech.contactMechId}, now creating facility contact mech"/> +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="facilityContactMech" in-map-name="parameters" out-map-name="context2"/> +- <set field="context2.contactMechId" from-field="newFacilityContactMech.contactMechId" /> +- <log level="info" message="Copied id to context2: ${context2.contactMechId}"/> +- <call-service in-map-name="context2" break-on-error="true" service-name="createFacilityContactMech"> +- <default-message>Facility Contact Mechanism successfully created</default-message> ++ ++ <check-errors/> ++ ++ <set field="createFacilityContactMechMap.contactMechId" from-field="newFacilityContactMech.contactMechId"/> ++ <set-service-fields service-name="createFacilityContactMech" map-name="parameters" to-map-name="createFacilityContactMechMap"/> ++ ++ <call-service service-name="createFacilityContactMech" in-map-name="createFacilityContactMechMap" break-on-error="true"> ++ <default-message>Facility Contact Mechanism successfully created</default-message> ++ + </call-service> + <field-to-request field-name="contactMechId" map-name="newFacilityContactMech"/> + <field-to-result field-name="contactMechId" map-name="newFacilityContactMech"/> + </simple-method> +- ++ + <simple-method method-name="updateFacilityPostalAddress" short-description="Update a PostalAddress for facility"> ++ <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <check-permission permission="FACILITY" action="_UPDATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> +- +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="postalAddress" in-map-name="parameters" out-map-name="context"/> +- <call-service in-map-name="context" service-name="updatePostalAddress"> ++ <set-service-fields service-name="updatePostalAddress" map-name="parameters" to-map-name="updatePostalAddressMap"/> ++ <call-service in-map-name="updatePostalAddressMap" service-name="updatePostalAddress"> + <default-message>Postal Address successfully updated</default-message> +- <result-to-field result-name="contactMechId" map-name="newFacilityContactMech" field-name="contactMechId" /> ++ <result-to-field result-name="contactMechId" map-name="newFacilityContactMech" field-name="contactMechId" /> + </call-service> +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="updateFacilityContactMech" in-map-name="parameters" out-map-name="context2"/> +- <set field="context2.newContactMechId" from-field="newFacilityContactMech.contactMechId" /> +- <set field="context2.contactMechTypeId" value="POSTAL_ADDRESS" /> +- <log level="info" message="Copied id to context2: ${context2.newContactMechId}"/> +- <call-service in-map-name="context2" service-name="updateFacilityContactMech"> +- <default-message>Facility Contact Mechanism successfully updated</default-message> ++ ++ <set-service-fields service-name="updateFacilityContactMech" map-name="parameters" to-map-name="updateFacilityContactMechMap"/> ++ <set field="updateFacilityContactMechMap.newContactMechId" from-field="newFacilityContactMech.contactMechId"/> ++ ++ <set field="updateFacilityContactMechMap.contactMechTypeId" value="POSTAL_ADDRESS"/> ++ <log level="info" message="Copied id to updateFacilityContactMechMap: ${updateFacilityContactMechMap.newContactMechId}"/> ++ <call-service service-name="updateFacilityContactMech" in-map-name="updateFacilityContactMechMap"> ++ <default-message>Facility Contact Mechanism successfully updated</default-message> + </call-service> + <field-to-request field-name="contactMechId" map-name="newFacilityContactMech"/> + <field-to-result field-name="contactMechId" map-name="newFacilityContactMech"/> +@@ -177,80 +191,87 @@ + <check-permission permission="FACILITY" action="_CREATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <log level="info" message="Creating telecom number"/> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="telecomNumber" in-map-name="parameters" out-map-name="context"/> +- <call-service in-map-name="context" service-name="createTelecomNumber"> ++ <set-service-fields service-name="createTelecomNumber" map-name="parameters" to-map-name="createTelecomNumberMap"/> ++ <call-service in-map-name="createTelecomNumberMap" service-name="createTelecomNumber"> + <default-message>Telecom number successfully created</default-message> +- <result-to-field result-name="contactMechId" map-name="newFacilityContactMech"/> ++ ++ <result-to-field result-name="contactMechId" map-name="newFacilityContactMech"/> + </call-service> +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="facilityContactMech" in-map-name="parameters" out-map-name="context2"/> +- <set field="context2.contactMechId" from-field="newFacilityContactMech.contactMechId" /> +- <log level="info" message="Copied id to context2: ${context2.contactMechId}"/> +- <call-service in-map-name="context2" break-on-error="true" service-name="createFacilityContactMech"> +- <default-message>Facility Contact Mechanism successfully created</default-message> ++ ++ <set-service-fields service-name="createFacilityContactMech" map-name="parameters" to-map-name="createFacilityContactMechMap"/> ++ <set field="createFacilityContactMechMap.contactMechId" from-field="newFacilityContactMech.contactMechId"/> ++ <log level="info" message="Copied id to createFacilityContactMechMap: ${createFacilityContactMechMap.contactMechId}"/> ++ ++ <call-service service-name="createFacilityContactMech" in-map-name="createFacilityContactMechMap" break-on-error="true"> ++ <default-message>Facility Contact Mechanism successfully created</default-message> ++ + </call-service> + <field-to-request field-name="contactMechId" map-name="newFacilityContactMech"/> + <field-to-result field-name="contactMechId" map-name="newFacilityContactMech"/> + </simple-method> +- ++ + <simple-method method-name="updateFacilityTelecomNumber" short-description="Update a TelecomNumber for facility"> ++ <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> + <check-permission permission="FACILITY" action="_UPDATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <make-value entity-name="FacilityContactMech" value-name="newFacilityContactMech"/> +- <call-map-processor xml-resource="org/ofbiz/party/contact/ContactMechMapProcs.xml" +- processor-name="telecomNumber" in-map-name="parameters" out-map-name="context"/> +- <call-service in-map-name="context" service-name="updateTelecomNumber"> ++ <set-service-fields service-name="updateTelecomNumber" map-name="parameters" to-map-name="updateTelecomNumberMap"/> ++ <call-service service-name="updateTelecomNumber" in-map-name="updateTelecomNumberMap"> + <default-message>Telecom Number successfully updated</default-message> +- <result-to-field result-name="contactMechId" map-name="newFacilityContactMech" field-name="contactMechId" /> ++ <result-to-field result-name="contactMechId" map-name="newFacilityContactMech" field-name="contactMechId" /> + </call-service> +- +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="updateFacilityContactMech" in-map-name="parameters" out-map-name="context2"/> +- <set field="context2.newContactMechId" from-field="newFacilityContactMech.contactMechId" /> +- <set field="context2.contactMechTypeId" value="TELECOM_NUMBER" /> +- <log level="info" message="Copied id to context2: ${context2.newContactMechId}"/> +- <call-service in-map-name="context2" service-name="updateFacilityContactMech"> +- <default-message>Facility Contact Mechanism successfully updated</default-message> ++ ++ <set-service-fields service-name="updateFacilityContactMech" map-name="parameters" to-map-name="updateFacilityContactMechMap"/> ++ <set field="updateFacilityContactMechMap.newContactMechId" from-field="newFacilityContactMech.contactMechId"/> ++ ++ <set field="updateFacilityContactMechMap.contactMechTypeId" value="TELECOM_NUMBER"/> ++ <log level="info" message="Copied id to updateFacilityContactMechMap: ${updateFacilityContactMechMap.newContactMechId}"/> ++ ++ <call-service in-map-name="updateFacilityContactMechMap" service-name="updateFacilityContactMech"> ++ <default-message>Facility Contact Mechanism successfully updated</default-message> + </call-service> + <log level="info" message="Setting result id: ${newFacilityContactMech.contactMechId}"/> + <field-to-request field-name="contactMechId" map-name="newFacilityContactMech"/> + <field-to-result field-name="contactMechId" map-name="newFacilityContactMech"/> +- </simple-method> +- ++ ++ </simple-method> ++ + <simple-method method-name="createFacilityEmailAddress" short-description="Create an email address for facility"> + <check-permission permission="FACILITY" action="_UPDATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="emailAddress" in-map-name="parameters" out-map-name="context"/> +- <check-errors/> +- <set field="context.contactMechTypeId" value="EMAIL_ADDRESS" /> +- <call-service service-name="createFacilityContactMech" in-map-name="context"> ++ <set-service-fields service-name="createFacilityContactMech" map-name="parameters" to-map-name="createFacilityContactMechMap"/> ++ <set field="createFacilityContactMechMap.infoString" from-field="parameters.emailAddress"/> ++ <set field="createFacilityContactMechMap.contactMechTypeId" value="EMAIL_ADDRESS"/> ++ <call-service service-name="createFacilityContactMech" in-map-name="createFacilityContactMechMap"> ++ + <default-message>Facility Contact Mechanism successfully created.</default-message> + <result-to-result result-name="contactMechId"/> + <result-to-request result-name="contactMechId"/> + </call-service> + </simple-method> +- ++ + <simple-method method-name="updateFacilityEmailAddress" short-description="Update an email address for facility"> + <check-permission permission="FACILITY" action="_UPDATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + +- <call-map-processor xml-resource="org/ofbiz/product/storage/FacilityContactMechMapProcs.xml" +- processor-name="emailAddress" in-map-name="parameters" out-map-name="context"/> ++ <if-validate-method field-name="parameters.emailAddress" method="isEmail"> ++ <else><add-error><fail-property resource="FacilityUiLabels" property="FacilityEmailAddressNotFormattedCorrectly"/></add-error></else> ++ </if-validate-method> + <check-errors/> +- <set field="context.contactMechTypeId" value="EMAIL_ADDRESS" /> +- <call-service service-name="updateFacilityContactMech" in-map-name="context"> ++ ++ <set-service-fields service-name="updateFacilityContactMech" map-name="parameters" to-map-name="updateFacilityContactMechMap"/> ++ <set field="updateFacilityContactMechMap.infoString" from-field="parameters.emailAddress"/> ++ <set field="updateFacilityContactMechMap.contactMechTypeId" value="EMAIL_ADDRESS" /> ++ <call-service service-name="updateFacilityContactMech" in-map-name="updateFacilityContactMechMap"> ++ + <default-message>Facility Contact Mechanism successfully updated.</default-message> + <result-to-result result-name="contactMechId"/> + <result-to-request result-name="contactMechId"/> + </call-service> + </simple-method> +- ++ + <simple-method method-name="createFacilityContactMechPurpose" short-description="Create a facility/contact mech purpose"> + <check-permission permission="FACILITY" action="_CREATE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> +@@ -261,38 +282,42 @@ + <set field="lookUpMap.contactMechPurposeTypeId" from-field="parameters.contactMechPurposeTypeId" /> + <find-by-and entity-name="FacilityContactMechPurpose" map-name="lookUpMap" list-name="purposeList"/> + <filter-list-by-date list-name="purposeList"/> +- ++ + <if-not-empty field-name="purposeList"> + <add-error><fail-message message="Could not create new purpose, a purpose with that type already exists"/></add-error> ++ + <check-errors/> + </if-not-empty> +- ++ + <now-timestamp-to-env env-name="nowTimestamp"/> + <make-value value-name="newEntity" entity-name="FacilityContactMechPurpose"/> + <set field="newEntity.facilityId" from-field="parameters.facilityId" /> + <set field="newEntity.contactMechId" from-field="parameters.contactMechId" /> + <set field="newEntity.contactMechPurposeTypeId" from-field="parameters.contactMechPurposeTypeId" /> + <set field="newEntity.fromDate" from-field="nowTimestamp" /> ++ + <create-value value-name="newEntity"/> +- ++ + <field-to-result field-name="fromDate" map-name="newEntity" result-name="fromDate"/> + </simple-method> +- ++ + <simple-method method-name="deleteFacilityContactMechPurpose" short-description="Delete a facility/contact mech purpose"> + <check-permission permission="FACILITY" action="_DELETE"><fail-message message="You do not have permission to perform this operation for this facility."/></check-permission> + <check-errors/> + + <make-value value-name="lookUpMap" entity-name="FacilityContactMechPurpose"/> ++ + <set-pk-fields map-name="parameters" value-name="lookUpMap"/> +- <find-by-primary-key value-name="purposeEntity" entity-name="FacilityContactMechPurpose" map-name="lookUpMap"/> +- ++ <find-by-primary-key value-name="purposeEntity" entity-name="FacilityContactMechPurpose" map-name="lookUpMap"/> ++ + <if-empty field-name="purposeEntity"> + <add-error><fail-message message="Unable to locate purpose; cannot delete"/></add-error> + <check-errors/> + </if-empty> +- ++ + <now-timestamp-to-env env-name="nowTimestamp"/> + <set field="purposeEntity.thruDate" from-field="nowTimestamp" /> +- <store-value value-name="purposeEntity"/> +- </simple-method> ++ ++ <store-value value-name="purposeEntity"/> ++ </simple-method> + </simple-methods>