[OFBiz] SVN: r4662 - in trunk: applications/party/data applications/product/entitydef applications/product/script/org/ofbiz/shipment/picklist applications/product/servicedef applications/product/webapp/facility/WEB-INF applications/product/webapp/facility/facility applications/product/widget/facility framework/common/entitydef

jonesde at svn.ofbiz.org jonesde at svn.ofbiz.org
Sat Mar 12 23:39:01 EST 2005


Author: jonesde
Date: 2005-03-12 22:38:44 -0600 (Sat, 12 Mar 2005)
New Revision: 4662

Modified:
   trunk/applications/party/data/PartyTypeData.xml
   trunk/applications/product/entitydef/entitygroup.xml
   trunk/applications/product/entitydef/entitymodel_shipment.xml
   trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml
   trunk/applications/product/servicedef/services_picklist.xml
   trunk/applications/product/webapp/facility/WEB-INF/controller.xml
   trunk/applications/product/webapp/facility/facility/PickMoveStock.ftl
   trunk/applications/product/webapp/facility/facility/PicklistManage.ftl
   trunk/applications/product/widget/facility/FacilityScreens.xml
   trunk/framework/common/entitydef/entitymodel.xml
Log:
Added more picklist functionality, most picklist change functionality is in place but still need to do the printable pick/pack report

Modified: trunk/applications/party/data/PartyTypeData.xml
===================================================================
--- trunk/applications/party/data/PartyTypeData.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/party/data/PartyTypeData.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -145,6 +145,7 @@
     <RoleType description="Other Internal" hasTable="N" parentTypeId="INTERNAL_ORGANIZATIO" roleTypeId="OTHER_INTERNAL_ORGAN"/>
     <RoleType description="Other Organization Unit" hasTable="N" parentTypeId="ORGANIZATION_UNIT" roleTypeId="OTHER_ORGANIZATION_U"/>
     <RoleType description="Packer" hasTable="N" parentTypeId="EMPLOYEE" roleTypeId="PACKER"/>
+    <RoleType description="Picker" hasTable="N" parentTypeId="EMPLOYEE" roleTypeId="PICKER"/>
     <RoleType description="Receiver" hasTable="N" parentTypeId="EMPLOYEE" roleTypeId="RECEIVER"/>
     <RoleType description="Shipment Clerk" hasTable="N" parentTypeId="EMPLOYEE" roleTypeId="SHIPMENT_CLERK"/>
     <RoleType description="Stocker" hasTable="N" parentTypeId="EMPLOYEE" roleTypeId="STOCKER"/>

Modified: trunk/applications/product/entitydef/entitygroup.xml
===================================================================
--- trunk/applications/product/entitydef/entitygroup.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/entitydef/entitygroup.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -235,6 +235,7 @@
   <!-- ========================================================= -->
 
     <entity-group group="org.ofbiz" entity="Picklist" />
+    <entity-group group="org.ofbiz" entity="PicklistAndBinAndItem" />
     <entity-group group="org.ofbiz" entity="PicklistBin" />
     <entity-group group="org.ofbiz" entity="PicklistItem" />
     <entity-group group="org.ofbiz" entity="PicklistRole" />

Modified: trunk/applications/product/entitydef/entitymodel_shipment.xml
===================================================================
--- trunk/applications/product/entitydef/entitymodel_shipment.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/entitydef/entitymodel_shipment.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -129,6 +129,7 @@
       <field name="facilityId" type="id-ne"></field>
       <field name="shipmentMethodTypeId" type="id-ne"></field>
       <field name="statusId" type="id-ne"></field>
+      <field name="picklistDate" type="date-time"></field>
       <field name="createdByUserLogin" type="id-vlong"></field>
       <field name="lastModifiedByUserLogin" type="id-vlong"></field>
       <prim-key field="picklistId"/>
@@ -138,7 +139,26 @@
       <relation type="one" fk-name="PICKLST_STTS" rel-entity-name="StatusItem">
         <key-map field-name="statusId"/>
       </relation>
+      <relation type="many" rel-entity-name="StatusValidChangeToDetail">
+        <key-map field-name="statusId"/>
+      </relation>
     </entity>
+    <view-entity entity-name="PicklistAndBinAndItem" 
+            package-name="org.ofbiz.shipment.picklist"
+            title="Picklist and PicklistBin and PicklistItem View Entity">
+      <member-entity entity-alias="PL" entity-name="Picklist"/>
+      <member-entity entity-alias="PLB" entity-name="PicklistBin"/>
+      <member-entity entity-alias="PLI" entity-name="PicklistItem"/>
+      <alias-all entity-alias="PL"/>
+      <alias-all entity-alias="PLB"/>
+      <alias-all entity-alias="PLI"/>
+      <view-link entity-alias="PL" rel-entity-alias="PLB">
+        <key-map field-name="picklistId"/>
+      </view-link>
+      <view-link entity-alias="PLB" rel-entity-alias="PLI">
+        <key-map field-name="picklistBinId"/>
+      </view-link>
+    </view-entity>
     <entity entity-name="PicklistBin"
             package-name="org.ofbiz.shipment.picklist"
             title="Picklist Entity">
@@ -201,6 +221,12 @@
         <key-map field-name="shipGroupSeqId"/>
         <key-map field-name="inventoryItemId"/>
       </relation>
+      <relation type="many" rel-entity-name="ItemIssuance">
+        <key-map field-name="orderId"/>
+        <key-map field-name="orderItemSeqId"/>
+        <key-map field-name="shipGroupSeqId"/>
+        <key-map field-name="inventoryItemId"/>
+      </relation>
     </entity>
     <entity entity-name="PicklistRole"
             package-name="org.ofbiz.shipment.picklist"

Modified: trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml
===================================================================
--- trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -118,7 +118,16 @@
                         <iterate entry-name="orderItemShipGrpInvRes" list-name="orderItemShipGrpInvResList">
                             <if-compare field-name="pickThisOrder" operator="equals" value="Y">
                                 <get-related-one value-name="orderItemShipGrpInvRes" relation-name="InventoryItem" to-value-name="inventoryItem"/>
-                                <get-related value-name="orderItemShipGrpInvRes" relation-name="PicklistItem" list-name="picklistItemList"/>
+                                <!-- We are using entity-condition instead of get-related because we want to exclude cancelled picklists -->
+                                <entity-condition entity-name="PicklistAndBinAndItem" list-name="picklistItemList">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="orderId" env-name="orderItemShipGrpInvRes.orderId"/>
+                                        <condition-expr field-name="shipGroupSeqId" env-name="orderItemShipGrpInvRes.shipGroupSeqId"/>
+                                        <condition-expr field-name="orderItemSeqId" env-name="orderItemShipGrpInvRes.orderItemSeqId"/>
+                                        <condition-expr field-name="inventoryItemId" env-name="orderItemShipGrpInvRes.inventoryItemId"/>
+                                        <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
+                                    </condition-list>
+                                </entity-condition>
                                 
                                 <!-- if all picklistItemList are not empty, don't include order as a pick candidate; keep a flag to see -->
                                 <if-empty field-name="picklistItemList">
@@ -587,6 +596,9 @@
             <string-to-field string="PICKLIST_INPUT" field-name="newEntity.statusId"/>
         </if-empty>
 
+        <!-- auto-set the picklistDate, this is not user-changeable -->        
+        <now-timestamp-to-env env-name="newEntity.picklistDate"/>
+
         <!-- set the created and lastModified info -->
         <field-to-field field-name="userLogin.userLoginId" to-field-name="newEntity.createdByUserLogin"/>
         <field-to-field field-name="userLogin.userLoginId" to-field-name="newEntity.lastModifiedByUserLogin"/>
@@ -670,6 +682,7 @@
         <make-value value-name="lookupPKMap" entity-name="PicklistBin"/>
         <set-pk-fields map-name="parameters" value-name="lookupPKMap"/>
         <find-by-primary-key map-name="lookupPKMap" value-name="lookedUpValue"/>
+        <set-nonpk-fields map-name="parameters" value-name="lookedUpValue"/>
 
         <store-value value-name="lookedUpValue"/>
     </simple-method>
@@ -706,6 +719,7 @@
         <make-value value-name="lookupPKMap" entity-name="PicklistItem"/>
         <set-pk-fields map-name="parameters" value-name="lookupPKMap"/>
         <find-by-primary-key map-name="lookupPKMap" value-name="lookedUpValue"/>
+        <set-nonpk-fields map-name="parameters" value-name="lookedUpValue"/>
 
         <store-value value-name="lookedUpValue"/>
     </simple-method>
@@ -746,6 +760,7 @@
         <make-value value-name="lookupPKMap" entity-name="PicklistRole"/>
         <set-pk-fields map-name="parameters" value-name="lookupPKMap"/>
         <find-by-primary-key map-name="lookupPKMap" value-name="lookedUpValue"/>
+        <set-nonpk-fields map-name="parameters" value-name="lookedUpValue"/>
 
         <store-value value-name="lookedUpValue"/>
     </simple-method>
@@ -773,63 +788,73 @@
                 <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_PICKED"/>
                 <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
             </condition-list>
+            <order-by field-name="picklistDate"/>
         </entity-condition>
         
         <iterate entry-name="picklist" list-name="picklistList">
-            <clear-field field-name="picklistRoleInfoList"/>
-            <get-related value-name="picklist" relation-name="PicklistRole" list-name="picklistRoleList"/>
-            <iterate entry-name="picklistRole" list-name="picklistRoleList">
-                <clear-field field-name="picklistRoleInfo"/>
-                <get-related-one value-name="picklistRole" relation-name="PartyNameView" to-value-name="picklistRoleInfo.partyNameView" use-cache="true"/>
-                <get-related-one value-name="picklistRole" relation-name="RoleType" to-value-name="picklistRoleInfo.roleType" use-cache="true"/>
-                <env-to-env env-name="picklistRole" to-env-name="picklistRoleInfo.picklistRole"/>
-                <field-to-list field-name="picklistRoleInfo" list-name="picklistRoleInfoList"/>
-            </iterate>
+            <call-simple-method method-name="getPicklistSingleDisplayInfoInline"/>
+            <field-to-list field-name="picklistInfo" list-name="picklistInfoList"/>
+        </iterate>
+        
+        <field-to-result field-name="picklistInfoList"/>
+    </simple-method>
 
-            <clear-field field-name="picklistStatusHistoryInfoList"/>
-            <get-related value-name="picklist" relation-name="PicklistStatusHistory" list-name="picklistStatusHistoryList"/>
-            <iterate entry-name="picklistStatusHistory" list-name="picklistStatusHistoryList">
-                <clear-field field-name="picklistStatusHistoryInfo"/>
-                <get-related-one value-name="picklistStatusHistory" relation-name="StatusItem" to-value-name="picklistStatusHistoryInfo.statusItem" use-cache="true"/>
-                <get-related-one value-name="picklistStatusHistory" relation-name="StatusItemTo" to-value-name="picklistStatusHistoryInfo.statusItemTo" use-cache="true"/>
-                <env-to-env env-name="picklistStatusHistory" to-env-name="picklistStatusHistoryInfo.picklistStatusHistory"/>
-                <field-to-list field-name="picklistStatusHistoryInfo" list-name="picklistStatusHistoryInfoList"/>
-            </iterate>
+    <simple-method method-name="getPicklistSingleDisplayInfoInline" short-description="getPicklistSingleDisplayInfoInline">
+        <!-- expects a picklist GenericValue to be in the context, and creates a picklistInfo Map -->
+        <clear-field field-name="picklistRoleInfoList"/>
+        <get-related value-name="picklist" relation-name="PicklistRole" list-name="picklistRoleList"/>
+        <iterate entry-name="picklistRole" list-name="picklistRoleList">
+            <clear-field field-name="picklistRoleInfo"/>
+            <get-related-one value-name="picklistRole" relation-name="PartyNameView" to-value-name="picklistRoleInfo.partyNameView" use-cache="true"/>
+            <get-related-one value-name="picklistRole" relation-name="RoleType" to-value-name="picklistRoleInfo.roleType" use-cache="true"/>
+            <env-to-env env-name="picklistRole" to-env-name="picklistRoleInfo.picklistRole"/>
+            <field-to-list field-name="picklistRoleInfo" list-name="picklistRoleInfoList"/>
+        </iterate>
 
-            <clear-field field-name="picklistBinInfoList"/>
-            <get-related value-name="picklist" relation-name="PicklistBin" list-name="picklistBinList"/>
-            <iterate entry-name="picklistBin" list-name="picklistBinList">
-                <clear-field field-name="picklistBinInfo"/>
-                <get-related-one value-name="picklistBin" relation-name="PrimaryOrderHeader" to-value-name="picklistBinInfo.primaryOrderHeader"/>
-                <get-related-one value-name="picklistBin" relation-name="PrimaryOrderItemShipGroup" to-value-name="picklistBinInfo.primaryOrderItemShipGroup"/>
+        <clear-field field-name="picklistStatusHistoryInfoList"/>
+        <get-related value-name="picklist" relation-name="PicklistStatusHistory" list-name="picklistStatusHistoryList"/>
+        <iterate entry-name="picklistStatusHistory" list-name="picklistStatusHistoryList">
+            <clear-field field-name="picklistStatusHistoryInfo"/>
+            <get-related-one value-name="picklistStatusHistory" relation-name="StatusItem" to-value-name="picklistStatusHistoryInfo.statusItem" use-cache="true"/>
+            <get-related-one value-name="picklistStatusHistory" relation-name="ToStatusItem" to-value-name="picklistStatusHistoryInfo.statusItemTo" use-cache="true"/>
+            <env-to-env env-name="picklistStatusHistory" to-env-name="picklistStatusHistoryInfo.picklistStatusHistory"/>
+            <field-to-list field-name="picklistStatusHistoryInfo" list-name="picklistStatusHistoryInfoList"/>
+        </iterate>
 
-                <clear-field field-name="picklistItemInfoList"/>
-                <get-related value-name="picklistBin" relation-name="PicklistItem" list-name="picklistItemList" use-cache="true"/>
-                <iterate entry-name="picklistItem" list-name="picklistItemList">
-                    <clear-field field-name="picklistItemInfo"/>
-                    <get-related-one value-name="picklistItem" relation-name="OrderItem" to-value-name="picklistItemInfo.orderItem"/>
-                    <get-related-one value-name="picklistItem" relation-name="InventoryItemAndLocation" to-value-name="picklistItemInfo.inventoryItemAndLocation"/>
-                    <get-related-one value-name="picklistItem" relation-name="OrderItemShipGrpInvRes" to-value-name="picklistItemInfo.orderItemShipGrpInvRes"/>
-                    <env-to-env env-name="picklistItem" to-env-name="picklistItemInfo.picklistItem"/>
-                    <field-to-list field-name="picklistItemInfo" list-name="picklistItemInfoList"/>
-                </iterate>
-                <env-to-env env-name="picklistItemInfoList" to-env-name="picklistBinInfo.picklistItemInfoList"/>
-                
-                <env-to-env env-name="picklistBin" to-env-name="picklistBinInfo.picklistBin"/>
-                <field-to-list field-name="picklistBinInfo" list-name="picklistBinInfoList"/>
+        <clear-field field-name="picklistBinInfoList"/>
+        <get-related value-name="picklist" relation-name="PicklistBin" list-name="picklistBinList"/>
+        <iterate entry-name="picklistBin" list-name="picklistBinList">
+            <clear-field field-name="picklistBinInfo"/>
+            <get-related-one value-name="picklistBin" relation-name="PrimaryOrderHeader" to-value-name="picklistBinInfo.primaryOrderHeader"/>
+            <get-related-one value-name="picklistBin" relation-name="PrimaryOrderItemShipGroup" to-value-name="picklistBinInfo.primaryOrderItemShipGroup"/>
+
+            <clear-field field-name="picklistItemInfoList"/>
+            <get-related value-name="picklistBin" relation-name="PicklistItem" list-name="picklistItemList" use-cache="true"/>
+            <iterate entry-name="picklistItem" list-name="picklistItemList">
+                <clear-field field-name="picklistItemInfo"/>
+                <get-related-one value-name="picklistItem" relation-name="OrderItem" to-value-name="picklistItemInfo.orderItem"/>
+                <get-related-one value-name="picklistItem" relation-name="InventoryItemAndLocation" to-value-name="picklistItemInfo.inventoryItemAndLocation"/>
+                <get-related-one value-name="picklistItem" relation-name="OrderItemShipGrpInvRes" to-value-name="picklistItemInfo.orderItemShipGrpInvRes"/>
+                <get-related value-name="picklistItem" relation-name="ItemIssuance" list-name="picklistItemInfo.itemIssuanceList"/>
+                <env-to-env env-name="picklistItem" to-env-name="picklistItemInfo.picklistItem"/>
+                <field-to-list field-name="picklistItemInfo" list-name="picklistItemInfoList"/>
             </iterate>
+            <env-to-env env-name="picklistItemInfoList" to-env-name="picklistBinInfo.picklistItemInfoList"/>
+            
+            <env-to-env env-name="picklistBin" to-env-name="picklistBinInfo.picklistBin"/>
+            <field-to-list field-name="picklistBinInfo" list-name="picklistBinInfoList"/>
+        </iterate>
 
-            <clear-field field-name="picklistInfo"/>
+        <clear-field field-name="picklistInfo"/>
 
-            <env-to-env env-name="picklist" to-env-name="picklistInfo.picklist"/>
-            <env-to-env env-name="picklistRoleInfoList" to-env-name="picklistInfo.picklistRoleInfoList"/>
-            <env-to-env env-name="picklistStatusHistoryInfoList" to-env-name="picklistInfo.picklistStatusHistoryInfoList"/>
-            <env-to-env env-name="picklistBinInfoList" to-env-name="picklistInfo.picklistBinInfoList"/>
-            <get-related-one value-name="picklist" relation-name="StatusItem" to-value-name="picklistInfo.statusItem" use-cache="true"/>
-            
-            <field-to-list field-name="picklistInfo" list-name="picklistInfoList"/>
-        </iterate>
-        
-        <field-to-result field-name="picklistInfoList"/>
+        <env-to-env env-name="picklist" to-env-name="picklistInfo.picklist"/>
+        <env-to-env env-name="picklistRoleInfoList" to-env-name="picklistInfo.picklistRoleInfoList"/>
+        <env-to-env env-name="picklistStatusHistoryInfoList" to-env-name="picklistInfo.picklistStatusHistoryInfoList"/>
+        <env-to-env env-name="picklistBinInfoList" to-env-name="picklistInfo.picklistBinInfoList"/>
+        <get-related-one value-name="picklist" relation-name="StatusItem" to-value-name="picklistInfo.statusItem" use-cache="true"/>
+        <get-related value-name="picklist" relation-name="StatusValidChangeToDetail" list-name="picklistInfo.statusValidChangeToDetailList"/>
     </simple-method>
+
+    <simple-method method-name="getPickAndPackReportInfo" short-description="getPickAndPackReportInfo">
+    </simple-method>
 </simple-methods>

Modified: trunk/applications/product/servicedef/services_picklist.xml
===================================================================
--- trunk/applications/product/servicedef/services_picklist.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/servicedef/services_picklist.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -35,6 +35,8 @@
         <attribute name="shipmentMethodTypeId" type="String" mode="IN" optional="true"/>
         <attribute name="pickMoveByShipmentMethodInfoList" type="List" mode="OUT" optional="true"/>
     </service>
+    
+    <!-- this old service definition is for one that used to get data for the picklist report
     <service name="getPicklistData" engine="simple"
             location="org/ofbiz/shipment/picklist/PicklistServices.xml" invoke="getPicklistData">
         <description>Gets Picklist Data</description>
@@ -47,6 +49,7 @@
         <attribute name="wrongQuantityReservedList" type="List" mode="OUT" optional="true"/>
         <attribute name="insufficientQohList" type="List" mode="OUT" optional="true"/>
     </service>
+    -->
     
     <!-- Persisted Picklist Services -->
     <service name="createPicklistFromOrders" engine="simple"
@@ -72,6 +75,7 @@
         <description>Create Picklist</description>
         <auto-attributes include="pk" mode="OUT" optional="false"/>
         <auto-attributes include="nonpk" mode="IN" optional="true">
+            <exclude field-name="picklistDate"/>
             <exclude field-name="createdByUserLogin"/>
             <exclude field-name="lastModifiedByUserLogin"/>
         </auto-attributes>
@@ -81,9 +85,11 @@
         <description>Update Picklist</description>
         <auto-attributes include="pk" mode="IN" optional="false"/>
         <auto-attributes include="nonpk" mode="IN" optional="true">
+            <exclude field-name="picklistDate"/>
             <exclude field-name="createdByUserLogin"/>
             <exclude field-name="lastModifiedByUserLogin"/>
         </auto-attributes>
+        <attribute name="oldStatusId" type="String" mode="OUT" optional="true"/>
     </service>
     <service name="deletePicklist" default-entity-name="Picklist" engine="simple"
             location="org/ofbiz/shipment/picklist/PicklistServices.xml" invoke="deletePicklist" auth="true">

Modified: trunk/applications/product/webapp/facility/WEB-INF/controller.xml
===================================================================
--- trunk/applications/product/webapp/facility/WEB-INF/controller.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/webapp/facility/WEB-INF/controller.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -494,11 +494,6 @@
         <security https="true" auth="true"/>
         <response name="success" type="view" value="PicklistOptions"/>
     </request-map>
-    <request-map uri="PicklistManage">
-        <security https="true" auth="true"/>
-        <response name="success" type="view" value="PicklistManage"/>
-    </request-map>
-
     <request-map uri="createPicklistFromOrders">
         <security https="true" auth="true"/>
         <event type="service" path="" invoke="createPicklistFromOrders"/>
@@ -506,6 +501,29 @@
         <response name="error" type="view" value="PicklistOptions"/>
     </request-map>
 
+    <request-map uri="PicklistManage">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="PicklistManage"/>
+    </request-map>
+    <request-map uri="updatePicklist">
+        <security https="true" auth="true"/>
+        <event type="service" path="" invoke="updatePicklist"/>
+        <response name="success" type="view" value="PicklistManage"/>
+        <response name="error" type="view" value="PicklistManage"/>
+    </request-map>
+    <request-map uri="createPicklistRole">
+        <security https="true" auth="true"/>
+        <event type="service" path="" invoke="createPicklistRole"/>
+        <response name="success" type="view" value="PicklistManage"/>
+        <response name="error" type="view" value="PicklistManage"/>
+    </request-map>
+    <request-map uri="updatePicklistBin">
+        <security https="true" auth="true"/>
+        <event type="service" path="" invoke="updatePicklistBin"/>
+        <response name="success" type="view" value="PicklistManage"/>
+        <response name="error" type="view" value="PicklistManage"/>
+    </request-map>
+
     <request-map uri="Picklist">
         <security https="true" auth="true"/>
         <response name="success" type="view" value="Picklist"/>

Modified: trunk/applications/product/webapp/facility/facility/PickMoveStock.ftl
===================================================================
--- trunk/applications/product/webapp/facility/facility/PickMoveStock.ftl	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/webapp/facility/facility/PickMoveStock.ftl	2005-03-13 04:38:44 UTC (rev 4662)
@@ -1,5 +1,5 @@
 <#--
- *    Copyright (c) 2003 The Open For Business Project - www.ofbiz.org
+ *    Copyright (c) 2003-2005 The Open For Business Project - www.ofbiz.org
  *
  *    Permission is hereby granted, free of charge, to any person obtaining a 
  *    copy of this software and associated documentation files (the "Software"), 

Modified: trunk/applications/product/webapp/facility/facility/PicklistManage.ftl
===================================================================
--- trunk/applications/product/webapp/facility/facility/PicklistManage.ftl	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/webapp/facility/facility/PicklistManage.ftl	2005-03-13 04:38:44 UTC (rev 4662)
@@ -20,18 +20,16 @@
  *    THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  *
  *@author         David E. Jones (jonesde at ofbiz.org)
- *@author         Andy Zeneski (jaz at ofbiz.org)
- *@author         thierry.grauss at etu.univ-tours.fr (migration to uiLabelMap)
  *@version        $Rev$
- *@since            2.2
+ *@since          3.5
 -->
 
 <div class="screenlet">
     <div class="screenlet-header">
         <div class="simple-right-half">
-            <a href="<@ofbizUrl>/PicklistOptions?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutext">${uiLabelMap.ProductPicklistOptions}</a>
-            <a href="<@ofbizUrl>/PicklistManage?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutext">${uiLabelMap.ProductPicklistManage}</a>
-            <a href="<@ofbizUrl>/PickMoveStock?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutextright">${uiLabelMap.ProductStockMoves}</a>
+            <a href="<@ofbizUrl>PicklistOptions?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutext">${uiLabelMap.ProductPicklistOptions}</a>
+            <a href="<@ofbizUrl>PicklistManage?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutext">${uiLabelMap.ProductPicklistManage}</a>
+            <a href="<@ofbizUrl>PickMoveStock?facilityId=${facilityId?if_exists}</@ofbizUrl>" class="submenutextright">${uiLabelMap.ProductStockMoves}</a>
         </div>
         <div class="boxhead">${uiLabelMap.ProductPicklistManage}</div>
     </div>
@@ -40,26 +38,52 @@
             <#list picklistInfoList as picklistInfo>
                 <#assign picklist = picklistInfo.picklist>
                 
-                <!-- display picklist -->
+                <#-- Picklist -->
                 <div class="tabletext">
-                    <b>Picklist</b> ${picklist.picklistId} 
-                    <b>in status</b> ${picklistInfo.statusItem.description} 
+                    <b>Picklist</b> <span class="head2">${picklist.picklistId}</span>
+                    <b>date</b> ${picklist.picklistDate}
+                    <form method="POST" action="<@ofbizUrl>updatePicklist</@ofbizUrl>" style="display: inline;">
+                        <input type="hidden" name="facilityId" value="${facilityId}"/>
+                        <input type="hidden" name="picklistId" value="${picklist.picklistId}"/>
+                        <select name="statusId" class="smallSelect">
+                            <option value="${picklistInfo.statusItem.statusId}" selected>${picklistInfo.statusItem.description}</option>
+                            <option value="${picklistInfo.statusItem.statusId}">---</option>
+                            <#list picklistInfo.statusValidChangeToDetailList as statusValidChangeToDetail>
+                                <option value="${statusValidChangeToDetail.statusIdTo}">${statusValidChangeToDetail.description} (${statusValidChangeToDetail.transitionName})</option>
+                            </#list>
+                        </select>
+                        <input type="submit" value="${uiLabelMap.CommonUpdate}" class="smallSubmit"/>
+                    </form>
                     <b>created/modified by</b> ${picklist.createdByUserLogin}/${picklist.lastModifiedByUserLogin}
                 </div>
                 
+                <#-- PicklistRole -->
                 <#list picklistInfo.picklistRoleInfoList?if_exists as picklistRoleInfo>
-                    <div class="tabletext">
-                        &nbsp;&nbsp;&nbsp;
+                    <div class="tabletext" style="margin-left: 15px;">
                         <b>Party</b> ${picklistRoleInfo.partyNameView.firstName?if_exists} ${picklistRoleInfo.partyNameView.middleName?if_exists} ${picklistRoleInfo.partyNameView.lastName?if_exists} ${picklistRoleInfo.partyNameView.groupName?if_exists}
                         <b>in role</b> ${picklistRoleInfo.roleType.description}
                         <b>from</b> ${picklistRoleInfo.picklistRole.fromDate}
                         <#if picklistRoleInfo.picklistRole.thruDate?exists><b>thru</b> ${picklistRoleInfo.picklistRole.thruDate}</#if>
                     </div>
                 </#list>
+                <div class="tabletext" style="margin-left: 15px;">
+                    <b>Assign Picker:</b>
+                    <form method="POST" action="<@ofbizUrl>createPicklistRole</@ofbizUrl>" style="display: inline;">
+                        <input type="hidden" name="facilityId" value="${facilityId}"/>
+                        <input type="hidden" name="picklistId" value="${picklist.picklistId}"/>
+                        <input type="hidden" name="roleTypeId" value="PICKER"/>
+                        <select name="partyId" class="smallSelect">
+                            <#list partyRoleAndPartyDetailList as partyRoleAndPartyDetail>
+                                <option value="${partyRoleAndPartyDetail.partyId}">${partyRoleAndPartyDetail.firstName?if_exists} ${partyRoleAndPartyDetail.middleName?if_exists} ${partyRoleAndPartyDetail.lastName?if_exists} ${partyRoleAndPartyDetail.groupName?if_exists} [${partyRoleAndPartyDetail.partyId}]</option>
+                            </#list>
+                        </select>
+                        <input type="submit" value="${uiLabelMap.CommonAdd}" class="smallSubmit"/>
+                    </form>
+                </div>
                 
+                <#-- PicklistStatusHistory -->
                 <#list picklistInfo.picklistStatusHistoryInfoList?if_exists as picklistStatusHistoryInfo>
-                    <div class="tabletext">
-                        &nbsp;&nbsp;&nbsp;
+                    <div class="tabletext" style="margin-left: 15px;">
                         <b>Status</b> change from ${picklistStatusHistoryInfo.statusItem.description} 
                         to ${picklistStatusHistoryInfo.statusItemTo.description} 
                         on ${picklistStatusHistoryInfo.picklistStatusHistory.changeDate} 
@@ -67,28 +91,46 @@
                     </div>
                 </#list>
  
-                <div class="tabletext">&nbsp;</div>
-                
+                <#-- PicklistBin -->
                 <#list picklistInfo.picklistBinInfoList?if_exists as picklistBinInfo>
-                    <div class="tabletext">
-                        &nbsp;&nbsp;&nbsp;
-                        <b>Bin</b> ${picklistBinInfo.picklistBin.binLocationNumber} 
+                    <div class="tabletext" style="margin-left: 15px;">
+                        <b>Bin</b> ${picklistBinInfo.picklistBin.binLocationNumber}
                         <#if picklistBinInfo.primaryOrderHeader?exists><b>Primary Order</b> ${picklistBinInfo.primaryOrderHeader.orderId}</#if>
                         <#if picklistBinInfo.primaryOrderItemShipGroup?exists><b>Primary Ship Group</b> ${picklistBinInfo.primaryOrderItemShipGroup.shipGroupSeqId}</#if>
+                        <b>Move Bin to Picklist: </b>
+	                    <form method="POST" action="<@ofbizUrl>updatePicklistBin</@ofbizUrl>" style="display: inline;">
+	                        <input type="hidden" name="facilityId" value="${facilityId}"/>
+	                        <input type="hidden" name="picklistBinId" value="${picklistBinInfo.picklistBin.picklistBinId}"/>
+	                        <select name="picklistId" class="smallSelect">
+	                            <#list picklistActiveList as picklistActive>
+	                              <#if picklistActive.picklistId != picklist.picklistId>
+	                                <#assign picklistActiveStatusItem = picklistActive.getRelatedOneCache("StatusItem")>
+	                                <option value="${picklistActive.picklistId}">${picklistActive.picklistId} [Date:${picklistActive.picklistDate},Status:${picklistActiveStatusItem.description}]</option>
+	                              </#if>
+	                            </#list>
+	                        </select>
+	                        <input type="submit" value="${uiLabelMap.CommonUpdate}" class="smallSubmit"/>
+	                    </form>
                     </div>
                     <#list picklistBinInfo.picklistItemInfoList?if_exists as picklistItemInfo>
                         <#assign picklistItem = picklistItemInfo.picklistItem>
                         <#assign inventoryItemAndLocation = picklistItemInfo.inventoryItemAndLocation>
-                        <div class="tabletext">
-                            &nbsp;&nbsp;&nbsp;
-                            &nbsp;&nbsp;&nbsp;
+                        <div class="tabletext" style="margin-left: 30px;">
                             <b>Order:Group:Item</b> ${picklistItem.orderId}:${picklistItem.shipGroupSeqId}:${picklistItem.orderItemSeqId}
                             <b>Product</b> ${picklistItemInfo.orderItem.productId}
                             <b>Inventory Item</b> ${inventoryItemAndLocation.inventoryItemId}
                             <b>Location</b> ${inventoryItemAndLocation.areaId?if_exists}-${inventoryItemAndLocation.aisleId?if_exists}-${inventoryItemAndLocation.sectionId?if_exists}-${inventoryItemAndLocation.levelId?if_exists}-${inventoryItemAndLocation.positionId?if_exists}
                             <b>Quantity</b> ${picklistItem.quantity} of ${picklistItemInfo.orderItem.quantity}
-                            <#-- picklistItem.orderItemShipGrpInvRes -->
                         </div>
+                        <#-- picklistItem.orderItemShipGrpInvRes (do we want to display any of this info?) -->
+                        <#-- picklistItemInfo.itemIssuanceList -->
+                        <#list picklistItemInfo.itemIssuanceList?if_exists as itemIssuance>
+	                        <div class="tabletext" style="margin-left: 40px;">
+	                            <b>Issued To Shipment Item:</b> ${itemIssuance.shipmentId}:${itemIssuance.shipmentItemSeqId}
+	                            <b>Quantity:</b> ${itemIssuance.quantity}
+	                            <b>Date: </b> ${itemIssuance.issuedDateTime}
+	                        </div>
+                        </#list>
                     </#list>
                 </#list>
                 
@@ -99,6 +141,5 @@
         <#else/>
             <div class="head3">${uiLabelMap.ProductNoPicksStarted}.</div>
         </#if>
-
     </div>
 </div>

Modified: trunk/applications/product/widget/facility/FacilityScreens.xml
===================================================================
--- trunk/applications/product/widget/facility/FacilityScreens.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/applications/product/widget/facility/FacilityScreens.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -106,6 +106,19 @@
                 <service service-name="getPicklistDisplayInfo">
                     <field-map env-name="facilityId"/>
                 </service>
+                
+                <entity-condition entity-name="PartyRoleAndPartyDetail" list-name="partyRoleAndPartyDetailList" use-cache="true">
+                    <condition-expr field-name="roleTypeId" value="PICKER"/>
+                </entity-condition>
+
+                <entity-condition entity-name="Picklist" list-name="picklistActiveList">
+                    <condition-list combine="and">
+                        <condition-expr field-name="facilityId" operator="equals" env-name="parameters.facilityId"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_PICKED"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
+                    </condition-list>
+                    <order-by field-name="picklistDate"/>
+                </entity-condition>
             </actions>
             <widgets>
                 <decorator-screen name="CommonFacilityDecorator">

Modified: trunk/framework/common/entitydef/entitymodel.xml
===================================================================
--- trunk/framework/common/entitydef/entitymodel.xml	2005-03-12 00:55:34 UTC (rev 4661)
+++ trunk/framework/common/entitydef/entitymodel.xml	2005-03-13 04:38:44 UTC (rev 4662)
@@ -346,14 +346,8 @@
             title="Status Valid Change To Detail View Entity">
       <member-entity entity-alias="SVC" entity-name="StatusValidChange"/>
       <member-entity entity-alias="SI" entity-name="StatusItem"/>
-      <alias entity-alias="SVC" name="statusId"/>
-      <alias entity-alias="SVC" name="statusIdTo"/>
-      <alias entity-alias="SVC" name="conditionExpression"/>
-      <alias entity-alias="SVC" name="transitionName"/>
-      <alias entity-alias="SI" name="statusTypeId"/>
-      <alias entity-alias="SI" name="statusCode"/>
-      <alias entity-alias="SI" name="sequenceId"/>
-      <alias entity-alias="SI" name="description"/>
+      <alias-all entity-alias="SVC"/>
+      <alias-all entity-alias="SI"/>
       <view-link entity-alias="SVC" rel-entity-alias="SI">
         <key-map field-name="statusIdTo" rel-field-name="statusId"/>
       </view-link>



More information about the Svn mailing list