Subversion Repositories SmartDukaan

Rev

Rev 1992 | Rev 2066 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1992 Rev 2027
Line 23... Line 23...
23
public class ItemList extends ResizeComposite{
23
public class ItemList extends ResizeComposite{
24
 
24
 
25
    public static final int VISIBLE_ITEMS_COUNT = 10;
25
    public static final int VISIBLE_ITEMS_COUNT = 10;
26
    
26
    
27
    public interface Listener {
27
    public interface Listener {
28
        void onItemSelected(Item item);
28
        void onItemSelected(long itemId);
29
      }
29
      }
30
    
30
    
31
    Map<Long, Item> itemsMap = new HashMap<Long, Item>();
31
    //Map<Long, Item> itemsMap = new HashMap<Long, Item>();
32
    
32
    
33
    private final CatalogServiceAsync catalogService = GWT.create(CatalogService.class);
33
    private final CatalogServiceAsync catalogService = GWT.create(CatalogService.class);
34
    
34
    
35
    interface ItemListUiBinder extends UiBinder<Widget, ItemList> { }
35
    interface ItemListUiBinder extends UiBinder<Widget, ItemList> { }
36
    private static final ItemListUiBinder uiBinder = GWT.create(ItemListUiBinder.class);
36
    private static final ItemListUiBinder uiBinder = GWT.create(ItemListUiBinder.class);
Line 61... Line 61...
61
        //updateItemDescriptionTable(items);
61
        //updateItemDescriptionTable(items);
62
    }
62
    }
63
    
63
    
64
    private void initHeader(){
64
    private void initHeader(){
65
        // Initialize the header.
65
        // Initialize the header.
66
        header.getColumnFormatter().setWidth(0, "128px");
66
        header.getColumnFormatter().setWidth(0, "80px");
67
        header.getColumnFormatter().setWidth(1, "128px");
67
        header.getColumnFormatter().setWidth(1, "128px");
68
        header.getColumnFormatter().setWidth(2, "200px");
68
        header.getColumnFormatter().setWidth(2, "150px");
69
        header.getColumnFormatter().setWidth(3, "200px");
69
        header.getColumnFormatter().setWidth(3, "200px");
70
        header.getColumnFormatter().setWidth(4, "200px");
70
        header.getColumnFormatter().setWidth(4, "200px");
71
        header.getColumnFormatter().setWidth(5, "128px");
71
        header.getColumnFormatter().setWidth(5, "128px");
72
        header.getColumnFormatter().setWidth(6, "128px");
72
        header.getColumnFormatter().setWidth(6, "220px");
73
 
73
 
74
        header.setText(0, 0, "Item Id");
74
        header.setText(0, 0, "Item Id");
75
        header.setText(0, 1, "Product Group");
75
        header.setText(0, 1, "Product Group");
76
        header.setText(0, 2, "Brand");
76
        header.setText(0, 2, "Brand");
77
        header.setText(0, 3, "Model Number");
77
        header.setText(0, 3, "Model Number");
78
        header.setText(0, 4, "Model Name");
78
        header.setText(0, 4, "Model Name");
79
        header.setText(0, 5, "MRP");
79
        header.setText(0, 5, "Color");
80
        header.setText(0, 6, "Category");
80
        header.setText(0, 6, "Category");
81
    }
81
    }
82
    
82
    
83
    private void updateItemDescriptionTable(List<Item> items){
83
    private void updateItemDescriptionTable(List<Item> items){
-
 
84
        itemDescriptionTable.removeAllRows();
84
        itemDescriptionTable.getColumnFormatter().setWidth(0, "128px");
85
        itemDescriptionTable.getColumnFormatter().setWidth(0, "80px");
85
        itemDescriptionTable.getColumnFormatter().setWidth(1, "128px");
86
        itemDescriptionTable.getColumnFormatter().setWidth(1, "128px");
86
        itemDescriptionTable.getColumnFormatter().setWidth(2, "200px");
87
        itemDescriptionTable.getColumnFormatter().setWidth(2, "150px");
87
        itemDescriptionTable.getColumnFormatter().setWidth(3, "200px");
88
        itemDescriptionTable.getColumnFormatter().setWidth(3, "200px");
88
        itemDescriptionTable.getColumnFormatter().setWidth(4, "200px");
89
        itemDescriptionTable.getColumnFormatter().setWidth(4, "200px");
89
        itemDescriptionTable.getColumnFormatter().setWidth(5, "128px");
90
        itemDescriptionTable.getColumnFormatter().setWidth(5, "128px");
90
        itemDescriptionTable.getColumnFormatter().setWidth(6, "128px");
91
        itemDescriptionTable.getColumnFormatter().setWidth(6, "220px");
91
        
92
        
92
        int i=0;
93
        int i=0;
93
        for(final Item item : items){
94
        for(final Item item : items){
94
            itemsMap.put(item.getId(), item);
95
            //itemsMap.put(item.getId(), item);
95
            int col = 0;
96
            int col = 0;
96
            itemDescriptionTable.setText(i, col++, item.getId() + "");
97
            itemDescriptionTable.setText(i, col++, item.getId() + "");
97
            itemDescriptionTable.setText(i, col++, item.getProductGroup());
98
            itemDescriptionTable.setText(i, col++, item.getProductGroup());
98
            itemDescriptionTable.setText(i, col++, item.getBrand());
99
            itemDescriptionTable.setText(i, col++, item.getBrand());
99
            itemDescriptionTable.setText(i, col++, item.getModelNumber());
100
            itemDescriptionTable.setText(i, col++, item.getModelNumber());
100
            itemDescriptionTable.setText(i, col++, item.getModelName());
101
            itemDescriptionTable.setText(i, col++, item.getModelName());
101
            itemDescriptionTable.setText(i, col++, item.getMrp()+"");
102
            itemDescriptionTable.setText(i, col++, item.getColor());
102
            itemDescriptionTable.setText(i, col++, item.getCategory()+"");
103
            itemDescriptionTable.setText(i, col++, item.getCategory()+"");
103
            i++;
104
            i++;
104
        }
105
        }
105
    }
106
    }
106
    
107
    
Line 112... Line 113...
112
    void onClick(ClickEvent event) {
113
    void onClick(ClickEvent event) {
113
        Cell cell = itemDescriptionTable.getCellForEvent(event);
114
        Cell cell = itemDescriptionTable.getCellForEvent(event);
114
        int newRowIndex = cell.getRowIndex();
115
        int newRowIndex = cell.getRowIndex();
115
        selectRow(newRowIndex);
116
        selectRow(newRowIndex);
116
        String itemId = itemDescriptionTable.getText(newRowIndex, 0);
117
        String itemId = itemDescriptionTable.getText(newRowIndex, 0);
117
        Window.alert("Item id = " + itemId);
-
 
118
 
-
 
119
        listener.onItemSelected(itemsMap.get(Long.parseLong(itemId)));
118
        listener.onItemSelected(Long.parseLong(itemId));
120
    }
119
    }
121
 
120
 
122
    private void selectRow(int row) {
121
    private void selectRow(int row) {
123
        String style = selectionStyle.selectedRow();
122
        String style = selectionStyle.selectedRow();
124
        if(selectedRow != -1){
123
        if(selectedRow != -1){
Line 129... Line 128...
129
        selectedRow = row;
128
        selectedRow = row;
130
    }
129
    }
131
    
130
    
132
    private void loadDummyItems() {
131
    private void loadDummyItems() {
133
        
132
        
134
        Item i = new Item(1, "Handset", "Spice", "mi310", "phone", "White", 2, "comments", 1, 1, 
133
        Item i = new Item(1, "Handset", "Spice", "mi310", "phone", "White", 324, "comments", 1, 1, 
135
                "", 3000.50, 3000.00, 3000, 3000, 12, 12345, 12345, 12345, 12345, "status", null, "best", 2990, null, null);
134
                "", 3000.50, 3000.00, 3000, 3000, 12, 12345, 12345, 12345, 12345, "status", null, "best", 2990, null, null);
136
        List<Item> items = new ArrayList<Item>();
135
        List<Item> items = new ArrayList<Item>();
137
        items.add(i);
136
        items.add(i);
138
        this.items = items;
137
        this.items = items;
139
        itemsMap.put(i.getId(), i);
138
        //itemsMap.put(i.getId(), i);
140
        
139
        
141
    }
140
    }
142
    
141
    
143
    public void loadAllItems() {
142
    public void loadAllItems() {
144
        catalogService.getAllItems(new AsyncCallback<List<Item>>() {
143
        catalogService.getAllItems(new AsyncCallback<List<Item>>() {
145
            public void onFailure(Throwable caught) {
144
            public void onFailure(Throwable caught) {
146
                Window.alert("Could not get all items...");
145
                Window.alert("Could not get all items...");
147
            }
146
            }
148
            public void onSuccess(List<Item> result) {
147
            public void onSuccess(List<Item> result) {
149
                itemsMap.clear();
-
 
150
                updateItemDescriptionTable(result);
148
                updateItemDescriptionTable(result);
151
                //setItems(result);
149
                //setItems(result);
152
            }
150
            }
153
        });
151
        });
154
    }
152
    }
Line 157... Line 155...
157
        catalogService.getBestDeals(new AsyncCallback<List<Item>>() {
155
        catalogService.getBestDeals(new AsyncCallback<List<Item>>() {
158
            public void onFailure(Throwable caught) {
156
            public void onFailure(Throwable caught) {
159
                Window.alert("Could not load best deals.");
157
                Window.alert("Could not load best deals.");
160
            }
158
            }
161
            public void onSuccess(List<Item> result) {
159
            public void onSuccess(List<Item> result) {
162
                itemsMap.clear();
-
 
163
                updateItemDescriptionTable(result);
160
                updateItemDescriptionTable(result);
164
                //setItems(result);
161
                //setItems(result);
165
            }
162
            }
166
        });
163
        });
167
    }
164
    }
Line 170... Line 167...
170
        catalogService.getLatestArrivals(new AsyncCallback<List<Item>>() {
167
        catalogService.getLatestArrivals(new AsyncCallback<List<Item>>() {
171
            public void onFailure(Throwable caught) {
168
            public void onFailure(Throwable caught) {
172
                Window.alert("Could not load latest arrivals.");
169
                Window.alert("Could not load latest arrivals.");
173
            }
170
            }
174
            public void onSuccess(List<Item> result) {
171
            public void onSuccess(List<Item> result) {
175
                itemsMap.clear();
-
 
176
                updateItemDescriptionTable(result);
172
                updateItemDescriptionTable(result);
177
                //setItems(result);
173
                //setItems(result);
178
            }
174
            }
179
        });
175
        });
180
    }
176
    }
Line 183... Line 179...
183
        catalogService.getBestSellers(new AsyncCallback<List<Item>>() {
179
        catalogService.getBestSellers(new AsyncCallback<List<Item>>() {
184
            public void onFailure(Throwable caught) {
180
            public void onFailure(Throwable caught) {
185
                Window.alert("Could not load best sellers.");
181
                Window.alert("Could not load best sellers.");
186
            }
182
            }
187
            public void onSuccess(List<Item> result) {
183
            public void onSuccess(List<Item> result) {
188
                itemsMap.clear();
-
 
189
                updateItemDescriptionTable(result);
184
                updateItemDescriptionTable(result);
190
                //setItems(result);
185
                //setItems(result);
191
            }
186
            }
192
        });
187
        });
193
    }
188
    }
194
    
189
    
195
    void setItems(List<Item> items) {
-
 
196
        this.items = items;
-
 
197
    }
-
 
198
    
-
 
199
}
190
}