You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jl...@apache.org on 2014/09/02 09:10:36 UTC
svn commit: r1621937 - in /ofbiz/trunk/applications/product:
script/org/ofbiz/product/store/ProductStoreServices.xml
servicedef/services_store.xml
Author: jleroux
Date: Tue Sep 2 07:10:35 2014
New Revision: 1621937
URL: http://svn.apache.org/r1621937
Log:
A patch from Nicolas Malin for "Convert ProductStore entites CRUD service from simple to entity-auto" https://issues.apache.org/jira/browse/OFBIZ-5741
I converted CRUD service to entity-auto for :
ProductStoreCatalog
ProductStorePaymentSetting
ProductStoreEmail
ProductStoreVendorPayment
ProductStoreShipMeth
ProductStoreRole
ProductStoreKeywordOvrd
ProductStoreSurveyAppl
ProductStoreFinActSetting
ProductStoreVendorShipment
I keep to service in mini lang ProductStore.
I add a new permission service on product store with the same template of produt and productCategory for more homogeneity.
I run manual test create/update/delete from product store screen with success and I run ./ant clean-all load-demo run-tests without error
Modified:
ofbiz/trunk/applications/product/script/org/ofbiz/product/store/ProductStoreServices.xml
ofbiz/trunk/applications/product/servicedef/services_store.xml
Modified: ofbiz/trunk/applications/product/script/org/ofbiz/product/store/ProductStoreServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/script/org/ofbiz/product/store/ProductStoreServices.xml?rev=1621937&r1=1621936&r2=1621937&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/script/org/ofbiz/product/store/ProductStoreServices.xml (original)
+++ ofbiz/trunk/applications/product/script/org/ofbiz/product/store/ProductStoreServices.xml Tue Sep 2 07:10:35 2014
@@ -109,349 +109,6 @@ under the License.
</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 -->
- <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="ProductStoreEmailSetting"/>
- <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="ProductStoreEmailSetting"/>
- <set-pk-fields map="parameters" value-field="lookupKeyValue"/>
- <find-by-primary-key entity-name="ProductStoreEmailSetting" 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="ProductStoreEmailSetting"/>
- <set-pk-fields map="parameters" value-field="lookupPKMap"/>
- <find-by-primary-key entity-name="ProductStoreEmailSetting" map="lookupPKMap" value-field="lookedUpValue"/>
- <remove-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"/>
@@ -753,24 +410,87 @@ under the License.
</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"/>
+ <!-- ============================= -->
+ <!-- Permission Methods -->
+ <!-- ============================= -->
+
+ <!-- a methods to centralize product security code, meant to be called in-line with
+ call-simple-method, and the checkAction and callingMethodName attributes should be in the method context -->
+ <simple-method method-name="checkProductStoreRelatedPermission" short-description="Check ProductStore Related Permission">
+ <if-empty field="callingMethodName">
+ <set field="callingMethodName" value="this operation"/>
+ </if-empty>
+ <if-empty field="checkAction">
+ <set field="checkAction" value="UPDATE"/>
+ </if-empty>
+ <if-empty field="productStoreIdName">
+ <set field="productStoreIdName" value="productStoreId"/>
+ </if-empty>
+ <if-empty field="productStoreIdToCheck">
+ <set field="productStoreIdToCheck" from-field="parameters.${productStoreIdName}"/>
+ </if-empty>
+
+ <!-- find all role-store that this productStore is a member of -->
+ <if>
+ <condition>
+ <not><if-has-permission permission="CATALOG" action="_${checkAction}"/></not>
+ </condition>
+ <then>
+ <entity-and entity-name="ProductStoreRole" list="roleStores" filter-by-date="true">
+ <field-map field-name="productStoreId" from-field="productStoreIdToCheck"/>
+ <field-map field-name="partyId" from-field="userLogin.partyId"/>
+ <field-map field-name="roleTypeId" value="LTD_ADMIN"/>
+ </entity-and>
+ <filter-list-by-date list="roleStores" from-field-name="roleFromDate" thru-field-name="roleThruDate"/>
+ </then>
+ </if>
+ <log level="info" message="Checking store permission, roleStores=${roleStores}"/>
+ <if>
+ <condition>
+ <not>
+ <or>
+ <if-has-permission permission="CATALOG" action="_${checkAction}"/>
+ <and>
+ <if-has-permission permission="CATALOG_ROLE" action="_${checkAction}"/>
+ <not><if-empty field="roleStores"/></not>
+ </and>
+ </or>
+ </not>
+ </condition>
+ <then>
+ <log level="verbose" message="Permission check failed, user does not have permission"/>
+ <set field="checkActionLabel" value="${groovy: 'ProductCatalog' + checkAction.charAt(0) + checkAction.substring(1).toLowerCase() + 'PermissionError'}"/>
+ <add-error>
+ <fail-property resource="ProductUiLabels" property="${checkActionLabel}"/>
+ </add-error>
+ <set field="hasPermission" type="Boolean" value="false"/>
+ </then>
+ </if>
</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 method-name="productStoreGenericPermission" short-description="Main permission logic">
+ <set field="mainAction" from-field="parameters.mainAction"/>
+ <if-empty field="mainAction">
+ <add-error>
+ <fail-property resource="ProductUiLabels" property="ProductMissingMainActionInPermissionService"/>
+ </add-error>
+ <check-errors/>
+ </if-empty>
+
+ <set field="callingMethodName" from-field="parameters.resourceDescription"/>
+ <set field="checkAction" from-field="parameters.mainAction"/>
+ <call-simple-method method-name="checkProductStoreRelatedPermission"/>
+
+ <if-empty field="error_list">
+ <set field="hasPermission" type="Boolean" value="true"/>
+ <field-to-result field="hasPermission"/>
+
+ <else>
+ <property-to-field resource="ProductUiLabels" property="ProductPermissionError" field="failMessage"/>
+ <set field="hasPermission" type="Boolean" value="false"/>
+ <field-to-result field="hasPermission"/>
+ <field-to-result field="failMessage"/>
+ </else>
+ </if-empty>
</simple-method>
<simple-method method-name="checkProductStoreGroupRollup" short-description="When product store group hierarchy has been operate, synchronize primaryParentGroupId with ProductStoreGroupRollup">
Modified: ofbiz/trunk/applications/product/servicedef/services_store.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/servicedef/services_store.xml?rev=1621937&r1=1621936&r2=1621937&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/servicedef/services_store.xml (original)
+++ ofbiz/trunk/applications/product/servicedef/services_store.xml Tue Sep 2 07:10:35 2014
@@ -83,151 +83,151 @@ under the License.
</service>
<!-- Product Store Role Services -->
- <service name="createProductStoreRole" default-entity-name="ProductStoreRole" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreRole" auth="true">
+ <service name="createProductStoreRole" default-entity-name="ProductStoreRole" engine="entity-auto" invoke="create" auth="true">
<description>Create ProductStoreRole</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true"/>
</service>
- <service name="updateProductStoreRole" default-entity-name="ProductStoreRole" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreRole" auth="true">
+ <service name="updateProductStoreRole" default-entity-name="ProductStoreRole" engine="entity-auto" invoke="update" auth="true">
<description>Update a Product Store Role</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="removeProductStoreRole" default-entity-name="ProductStoreRole" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="removeProductStoreRole" auth="true">
+ <service name="removeProductStoreRole" default-entity-name="ProductStoreRole" engine="entity-auto" invoke="delete" auth="true">
<description>Remove ProductStoreRole</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
<!-- Product Store Catalog Services -->
- <service name="createProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreCatalog" auth="true">
+ <service name="createProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="entity-auto" invoke="create" auth="true">
<description>Create ProductStoreCatalog</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true"/>
</service>
- <service name="updateProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreCatalog" auth="true">
+ <service name="updateProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="entity-auto" invoke="update" auth="true">
<description>Update ProductStoreCatalog</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="deleteProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="deleteProductStoreCatalog" auth="true">
+ <service name="deleteProductStoreCatalog" default-entity-name="ProductStoreCatalog" engine="entity-auto" invoke="delete" auth="true">
<description>Delete ProductStoreCatalog</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!-- Product Store Payment Services -->
- <service name="createProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStorePaymentSetting" auth="true">
+ <service name="createProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="entity-auto" invoke="create" auth="true">
<description>Create ProductStorePaymentSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="all" mode="IN" optional="false"/>
<override name="paymentCustomMethodId" optional="true"/>
<override name="paymentGatewayConfigId" optional="true"/>
<override name="paymentPropertiesPath" optional="true"/>
<override name="paymentService" optional="true"/>
</service>
- <service name="updateProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStorePaymentSetting" auth="true">
+ <service name="updateProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="entity-auto" invoke="update" auth="true">
<description>Update ProductStorePaymentSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="all" mode="IN" optional="false"/>
<override name="paymentCustomMethodId" optional="true"/>
<override name="paymentGatewayConfigId" optional="true"/>
<override name="paymentPropertiesPath" optional="true"/>
<override name="paymentService" optional="true"/>
</service>
- <service name="deleteProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="deleteProductStorePaymentSetting" auth="true">
+ <service name="deleteProductStorePaymentSetting" default-entity-name="ProductStorePaymentSetting" engine="entity-auto" invoke="delete" auth="true">
<description>Delete ProductStorePaymentSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!-- Product Store Email Services -->
- <service name="createProductStoreEmailSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreEmail" auth="true">
+ <service name="createProductStoreEmailSetting" default-entity-name="ProductStoreEmailSetting" engine="entity-auto" invoke="create" auth="true">
<description>Create a Product Store Email Setting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes entity-name="ProductStoreEmailSetting" include="all" mode="IN" optional="false"/>
<override name="xslfoAttachScreenLocation" optional="true"/>
<override name="ccAddress" optional="true"/>
<override name="bccAddress" optional="true"/>
<override name="contentType" optional="true"/>
</service>
- <service name="updateProductStoreEmailSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreEmail" auth="true">
+ <service name="updateProductStoreEmailSetting" default-entity-name="ProductStoreEmailSetting" engine="entity-auto" invoke="update" auth="true">
<description>Update a Product Store Email Setting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes entity-name="ProductStoreEmailSetting" include="all" mode="IN" optional="false"/>
<override name="xslfoAttachScreenLocation" optional="true"/>
<override name="ccAddress" optional="true"/>
<override name="bccAddress" optional="true"/>
<override name="contentType" optional="true"/>
</service>
- <service name="removeProductStoreEmailSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="removeProductStoreEmail" auth="true">
+ <service name="removeProductStoreEmailSetting" default-entity-name="ProductStoreEmailSetting" engine="entity-auto" invoke="delete" auth="true">
<description>Remove a Product Store Email Setting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes entity-name="ProductStoreEmailSetting" include="pk" mode="IN" optional="false"/>
</service>
<!-- Product Store Shipping Method Services -->
- <service name="createProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreShipMeth" auth="true">
+ <service name="createProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="entity-auto" invoke="create" auth="true">
<description>Create a Product Store Shipment Method</description>
- <auto-attributes include="nonpk" mode="IN" optional="true"/>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
+ <auto-attributes include="all" mode="IN" optional="true"/>
+ <auto-attributes include="pk" mode="OUT" optional="false"/>
<override name="productStoreId" optional="false"/>
<override name="shipmentMethodTypeId" optional="false"/>
<override name="partyId" optional="false"/>
<override name="roleTypeId" optional="false"/>
</service>
- <service name="updateProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreShipMeth" auth="true">
+ <service name="updateProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="entity-auto" invoke="update" auth="true">
<description>Update a Product Store Shipment Method</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="removeProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="removeProductStoreShipMeth" auth="true">
+ <service name="removeProductStoreShipMeth" default-entity-name="ProductStoreShipmentMeth" engine="entity-auto" invoke="delete" auth="true">
<description>Remove a Product Store Shipment Method</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!-- Product Store Keyword Override services -->
- <service name="createProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreKeywordOvrd" auth="true">
+ <service name="createProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="entity-auto" invoke="create" auth="true">
<description>Create a Product Store Keyword Override</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="target" optional="false"/>
<override name="fromDate" optional="true"/>
<override name="targetTypeEnumId" optional="false"/>
</service>
- <service name="updateProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreKeywordOvrd" auth="true">
+ <service name="updateProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="entity-auto" invoke="update" auth="true">
<description>Update a Product Store Keyword Override</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="deleteProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="deleteProductStoreKeywordOvrd" auth="true">
+ <service name="deleteProductStoreKeywordOvrd" default-entity-name="ProductStoreKeywordOvrd" engine="entity-auto" invoke="delete" auth="true">
<description>Delete a Product Store Keyword Override</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
- <auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
<!-- ProductStoreSurveyAppl Services -->
- <service name="createProductStoreSurveyAppl" default-entity-name="ProductStoreSurveyAppl" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreSurveyAppl" auth="true">
+ <service name="createProductStoreSurveyAppl" default-entity-name="ProductStoreSurveyAppl" engine="entity-auto" invoke="create" auth="true">
<description>Create a Product Store Survey Appl</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<auto-attributes include="pk" mode="OUT" optional="false"/>
</service>
- <service name="deleteProductStoreSurveyAppl" default-entity-name="ProductStoreSurveyAppl" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="removeProductStoreSurveyAppl" auth="true">
+ <service name="deleteProductStoreSurveyAppl" default-entity-name="ProductStoreSurveyAppl" engine="entity-auto" invoke="delete" auth="true">
<description>Delete a Product Store Survey Appl</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
@@ -252,57 +252,60 @@ under the License.
</service>
<!-- ProductStoreFinActSetting Services -->
- <service name="createProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreFinActSetting" auth="true">
+ <service name="createProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="entity-auto" invoke="create" auth="true">
<description>Create ProductStoreFinActSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="updateProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="updateProductStoreFinActSetting" auth="true">
+ <service name="updateProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="entity-auto" invoke="update" auth="true">
<description>Update ProductStoreFinActSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
- <service name="removeProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="simple"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="removeProductStoreFinActSetting" auth="true">
+ <service name="removeProductStoreFinActSetting" default-entity-name="ProductStoreFinActSetting" engine="entity-auto" invoke="delete" auth="true">
<description>Remove ProductStoreFinActSetting</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!--ProductStoreVendorPayment Services -->
- <service name="createProductStoreVendorPayment" engine="simple" default-entity-name="ProductStoreVendorPayment"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreVendorPayment" auth="true">
+ <service name="createProductStoreVendorPayment" engine="entity-auto" default-entity-name="ProductStoreVendorPayment" invoke="create" auth="true">
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
- <service name="deleteProductStoreVendorPayment" engine="simple" default-entity-name="ProductStoreVendorPayment"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="deleteProductStoreVendorPayment" auth="true">
+ <service name="deleteProductStoreVendorPayment" engine="entity-auto" default-entity-name="ProductStoreVendorPayment" invoke="delete" auth="true">
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!--ProductStoreVendorShipment Services -->
- <service name="createProductStoreVendorShipment" engine="simple" default-entity-name="ProductStoreVendorShipment"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="createProductStoreVendorShipment" auth="true">
+ <service name="createProductStoreVendorShipment" default-entity-name="ProductStoreVendorShipment" engine="entity-auto" invoke="create" auth="true">
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
- <service name="deleteProductStoreVendorShipment" engine="simple" default-entity-name="ProductStoreVendorShipment"
- location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="deleteProductStoreVendorShipment" auth="true">
+ <service name="deleteProductStoreVendorShipment" default-entity-name="ProductStoreVendorShipment" engine="entity-auto" invoke="delete" auth="true">
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
<!--ProductStoreFacility Services -->
<service name="createProductStoreFacility" default-entity-name="ProductStoreFacility" engine="entity-auto" invoke="create" auth="true">
<description>Create a ProductStoreFacility</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="CREATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
<service name="updateProductStoreFacility" default-entity-name="ProductStoreFacility" engine="entity-auto" invoke="update" auth="true">
<description>Update a ProductStoreFacility</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
<service name="deleteProductStoreFacility" default-entity-name="ProductStoreFacility" engine="entity-auto" invoke="delete" auth="true">
<description>Delete a ProductStoreFacility</description>
+ <permission-service service-name="productStoreGenericPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
</service>
@@ -349,4 +352,10 @@ under the License.
<attribute name="parentGroupId" mode="IN" type="String" optional="true"/>
<attribute name="fromDate" mode="IN" type="String" optional="true"/>
</service>
+
+ <!-- Permission Services -->
+ <service name="productStoreGenericPermission" engine="simple"
+ location="component://product/script/org/ofbiz/product/store/ProductStoreServices.xml" invoke="productStoreGenericPermission">
+ <implements service="permissionInterface"/>
+ </service>
</services>