<?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="createProductStore" short-description="Create a Product Store">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <if-compare field="parameters.showPricesWithVatTax" operator="equals" value="Y">
            <if-empty field="parameters.vatTaxAuthGeoId">
                <add-error>
                    <fail-property property="ProductVatTaxAuthGeoNotSet" resource="ProductUiLabels"/>
                </add-error>
            </if-empty>
            <if-empty field="parameters.vatTaxAuthPartyId">
                <add-error>
                    <fail-property property="ProductVatTaxAuthPartyNotSet" resource="ProductUiLabels"/>
                </add-error>
            </if-empty>
            <check-errors/>
        </if-compare>

        <make-value value-field="newEntity" entity-name="ProductStore"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <sequenced-id sequence-name="ProductStore" field="productStoreId"/>
        <set from-field="productStoreId" field="newEntity.productStoreId"/>

        <field-to-result field="productStoreId" result-name="productStoreId"/>
        <create-value value-field="newEntity"/>

        <!-- create the ProductStoreFacility record -->
        <now-timestamp field="nowTimestamp"/>

        <if-not-empty field="newEntity.inventoryFacilityId">
            <make-value value-field="storeFacility" entity-name="ProductStoreFacility"/>
            <set from-field="newEntity.inventoryFacilityId" field="storeFacility.facilityId"/>
            <set from-field="newEntity.productStoreId" field="storeFacility.productStoreId"/>
            <set from-field="nowTimestamp" field="storeFacility.fromDate"/>
            <create-value value-field="storeFacility"/>
        </if-not-empty>
    </simple-method>
    <simple-method method-name="updateProductStore" short-description="Update a Product Store">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <set from-field="parameters.productStoreId" field="lookupPKMap.productStoreId"/>
        <find-by-primary-key entity-name="ProductStore" map="lookupPKMap" value-field="store"/>
        <set from-field="store.inventoryFacilityId" field="oldFacilityId"/>
        <set-nonpk-fields map="parameters" value-field="store"/>

        <if-compare field="store.showPricesWithVatTax" operator="equals" value="Y">
            <if-empty field="store.vatTaxAuthGeoId">
                <add-error>
                    <fail-property property="ProductVatTaxAuthGeoNotSet" resource="ProductUiLabels"/>
                </add-error>
            </if-empty>
            <if-empty field="store.vatTaxAuthPartyId">
                <add-error>
                    <fail-property property="ProductVatTaxAuthPartyNotSet" resource="ProductUiLabels"/>
                </add-error>
            </if-empty>
            <check-errors/>
        </if-compare>

        <store-value value-field="store"/>

        <!-- update the ProductStoreFacility record -->
        <now-timestamp field="nowTimestamp"/>
        <if-compare-field field="store.inventoryFacilityId" to-field="oldFacilityId" operator="not-equals">
            <if-compare field="store.oneInventoryFacility" operator="equals" value="Y">
                <!-- expire all the facilities -->
                <set from-field="store.productStoreId" field="lookupPFMap.productStoreId"/>
                <find-by-and entity-name="ProductStoreFacility" map="lookupPFMap" list="storeFacilities"/>
                <filter-list-by-date list="storeFacilities"/>
                <iterate list="storeFacilities" entry="facility">
                    <set from-field="nowTimestamp" field="facility.thruDate"/>
                    <store-value value-field="facility"/>
                </iterate>
            </if-compare>
            <!-- create the new entry -->
            <make-value value-field="storeFacility" entity-name="ProductStoreFacility"/>
            <set from-field="store.inventoryFacilityId" field="storeFacility.facilityId"/>
            <set from-field="store.productStoreId" field="storeFacility.productStoreId"/>
            <set from-field="nowTimestamp" field="storeFacility.fromDate"/>
            <create-value value-field="storeFacility"/>
        </if-compare-field>
    </simple-method>

    <!-- ProductStore and ProdCatalog services -->
    <simple-method method-name="createProductStoreCatalog" short-description="Create ProductStoreCatalog">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStoreCatalog"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.fromDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="newEntity.fromDate"/>
        </if-empty>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStoreCatalog" short-description="Update ProductStoreCatalog">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreCatalog"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deleteProductStoreCatalog" short-description="Delete ProductStoreCatalog">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreCatalog"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- ProductStore Payment Setting Services -->
    <simple-method method-name="createProductStorePaymentSetting" short-description="Create a Product Store Payment Setting">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStorePaymentSetting"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>
        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStorePaymentSetting" short-description="Update a Product Store Payment Setting">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStorePaymentSetting"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key entity-name="ProductStorePaymentSetting" map="lookupPKMap" value-field="setting"/>
        <set-nonpk-fields map="parameters" value-field="setting"/>
        <store-value value-field="setting"/>
    </simple-method>
    <simple-method method-name="deleteProductStorePaymentSetting" short-description="Delete a Product Store Payment Setting">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStorePaymentSetting"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key entity-name="ProductStorePaymentSetting" map="lookupPKMap" value-field="setting"/>
        <set-nonpk-fields map="parameters" value-field="setting"/>
        <remove-value value-field="setting"/>
    </simple-method>

    <!-- ProductStore Email Services-->
    <!-- deprecated use entity-auto
    <simple-method method-name="createProductStoreEmail" short-description="Create Product Store Email Setting">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="OldProdStoreEmailSetting"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStoreEmail" short-description="Update Product Store Email Setting">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupKeyValue" entity-name="OldProdStoreEmailSetting"/>
        <set-pk-fields map="parameters" value-field="lookupKeyValue"/>
        <find-by-primary-key entity-name="OldProdStoreEmailSetting" map="lookupKeyValue" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    -->
    <simple-method method-name="removeProductStoreEmail" short-description="Remove Product Store Email Setting">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="OldProdStoreEmailSetting"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key entity-name="OldProdStoreEmailSetting" map="lookupPKMap" value-field="lookedUpValue"/>
        <now-timestamp field="lookedUpValue.thruDate"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- ProductStore Vendor Payment Services -->
    <simple-method method-name="createProductStoreVendorPayment" short-description="Create a ProductStoreVendorPayment">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value entity-name="ProductStoreVendorPayment" value-field="newEntity"/>
        <set-pk-fields value-field="newEntity" map="parameters"/>
        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="deleteProductStoreVendorPayment" short-description="Remove the ProductStoreVendorPayment">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value entity-name="ProductStoreVendorPayment" value-field="lookedUpValue"/>
        <set-pk-fields value-field="lookedUpValue" map="parameters"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- ProductStore Carrier Shipment Services -->
    <simple-method method-name="createProductStoreShipMeth" short-description="Create Product Store Carrier Shipment Method">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStoreShipmentMeth"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>
        <sequenced-id sequence-name="ProductStoreShipmentMeth" field="newEntity.productStoreShipMethId"/>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStoreShipMeth" short-description="Update Product Store Carrier Shipment Method">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupKeyValue" entity-name="ProductStoreShipmentMeth"/>
        <set-pk-fields map="parameters" value-field="lookupKeyValue"/>
        <find-by-primary-key entity-name="ProductStoreShipmentMeth" map="lookupKeyValue" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="removeProductStoreShipMeth" short-description="Remove Product Store Carrier Shipment Method">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreShipmentMeth"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key entity-name="ProductStoreShipmentMeth" map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- Product Store Role Services -->
    <simple-method method-name="createProductStoreRole" short-description="Create ProductStoreRole">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStoreRole"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.fromDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="newEntity.fromDate"/>
        </if-empty>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStoreRole" short-description="Update a ProductStoreRole">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreRole"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="removeProductStoreRole" short-description="Remove ProductStoreRole">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreRole"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>

        <if-empty field="lookedUpValue.thruDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="lookedUpValue.thruDate"/>
        </if-empty>
        <store-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- Product Store Keyword Override Services -->
    <simple-method method-name="createProductStoreKeywordOvrd" short-description="Create a ProductStoreKeywordOvrd">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStoreKeywordOvrd"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.fromDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="newEntity.fromDate"/>
        </if-empty>

        <!-- make sure the keyword is lower cased -->
        <call-object-method obj-field="newEntity.keyword" method-name="toLowerCase" ret-field="newEntity.keyword"/>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updateProductStoreKeywordOvrd" short-description="Update a ProductStoreKeywordOvrd">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreKeywordOvrd"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deleteProductStoreKeywordOvrd" short-description="Delete a ProductStoreKeywordOvrd">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreKeywordOvrd"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- Product Store Survey Appl Services -->
    <simple-method method-name="createProductStoreSurveyAppl" short-description="Create ProductStoreSurveyAppl">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="ProductStoreSurveyAppl"/>
        <sequenced-id sequence-name="ProductStoreSurveyAppl" field="productStoreSurveyId"/>
        <set from-field="productStoreSurveyId" field="newEntity.productStoreSurveyId"/>
        <field-to-result field="productStoreSurveyId" result-name="productStoreSurveyId"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.fromDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="newEntity.fromDate"/>
        </if-empty>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="removeProductStoreSurveyAppl" short-description="Remove ProductStoreSurveyAppl">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="ProductStoreSurveyAppl"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>

        <if-empty field="lookedUpValue.thruDate">
            <now-timestamp field="nowTimestamp"/>
            <set from-field="nowTimestamp" field="lookedUpValue.thruDate"/>
        </if-empty>
        <store-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- Product Store FinAccount Settings -->
    <simple-method method-name="createProductStoreFinActSetting" short-description="Create a ProductStoreFinActSetting">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="finAcctSetting" entity-name="ProductStoreFinActSetting"/>
        <set-pk-fields value-field="finAcctSetting" map="parameters"/>
        <set-nonpk-fields value-field="finAcctSetting" map="parameters"/>
        <create-value value-field="finAcctSetting"/>
    </simple-method>
    <simple-method method-name="updateProductStoreFinActSetting" short-description="Update a ProductStoreFinActSetting">
        <check-permission permission="CATALOG" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPk" entity-name="ProductStoreFinActSetting"/>
        <set-pk-fields value-field="lookupPk" map="parameters"/>
        <find-by-primary-key map="lookupPk" value-field="finAccountSetting"/>

        <set-nonpk-fields value-field="finAccountSetting" map="parameters"/>
        <store-value value-field="finAccountSetting"/>
    </simple-method>
    <simple-method method-name="removeProductStoreFinActSetting" short-description="Remove a ProductStoreFinActSetting">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPk" entity-name="ProductStoreFinActSetting"/>
        <set-pk-fields value-field="lookupPk" map="parameters"/>
        <find-by-primary-key map="lookupPk" value-field="finAccountSetting"/>
        <remove-value value-field="finAccountSetting"/>
    </simple-method>

    <!-- Store Inventory Services -->
    <simple-method method-name="reserveStoreInventory" short-description="Reserve Store Inventory">
        <entity-one entity-name="Product" value-field="product" use-cache="true"/>
        <entity-one entity-name="ProductStore" value-field="productStore" use-cache="true"/>
        <if-empty field="productStore">
            <add-error>
                <fail-property resource="ProductUiLabels" property="ProductProductStoreNotFound"/>
            </add-error>
            <check-errors/>
        </if-empty>

        <!-- if prodCatalog is set to not reserve inventory, break here -->
        <if-compare value="N" operator="equals" field="productStore.reserveInventory">
            <!-- note: if not set, defaults to yes, reserve inventory -->
            <log level="verbose" message="ProductStore with id ${productStore.productStoreId}, is set to NOT reserve inventory, not reserving inventory"/>
            <field-to-result field="parameters.quantity" result-name="quantityNotReserved"/>
            <return response-code="success"/>
        </if-compare>

        <call-simple-method method-name="isStoreInventoryRequiredInline"/>

        <set from-field="parameters.facilityId" field="facilityId"/>
        <if-empty field="facilityId">
            <if-compare value="Y" field="productStore.oneInventoryFacility" operator="equals">
                <if-empty field="productStore.inventoryFacilityId">
                    <add-error>
                        <fail-property resource="ProductUiLabels" property="ProductProductStoreNoSpecifiedInventoryFacility"/>
                    </add-error>
                    <check-errors/>
                </if-empty>
                <set-service-fields map="parameters" to-map="callServiceMap" service-name="reserveProductInventoryByFacility"/>
                <set from-field="productStore.inventoryFacilityId" field="callServiceMap.facilityId"/>
                <set from-field="requireInventory" field="callServiceMap.requireInventory"/>
                <set from-field="productStore.reserveOrderEnumId" field="callServiceMap.reserveOrderEnumId"/>
                <call-service service-name="reserveProductInventoryByFacility" in-map-name="callServiceMap">
                    <result-to-field result-name="quantityNotReserved"/>
                </call-service>

                <if-compare value="0" field="quantityNotReserved" operator="equals" type="BigDecimal">
                    <log level="info" message="Inventory IS reserved in facility with id [${productStore.inventoryFacilityId}] for product id [${parameters.productId}]; desired quantity was ${parameters.quantity}"/>
                <else>
                    <log level="info" message="There is insufficient inventory available in facility with id [${productStore.inventoryFacilityId}] for product id [${parameters.productId}]; desired quantity is ${parameters.quantity}, amount could not reserve is ${quantityNotReserved}"/>
                </else>
                </if-compare>
            <else>
                <entity-and entity-name="ProductStoreFacility" list="productStoreFacilities" use-cache="true">
                    <field-map from-field="productStore.productStoreId" field-name="productStoreId"/>
                    <order-by field-name="sequenceNum"/>
                </entity-and>
                <iterate list="productStoreFacilities" entry="productStoreFacility">
                    <!-- in this case quantityNotReserved will always be empty until it finds a facility it can totally reserve from, then it will be 0.0 and we are done -->
                    <if-empty field="storeFound">
                        <!-- TODO: must entire quantity be available in one location? -->
                        <!-- Right now the answer is yes, it only succeeds if one facility has sufficient inventory for the order. -->
                        <set from-field="parameters.productId" field="callServiceMap.productId"/>
                        <set from-field="productStoreFacility.facilityId" field="callServiceMap.facilityId"/>
                        <log level="info" message="ProductStoreService:In productStoreFacilities loop: [${parameters.facilityId}]"/>
                        <call-service service-name="getInventoryAvailableByFacility" in-map-name="callServiceMap">
                            <result-to-field result-name="availableToPromiseTotal"/>
                        </call-service>
                        <clear-field field="callServiceMap"/>

                        <if-compare-field field="availableToPromiseTotal" to-field="parameters.quantity" operator="greater-equals" type="BigDecimal">
                            <set field="storeFound" from-field="productStoreFacility"/>
                        </if-compare-field>
                        <clear-field field="availableToPromiseTotal"/>
                    </if-empty>
                </iterate>

                <!-- didn't find anything? Take the first facility from list -->
                <if-empty field="storeFound">
                    <first-from-list list="productStoreFacilities" entry="storeFound"/>
                </if-empty>
                <set from-field="storeFound.facilityId" field="facilityId" default-value=""/>
                <set-service-fields map="parameters" to-map="callServiceMap" service-name="reserveProductInventoryByFacility"/>
                <set from-field="facilityId" field="callServiceMap.facilityId"/>
                <set from-field="requireInventory" field="callServiceMap.requireInventory"/>
                <set from-field="productStore.reserveOrderEnumId" field="callServiceMap.reserveOrderEnumId"/>
                <call-service service-name="reserveProductInventoryByFacility" in-map-name="callServiceMap">
                    <result-to-field result-name="quantityNotReserved"/>
                </call-service>
                <log level="info" message="Inventory IS reserved in facility with id [${storeFound.facilityId}] for product id [${parameters.productId}]; desired quantity was ${parameters.quantity}"/>
            </else>
            </if-compare>
        <else>
            <entity-and entity-name="ProductStoreFacility" list="productStoreFacilities" use-cache="true">
                <field-map from-field="productStore.productStoreId" field-name="productStoreId"/>
                <field-map from-field="facilityId" field-name="facilityId"/>
                <order-by field-name="sequenceNum"/>
            </entity-and>
            <iterate list="productStoreFacilities" entry="productStoreFacility">
                <!-- Search Product Store Facilities to insure the facility passed in is associated to the Product Store passed in -->
                <set field="facilityFound" from-field="productStoreFacility"/>
                <log level="info" message="ProductStoreService:Facility Found : [${facilityFound}]"/>
            </iterate>
            <if-empty field="facilityFound">
                <add-error>
                    <fail-property resource="ProductUiLabels" property="FacilityNoAssociatedWithProcuctStore"/>
                </add-error>
                <check-errors/>
            </if-empty>
            <set-service-fields map="parameters" to-map="callServiceMap" service-name="reserveProductInventoryByFacility"/>
            <set from-field="facilityId" field="callServiceMap.facilityId"/>
            <set from-field="requireInventory" field="callServiceMap.requireInventory"/>
            <set from-field="productStore.reserveOrderEnumId" field="callServiceMap.reserveOrderEnumId"/>
            <call-service service-name="reserveProductInventoryByFacility" in-map-name="callServiceMap">
                <result-to-field result-name="quantityNotReserved"/>
            </call-service>
            <if-compare value="0" field="quantityNotReserved" operator="equals" type="BigDecimal">
                <log level="info" message="Inventory IS reserved in facility with id [${facilityId}] for product id [${parameters.productId}]; desired quantity was ${parameters.quantity}"/>
            <else>
                <log level="info" message="There is insufficient inventory available in facility with id [${facilityId}] for product id [${parameters.productId}]; desired quantity is ${parameters.quantity}, amount could not reserve is ${quantityNotReserved}"/>
            </else>
            </if-compare>
        </else>
        </if-empty>
        <field-to-result field="quantityNotReserved"/>
    </simple-method>

    <simple-method method-name="isStoreInventoryRequired" short-description="Is Store Inventory Required" login-required="false">
        <if-empty field="parameters.productStore">
            <entity-one entity-name="ProductStore" value-field="productStore" use-cache="true"/>
        <else>
            <set from-field="parameters.productStore" field="productStore"/>
        </else>
        </if-empty>
        <if-empty field="parameters.product">
            <entity-one entity-name="Product" value-field="product" use-cache="true"/>
        <else>
            <set from-field="parameters.product" field="product"/>
        </else>
        </if-empty>

        <call-simple-method method-name="isStoreInventoryRequiredInline"/>
        <field-to-result field="requireInventory"/>
    </simple-method>
    <simple-method method-name="isStoreInventoryRequiredInline" short-description="Is Store Inventory Required" login-required="false">
        <set from-field="product.requireInventory" field="requireInventory"/>
        <if-empty field="requireInventory">
            <set from-field="productStore.requireInventory" field="requireInventory"/>
        </if-empty>
        <if-empty field="requireInventory">
            <set value="Y" field="requireInventory"/>
        </if-empty>
    </simple-method>

    <simple-method method-name="isStoreInventoryAvailable" short-description="Is Store Inventory Available" login-required="false">
        <if-empty field="parameters.productStore">
            <entity-one entity-name="ProductStore" value-field="productStore" use-cache="true"/>
        <else>
            <set from-field="parameters.productStore" field="productStore"/>
        </else>
        </if-empty>
        <if-empty field="parameters.product">
            <entity-one entity-name="Product" value-field="product" use-cache="true"/>
        <else>
            <set from-field="parameters.product" field="product"/>
        </else>
        </if-empty>

        <!-- If the given product is a SERVICE or DIGITAL_GOOD -->
        <if>
            <condition>
                <or>
                    <if-compare field="product.productTypeId" operator="equals" value="SERVICE"/>
                    <if-compare field="product.productTypeId" operator="equals" value="DIGITAL_GOOD"/>
                </or>
            </condition>
            <then>
                <log level="verbose" message="Product with id ${product.productId}, is of type ${product.productTypeId}, returning true for inventory available check"/>
                <set value="Y" field="available"/>
                <field-to-result field="available"/>
                <return/>
            </then>
        </if>

        <!-- TODO: what to do with ASSET_USAGE? Only done elsewhere? Would need date/time range info to check availability -->

        <!-- if prodCatalog is set to not check inventory break here -->
        <if-compare value="N" field="productStore.checkInventory" operator="equals">
            <!-- note: if not set, defaults to yes, check inventory -->
            <log level="verbose" message="ProductStore with id ${productStore.productStoreId}, is set to NOT check inventory, returning true for inventory available check"/>
            <set value="Y" field="available"/>
            <field-to-result field="available"/>
            <return/>
        </if-compare>

        <if-compare value="Y" operator="equals" field="productStore.oneInventoryFacility">
            <if-empty field="productStore.inventoryFacilityId">
                <add-error>
                    <fail-property resource="ProductUiLabels" property="ProductProductStoreNotCheckAvailability"/>
                </add-error>
                <check-errors/>
            </if-empty>

            <set from-field="parameters.productId" field="callServiceMap.productId"/>
            <set from-field="productStore.inventoryFacilityId" field="callServiceMap.facilityId"/>
            <set field="isMarketingPkg" value="${groovy: org.ofbiz.entity.util.EntityTypeUtil.hasParentType(delegator, 'ProductType', 'productTypeId', product.productTypeId, 'parentTypeId', 'MARKETING_PKG')}" type="Boolean"/>
            <if-compare field="isMarketingPkg" operator="equals" value="true" type="Boolean">
                <call-service service-name="getMktgPackagesAvailable" in-map-name="callServiceMap">
                    <result-to-field result-name="availableToPromiseTotal"/>
                </call-service>
                <else>
                    <call-service service-name="getInventoryAvailableByFacility" in-map-name="callServiceMap">
                        <result-to-field result-name="availableToPromiseTotal"/>
                    </call-service>
                </else>
            </if-compare>
            <!-- check to see if we got enough back... -->
            <if-compare-field field="availableToPromiseTotal" to-field="parameters.quantity" operator="greater-equals" type="BigDecimal">
                <set value="Y" field="available"/>
                <log level="info" message="Inventory IS available in facility with id ${productStore.inventoryFacilityId} for product id ${parameters.productId}; desired quantity is ${parameters.quantity}, available quantity is ${availableToPromiseTotal}"/>
            <else>
                <set value="N" field="available"/>
                <log level="info" message="Returning false because there is insufficient inventory available in facility with id ${productStore.inventoryFacilityId} for product id ${parameters.productId}; desired quantity is ${parameters.quantity}, available quantity is ${availableToPromiseTotal}"/>
            </else>
            </if-compare-field>
        <else>
            <entity-and entity-name="ProductStoreFacility" list="productStoreFacilities" use-cache="true">
                <field-map from-field="productStore.productStoreId" field-name="productStoreId"/>
                <order-by field-name="sequenceNum"/>
            </entity-and>

            <set value="N" field="available"/>
            <iterate list="productStoreFacilities" entry="productStoreFacility">
                <if-compare value="N" field="available" operator="equals">
                    <!-- TODO: must entire quantity be available in one location? -->
                    <!-- Right now the answer is yes, it only succeeds if one facility has sufficient inventory for the order. -->
                    <set from-field="parameters.productId" field="callServiceMap.productId"/>
                    <set from-field="productStoreFacility.facilityId" field="callServiceMap.facilityId"/>
                    <set field="isMarketingPkg" value="${groovy: org.ofbiz.entity.util.EntityTypeUtil.hasParentType(delegator, 'ProductType', 'productTypeId', product.productTypeId, 'parentTypeId', 'MARKETING_PKG')}" type="Boolean"/>
                    <if-compare field="isMarketingPkg" operator="equals" value="true" type="Boolean">
                        <call-service service-name="getMktgPackagesAvailable" in-map-name="callServiceMap">
                            <result-to-field result-name="availableToPromiseTotal"/>
                        </call-service>
                        <else>
                            <call-service service-name="getInventoryAvailableByFacility" in-map-name="callServiceMap">
                                <result-to-field result-name="availableToPromiseTotal"/>
                            </call-service>
                        </else>
                    </if-compare>

                    <clear-field field="callServiceMap"/>

                    <if-compare-field field="availableToPromiseTotal" to-field="parameters.quantity" operator="greater-equals" type="BigDecimal">
                        <set value="Y" field="available"/>
                        <log level="info" message="Inventory IS available in facility with id ${productStoreFacility.facilityId} for product id ${parameters.productId}; desired quantity is ${parameters.quantity}, available quantity is ${availableToPromiseTotal}"/>
                    </if-compare-field>
                    <clear-field field="availableToPromiseTotal"/>
                </if-compare>
            </iterate>
        </else>
        </if-compare>

        <field-to-result field="available"/>

        <!--
            /* TODO: must entire quantity be available in one location?
             *  Right now the answer is yes, it only succeeds if one facility has sufficient inventory for the order.
             *  When we get into splitting options it is much more complicated. There are various options like:
             *  - allow split between facilities
             *  - in split order facilities by highest quantities
             *  - in split order facilities by lowest quantities
             *  - in split order facilities by order in database, ie sequence numbers on facility-store join table
             *  - in split order facilities by nearest locations to customer (not an easy one there...)
             */

            // loop through all facilities attached to this catalog and check for individual or cumulative sufficient inventory
        -->
    </simple-method>

    <simple-method method-name="isStoreInventoryAvailableOrNotRequired" short-description="Is Store Inventory Available or Not Required" login-required="false">
        <if-empty field="parameters.productStore">
            <entity-one entity-name="ProductStore" value-field="productStore" use-cache="true"/>
        <else>
            <set from-field="parameters.productStore" field="productStore"/>
        </else>
        </if-empty>
        <if-empty field="parameters.product">
            <entity-one entity-name="Product" value-field="product" use-cache="true"/>
        <else>
            <set from-field="parameters.product" field="product"/>
        </else>
        </if-empty>

        <call-simple-method method-name="isStoreInventoryRequiredInline"/>

        <if-compare field="requireInventory" operator="not-equals" value="Y">
            <set value="Y" field="availableOrNotRequired"/>
            <field-to-result field="availableOrNotRequired"/>
        <else>
            <set-service-fields map="parameters" to-map="callServiceMap" service-name="isStoreInventoryAvailable"/>
            <call-service service-name="isStoreInventoryAvailable" in-map-name="callServiceMap">
                <result-to-result result-name="available" service-result-name="availableOrNotRequired"/>
            </call-service>
        </else>
        </if-compare>
    </simple-method>

    <!-- ProductStore Vendor Shipment Services -->
    <simple-method method-name="createProductStoreVendorShipment" short-description="Create a ProductStoreVendorShipment">
        <check-permission permission="CATALOG" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogCreatePermissionError"/>
        </check-permission>
        <check-errors/>
        <make-value entity-name="ProductStoreVendorShipment" value-field="newEntity"/>
        <set-pk-fields value-field="newEntity" map="parameters"/>
        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="deleteProductStoreVendorShipment" short-description="Remove the ProductStoreVendorShipment">
        <check-permission permission="CATALOG" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductCatalogDeletePermissionError"/>
        </check-permission>
        <check-errors/>
        <make-value entity-name="ProductStoreVendorShipment" value-field="lookedUpValue"/>
        <set-pk-fields value-field="lookedUpValue" map="parameters"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

</simple-methods>

