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>