Author: hansbak
Date: Wed Nov 8 21:10:56 2006 New Revision: 472774 URL: http://svn.apache.org/viewvc?view=rev&rev=472774 Log: replace the field communicationId from the entity Subscription with a new entity 'SubscriptionCommEvent' to enable a 1:n relationship between subscription and comminicationEvent. Also added menus and services to support it. Modified: incubator/ofbiz/trunk/applications/product/config/ProductUiLabels.properties incubator/ofbiz/trunk/applications/product/entitydef/entitygroup.xml incubator/ofbiz/trunk/applications/product/entitydef/entitymodel.xml incubator/ofbiz/trunk/applications/product/script/org/ofbiz/product/subscription/SubscriptionServices.xml incubator/ofbiz/trunk/applications/product/servicedef/services_subscription.xml incubator/ofbiz/trunk/applications/product/webapp/catalog/WEB-INF/controller.xml incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionForms.xml incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionMenus.xml incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionScreens.xml Modified: incubator/ofbiz/trunk/applications/product/config/ProductUiLabels.properties URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/config/ProductUiLabels.properties?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/config/ProductUiLabels.properties (original) +++ incubator/ofbiz/trunk/applications/product/config/ProductUiLabels.properties Wed Nov 8 21:10:56 2006 @@ -140,6 +140,7 @@ PageTitleEditSubscriptionAttributes=Edit Subscription Attributes PageTitleEditSubscriptionResource=Edit Subscription Resource PageTitleEditSubscriptionResourceProducts=Edit Subscription Resource Products +PageTitleEditSubscriptionCommEvent=Edit Subscription Communication Event PageTitleEditShipmentItems=Edit Shipment Items PageTitleEditShipmentPackages=Edit Shipment Packages PageTitleEditShipmentPlan=Edit Shipment Plan @@ -1214,6 +1215,7 @@ ProductSubscriptions=Subscriptions ProductSubscriptionResource=Subscription Resources ProductSubscriptionResources=Subscription Resources +ProductSubscriptionCommEvent= Subscription Communication Event ProductSubProduct=SubProduct ProductSubTitle=Sub-Title ProductSubject=Subject Modified: incubator/ofbiz/trunk/applications/product/entitydef/entitygroup.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/entitydef/entitygroup.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/entitydef/entitygroup.xml (original) +++ incubator/ofbiz/trunk/applications/product/entitydef/entitygroup.xml Wed Nov 8 21:10:56 2006 @@ -247,6 +247,9 @@ <entity-group group="org.ofbiz" entity="SubscriptionType" /> <entity-group group="org.ofbiz" entity="SubscriptionTypeAttr" /> + <entity-group group="org.ofbiz" entity="SubscriptionCommEvent" /> + <entity-group group="org.ofbiz" entity="SubscriptionAndCommEvent" /> + <!-- ========================================================= --> <!-- org.ofbiz.product.supplier --> <!-- ========================================================= --> Modified: incubator/ofbiz/trunk/applications/product/entitydef/entitymodel.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/entitydef/entitymodel.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/entitydef/entitymodel.xml (original) +++ incubator/ofbiz/trunk/applications/product/entitydef/entitymodel.xml Wed Nov 8 21:10:56 2006 @@ -3616,7 +3616,7 @@ <entity entity-name="Subscription" package-name="org.ofbiz.product.subscription" title="Subscription Entity"> <field name="subscriptionId" type="id-ne"></field> <field name="subscriptionResourceId" type="id"></field> - <field name="communicationEventId" type="id"></field> + <!--field name="communicationEventId" type="id"></field--><!-- now replaced by entity: SubscriptionCommEvent --> <field name="contactMechId" type="id"></field> <field name="originatedFromPartyId" type="id"></field> <field name="originatedFromRoleTypeId" type="id"></field> @@ -3636,9 +3636,6 @@ <relation type="one" fk-name="SUBSC_SRESRC" rel-entity-name="SubscriptionResource"> <key-map field-name="subscriptionResourceId"/> </relation> - <relation type="one" fk-name="SUBSC_COM_EVENT" rel-entity-name="CommunicationEvent"> - <key-map field-name="communicationEventId"/> - </relation> <relation type="one" fk-name="SUBSC_CONT_MECH" rel-entity-name="ContactMech"> <key-map field-name="contactMechId"/> </relation> @@ -3766,6 +3763,28 @@ <key-map field-name="subscriptionTypeId"/> </relation> </entity> + + <entity entity-name="SubscriptionCommEvent" package-name="org.ofbiz.product.subscription" title="Subscription Communication Event Entity"> + <field name="subscriptionId" type="id-ne"></field> + <field name="communicationEventId" type="id-ne"></field> + <prim-key field="subscriptionId"/> + <prim-key field="communicationEventId"/> + <relation type="one" fk-name="SUBSC_COM_EVENT" rel-entity-name="CommunicationEvent"> + <key-map field-name="communicationEventId"/> + </relation> + <relation type="one" fk-name="SUBSC_SUBSC" rel-entity-name="Subscription"> + <key-map field-name="subscriptionId"/> + </relation> + </entity> + <view-entity entity-name="SubscriptionAndCommEvent" package-name="org.ofbiz.product.subscription" title="Subscription And Communication Event View Entity"> + <member-entity entity-alias="SC" entity-name="SubscriptionCommEvent"/> + <member-entity entity-alias="CE" entity-name="CommunicationEvent"/> + <alias-all entity-alias="SC"/> + <alias-all entity-alias="CE"/> + <view-link entity-alias="SC" rel-entity-alias="CE"> + <key-map field-name="communicationEventId"/> + </view-link> + </view-entity> <!-- ========================================================= --> <!-- org.ofbiz.product.supplier --> Modified: incubator/ofbiz/trunk/applications/product/script/org/ofbiz/product/subscription/SubscriptionServices.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/script/org/ofbiz/product/subscription/SubscriptionServices.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/script/org/ofbiz/product/subscription/SubscriptionServices.xml (original) +++ incubator/ofbiz/trunk/applications/product/script/org/ofbiz/product/subscription/SubscriptionServices.xml Wed Nov 8 21:10:56 2006 @@ -143,4 +143,21 @@ </else> </if-empty> </simple-method> + + <simple-method method-name="createSubscriptionCommEvent" short-description="Create a Subscription Communication Event"> + <set value="_CREATE" field="securityAction"/> + <check-permission permission="CATALOG" action="${securityAction}"><fail-property resource="ProductUiLabels" property="GeneralCatalogPermissionError"/></check-permission> + <check-errors/> + <make-value value-name="newEntity" entity-name="SubscriptionCommEvent"/> + <set-pk-fields map-name="parameters" value-name="newEntity"/> + <set-nonpk-fields map-name="parameters" value-name="newEntity"/> + <create-value value-name="newEntity"/> + </simple-method> + <simple-method method-name="removeSubscriptionCommEvent" short-description="Remove a Subscription Communication Event"> + <set value="_CREATE" field="securityAction"/> + <check-permission permission="CATALOG" action="${securityAction}"><fail-property resource="ProductUiLabels" property="GeneralCatalogPermissionError"/></check-permission> + <check-errors/> + <entity-one entity-name="SubscriptionCommEvent" value-name="eventSubscription"/> + <remove-value value-name="eventSubscription"/> + </simple-method> </simple-methods> Modified: incubator/ofbiz/trunk/applications/product/servicedef/services_subscription.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/servicedef/services_subscription.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/servicedef/services_subscription.xml (original) +++ incubator/ofbiz/trunk/applications/product/servicedef/services_subscription.xml Wed Nov 8 21:10:56 2006 @@ -117,4 +117,15 @@ <attribute name="attrName" type="String" mode="IN" optional="false"/> <attribute name="attrValue" type="String" mode="IN" optional="true"/> </service> + + <service name="createSubscriptionCommEvent" engine="simple" + location="org/ofbiz/product/subscription/SubscriptionServices.xml" invoke="createSubscriptionCommEvent" auth="true"> + <description>Create a Subscription Communication Event </description> + <auto-attributes entity-name="SubscriptionCommEvent" include="pk" mode="IN" optional="false"/> + </service> + <service name="removeSubscriptionCommEvent" engine="simple" + location="org/ofbiz/product/subscription/SubscriptionServices.xml" invoke="removeSubscriptionCommEvent" auth="true"> + <description>Remove a Subscription Communication Event </description> + <auto-attributes entity-name="SubscriptionCommEvent" include="pk" mode="IN" optional="false"/> + </service> </services> Modified: incubator/ofbiz/trunk/applications/product/webapp/catalog/WEB-INF/controller.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/webapp/catalog/WEB-INF/controller.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/webapp/catalog/WEB-INF/controller.xml (original) +++ incubator/ofbiz/trunk/applications/product/webapp/catalog/WEB-INF/controller.xml Wed Nov 8 21:10:56 2006 @@ -1478,6 +1478,26 @@ <response name="success" type="view" value="EditSubscriptionAttributes"/> </request-map> + <!-- ================ Subscription Communication Event ================= --> + <request-map uri="EditSubscriptionCommEvent"> + <security https="true" auth="true"/> + <response name="success" type="view" value="EditSubscriptionCommEvent"/> + <response name="error" type="view" value="EditSubscriptionCommEvent"/> + </request-map> + + <request-map uri="createSubscriptionCommEvent"> + <security https="true" auth="true"/> + <event type="service" path="" invoke="createSubscriptionCommEvent"/> + <response name="success" type="view" value="EditSubscriptionCommEvent"/> + <response name="error" type="view" value="EditSubscriptionCommEvent"/> + </request-map> + <request-map uri="removeSubscriptionCommEvent"> + <security https="true" auth="true"/> + <event type="service" path="" invoke="removeSubscriptionCommEvent"/> + <response name="success" type="view" value="EditSubscriptionCommEvent"/> + <response name="error" type="view" value="EditSubscriptionCommEvent"/> + </request-map> + <!-- ================ ProductPromo Rules Requests ================= --> <request-map uri="EditProductPromoRules"> <security https="true" auth="true"/> @@ -2177,6 +2197,7 @@ <request-map uri="LookupProductFeature"><security auth="true" https="true"/><response name="success" type="view" value="LookupProductFeature"/></request-map> <request-map uri="LookupProductStore"><security auth="true" https="true"/><response name="success" type="view" value="LookupProductStore"/></request-map> <request-map uri="LookupFacilityLocation"><security auth="true" https="true"/><response name="success" type="view" value="LookupFacilityLocation"/></request-map> + <!-- end of request mappings --> @@ -2245,6 +2266,7 @@ <view-map name="FindSubscriptionResource" type="screen" page="component://product/widget/catalog/SubscriptionScreens.xml#FindSubscriptionResource"/> <view-map name="EditSubscriptionResource" type="screen" page="component://product/widget/catalog/SubscriptionScreens.xml#EditSubscriptionResource"/> <view-map name="EditSubscriptionResourceProducts" type="screen" page="component://product/widget/catalog/SubscriptionScreens.xml#EditSubscriptionResourceProducts"/> + <view-map name="EditSubscriptionCommEvent" type="screen" page="component://product/widget/catalog/SubscriptionScreens.xml#EditSubscriptionCommEvent"/> <view-map name="EditFeature" type="screen" page="component://product/widget/catalog/FeatureScreens.xml#EditFeature"/> <view-map name="EditFeatureCategories" type="screen" page="component://product/widget/catalog/FeatureScreens.xml#EditFeatureCategories"/> @@ -2311,5 +2333,6 @@ <view-map name="LookupProductFeature" type="screen" page="component://product/widget/catalog/LookupScreens.xml#LookupProductFeature"/> <view-map name="LookupProductStore" type="screen" page="component://product/widget/catalog/LookupScreens.xml#LookupProductStore"/> <view-map name="LookupFacilityLocation" page="component://product/widget/facility/LookupScreens.xml#LookupFacilityLocation" type="screen"/> + <!-- end of view mappings --> </site-conf> Modified: incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionForms.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionForms.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionForms.xml (original) +++ incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionForms.xml Wed Nov 8 21:10:56 2006 @@ -60,7 +60,6 @@ <field name="orderId"><lookup target-form-name="LookupOrderHeader"/></field> <field name="productId"><lookup target-form-name="LookupProduct"/></field> <field name="productCategoryId"><lookup target-form-name="LookupProductCategory"/></field> - <field name="communicationEventId"><lookup target-form-name="LookupCommEvent"/></field> <field name="partyNeedId"><ignored/></field> <field name="needTypeId"><ignored/></field> @@ -114,11 +113,6 @@ <sub-hyperlink target="/catalog/control/EditProductCategory?productCategoryId=${productCategoryId}" target-type="inter-app" description="${productCategoryId}" link-style="buttontext"/> </display-entity> </field> - <field name="communicationEventId"> - <display-entity entity-name="CommunicationEvent" description="${subject}"> - <sub-hyperlink target="/partymgr/control/ViewCommunicationEvent?communicationEventId=${communicationEventId}" target-type="inter-app" description="${communicationEventId}" link-style="buttontext"/> - </display-entity> - </field> <field name="partyNeedId"><ignored/></field> <field name="needTypeId"><ignored/></field> @@ -205,11 +199,6 @@ <sub-hyperlink target="/catalog/control/EditProductCategory?productCategoryId=${subscription.productCategoryId}" target-type="inter-app" description="${subscription.productCategoryId}" link-style="buttontext"/> </lookup> </field> - <field name="communicationEventId"> - <lookup target-form-name="LookupCommEvent"> - <sub-hyperlink target="/partymgr/control/ViewCommunicationEvent?communicationEventId=${subscription.communicationEventId}" target-type="inter-app" description="${subscription.communicationEventId}" link-style="buttontext"/> - </lookup> - </field> <field name="submitButton" title="${uiLabelMap.CommonUpdate}" widget-style="smallSubmit"><submit button-type="button"/></field> </form> @@ -333,5 +322,48 @@ <field name="subscriptionId"><hidden/></field> <field name="updateButton" widget-style="smallSubmit"><submit button-type="button"/></field> + </form> + + <!-- Subscription Communication Event --> + <form name="listSubscriptionCommEvent" type="list" list-name="subscriptionCommEvent" target="ListSubscriptionCommEvent" + default-title-style="tableheadtext" default-widget-style="tabletext" default-tooltip-style="tabletext"> + <actions> + <entity-condition entity-name="SubscriptionAndCommEvent"> + <condition-expr field-name="subscriptionId" env-name="subscriptionId"/> + <order-by field-name="communicationEventId"/> + </entity-condition> + </actions> + <field name="subscriptionId"><hidden/></field> + <field name="communicationEventId" widget-style="buttontext"> + <hyperlink also-hidden="false" description="${communicationEventId}" target="../../partymgr/control/EditCommunicationEvent?communicationEventId=${communicationEventId}"/> + </field> + <field name="partyIdFrom" title="${uiLabelMap.CommonParty} ${uiLabelMap.CommonFrom}"> + <display-entity description="${firstName} ${lastName} [${partyId}]" entity-name="Person" key-field-name="partyId"/> + </field> + <field name="partyIdTo" title="${uiLabelMap.CommonParty} ${uiLabelMap.CommonTo}"> + <display-entity description="${firstName} ${lastName} [${partyId}]" entity-name="Person" key-field-name="partyId"/> + </field> + <field name="communicationEventTypeId" ><display-entity description="${description}" entity-name="CommunicationEventType" key-field-name="communicationEventTypeId"/></field> + <field name="statusId" title="${uiLabelMap.Status}"><display-entity description="${description}" entity-name="StatusItem" key-field-name="statusId"/></field> + <field name="contactMechTypeId"><display-entity description="${description}" entity-name="ContactMechType" key-field-name="contactMechTypeId"/></field> + <field name="roleTypeIdFrom"><display-entity description="${description}" entity-name="RoleType" key-field-name="roleTypeId"/></field> + <field name="roleTypeIdTo"><display-entity description="${description}" entity-name="RoleType" key-field-name="roleTypeId"/></field> + <field name="datetimeStarted" title="${uiLabelMap.CommonStartDate}"><display/></field> + <field name="datetimeEnded" title="${uiLabelMap.CommonFinishDate}"><display/></field> + <field name="deleteLink" title="Delete" widget-style="buttontext"> + <hyperlink target="removeSubscriptionCommEvent?subscriptionId=${subscriptionId}&communicationEventId=${communicationEventId}" + description="${uiLabelMap.CommonDelete}" also-hidden="false"/> + </field> + </form> + <form name="createSubscriptionCommEvent" type="single" target="createSubscriptionCommEvent" title="" + default-title-style="tableheadtext" default-widget-style="inputBox" default-tooltip-style="tabletext"> + <auto-fields-service service-name="createSubscriptionCommEvent"/> + <field name="subscriptionId"><hidden value="${parameters.subscriptionId}"/></field> + <field name="communicationEventId"> + <lookup target-form-name="LookupCommEvent"> + <sub-hyperlink target="/partymgr/control/ViewCommunicationEvent?communicationEventId=${subscription.communicationEventId}" target-type="inter-app" description="${subscription.communicationEventId}" link-style="buttontext"/> + </lookup> + </field> + <field name="submitButton" title="${uiLabelMap.CommonAdd}" widget-style="smallSubmit"><submit button-type="button"/></field> </form> </forms> Modified: incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionMenus.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionMenus.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionMenus.xml (original) +++ incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionMenus.xml Wed Nov 8 21:10:56 2006 @@ -28,6 +28,10 @@ <menu-item name="EditSubscriptionAttributes" title="${uiLabelMap.ProductSubscriptionAttributes}"> <link target="EditSubscriptionAttributes?subscriptionId=${subscriptionId}"/> </menu-item> + + <menu-item name="EditSubscriptionCommEvent" title="${uiLabelMap.ProductSubscriptionCommEvent}"> + <link target="EditSubscriptionCommEvent?subscriptionId=${subscriptionId}"/> + </menu-item> </menu> <menu name="EditSubscriptionResource" default-title-style="tabButton" default-selected-style="tabButtonSelected" default-tooltip-style="tabletext" default-widget-style="tabButton" Modified: incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionScreens.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionScreens.xml?view=diff&rev=472774&r1=472773&r2=472774 ============================================================================== --- incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionScreens.xml (original) +++ incubator/ofbiz/trunk/applications/product/widget/catalog/SubscriptionScreens.xml Wed Nov 8 21:10:56 2006 @@ -237,4 +237,26 @@ </widgets> </section> </screen> + <screen name="EditSubscriptionCommEvent"> + <section> + <actions> + <set field="titleProperty" value="PageTitleEditSubscriptionCommEvent" /> + <set field="tabButtonItem" value="EditSubscriptionCommEvent" /> + <set field="subscriptionId" from-field="parameters.subscriptionId" /> + <entity-and entity-name="SubscriptionAndCommEvent" use-cache="false" list-name="subscriptionCommEvent"> + <field-map field-name="subscriptionId" /> + </entity-and> + </actions> + <widgets> + <decorator-screen name="CommonSubscriptionDecorator"> + <decorator-section name="body"> + <include-form name="listSubscriptionCommEvent" + location="component://product/widget/catalog/SubscriptionForms.xml" /> + <include-form name="createSubscriptionCommEvent" + location="component://product/widget/catalog/SubscriptionForms.xml" /> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> </screens> |
On Nov 8, 2006, at 10:10 PM, [hidden email] wrote: > Modified: incubator/ofbiz/trunk/applications/product/entitydef/ > entitymodel.xml > URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/ > applications/product/entitydef/entitymodel.xml? > view=diff&rev=472774&r1=472773&r2=472774 > ====================================================================== > ======== > --- incubator/ofbiz/trunk/applications/product/entitydef/ > entitymodel.xml (original) > +++ incubator/ofbiz/trunk/applications/product/entitydef/ > entitymodel.xml Wed Nov 8 21:10:56 2006 > @@ -3616,7 +3616,7 @@ > <entity entity-name="Subscription" package- > name="org.ofbiz.product.subscription" title="Subscription Entity"> > <field name="subscriptionId" type="id-ne"></field> > <field name="subscriptionResourceId" type="id"></field> > - <field name="communicationEventId" type="id"></field> > + <!--field name="communicationEventId" type="id"></field-- > ><!-- now replaced by entity: SubscriptionCommEvent --> > <field name="contactMechId" type="id"></field> > <field name="originatedFromPartyId" type="id"></field> > <field name="originatedFromRoleTypeId" type="id"></field> Removing this seems a little risky to me and without services to migrate the field for existing data it's also a real pain. Have you reviewed this for these impacts and the use of this field in other parts of the code? I'm also wondering why removing this is important as it's not a big deal to have this in place along with the new stuff. -David |
Free forum by Nabble | Edit this page |