Behold the power of ExtJS grids! Muhahaha! =o)
[htsworkflow.git] / htsworkflow / frontend / static / js / htsw-inventory.js
index b275cf15ecf3a5f38749ad508553e65599f913d8..419a80fa44422d91d200c04e8d3cbc3944301a13 100644 (file)
@@ -4,8 +4,15 @@ var getInventoryDataGrid = function(){
     var Item = Ext.data.Record.create([
        { name: 'uuid' },
        { name: 'barcode_id'},
+       { name: 'model_id'},
+       { name: 'part_number'},
+       { name: 'lot_number'},
+       { name: 'vendor'},
        { name: 'creation_date'/*, type: 'date', dateFormat: 'n/j h:ia'*/},
        { name: 'modified_date'/*, type: 'date', dateFormat: 'n/j h:ia'*/},
+       { name: 'location'},
+       { name: 'status'},
+       { name: 'flowcells'},
        { name: 'type'}
     ]);
     
@@ -33,16 +40,23 @@ var getInventoryDataGrid = function(){
             url: '/inventory/data/items/',
             storeId: 'item_group_store',
             groupField: 'type',
-            sortInfo: { field: 'modified_date', direction: "ASC"},
+            sortInfo: { field: 'creation_date', direction: "DESC"},
             autoLoad: true
         }),
     
         columns: [
             {id: 'uuid', header:"UUID", width: 32, sortable: true, dataIndex: 'uuid'},
             {header: 'Barcode ID', width: 20, sortable: true, dataIndex: 'barcode_id'},
+            {header: 'Location', width: 20, sortable: true, dataIndex: 'location'},
+            {header: 'Model', width: 20, sortable: true, dataIndex: 'model_id'},
+            {header: 'Part #', width: 20, sortable: true, dataIndex: 'part_number', hidden: true},
+            {header: 'Lot #', width: 20, sortable: true, dataIndex: 'lot_number', hidden: true},
+            {header: 'Vendor', width: 20, sortable: true, dataIndex: 'vendor'},
             {header: 'Creation Date', width: 20, sortable: true, dataIndex: 'creation_date'/*, renderer: Ext.util.Format.dateRenderer('Y/m/d')*/},
-            {header: 'Modified Date', width: 20, sortable: true, dataIndex: 'modified_date'/*, renderer: Ext.util.Format.dateRenderer('Y/m/d')*/},
-            {header: 'Type', width: 20, sortable: true, dataIndex: 'type'}
+            {header: 'Modified Date', width: 20, sortable: true, dataIndex: 'modified_date', hidden: true/*, renderer: Ext.util.Format.dateRenderer('Y/m/d')*/},
+            {header: 'Status', width: 20, sortable: true, dataIndex: 'status', hidden: true},
+            {header: 'Stored Flowcells', width: 20, sortable: true, dataIndex: 'flowcells'},
+            {header: 'Type', width: 20, sortable: true, dataIndex: 'type', hidden: true}
         ],
         
         view: new Ext.grid.GroupingView({
@@ -56,7 +70,10 @@ var getInventoryDataGrid = function(){
         autoHeight: true,
         collapsible: false,
         title: "Inventory Index",
-        iconCls: 'icon-grid'
+        iconCls: 'icon-grid',
+        id: 'inventory_item_panel',
+        stateId: 'inventory_item_panel_state',
+        stateful: true,
         //renderTo: 'grid_target'
     });