Subversion Repositories SmartDukaan

Rev

Rev 4251 | Rev 4308 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
167 ashish 1
package in.shop2020.hotspot.dashbaord.client.inbox;
2
 
3
import in.shop2020.hotspot.dashbaord.client.inbox.InboxPresenter.Display;
4
 
5
import com.google.gwt.dom.client.Style.Unit;
6
import com.google.gwt.event.dom.client.HasClickHandlers;
7
import com.google.gwt.user.client.ui.Anchor;
8
import com.google.gwt.user.client.ui.Composite;
306 ashish 9
import com.google.gwt.user.client.ui.DockLayoutPanel;
167 ashish 10
import com.google.gwt.user.client.ui.HTML;
584 chandransh 11
import com.google.gwt.user.client.ui.Label;
167 ashish 12
import com.google.gwt.user.client.ui.SplitLayoutPanel;
13
import com.google.gwt.user.client.ui.StackLayoutPanel;
306 ashish 14
import com.google.gwt.user.client.ui.Tree;
15
import com.google.gwt.user.client.ui.TreeItem;
167 ashish 16
import com.google.gwt.user.client.ui.Widget;
17
 
18
public class InboxWidget extends Composite implements Display{
19
 
20
	private final HTML commandList = new HTML("Navigation");
21
	private final HTML messageDetails = new HTML("Message Details");
306 ashish 22
	private DockLayoutPanel dpanel = new DockLayoutPanel(Unit.EM);
167 ashish 23
	private SplitLayoutPanel sp = new SplitLayoutPanel();
534 chandransh 24
 
25
	private Tree orderTree = new Tree();
26
	private final Anchor allOrders = new Anchor("All");
3065 chandransh 27
	private final Anchor verificationPendingOrders = new Anchor("Verification Pending");
487 rajveer 28
	private final Anchor newOrders = new Anchor("Pending");
534 chandransh 29
	private final Anchor acceptedOrders = new Anchor("Accepted");
306 ashish 30
	private final Anchor billedOrders = new Anchor("Billed");
31
	private final Anchor shippedOrders = new Anchor("Shipped");
2449 chandransh 32
	private final Anchor deliveredOrders = new Anchor("Delivered");
530 chandransh 33
	private final Anchor rejectedOrders = new Anchor("Rejected");
306 ashish 34
	private final Anchor notAvailable = new Anchor("No Stock");
4248 rajveer 35
	private final Anchor cancelConfirmed = new Anchor("Cancel Confirmed");
1193 chandransh 36
	private final Anchor printPending = new Anchor("Print Pending");
2509 chandransh 37
	private final Anchor doaAwaited = new Anchor("DOA Return Awaited");
38
	private final Anchor salesReturnPending = new Anchor("Sales Return Awaited");
4113 chandransh 39
	private final Anchor searchOrders = new Anchor("Search");
2509 chandransh 40
	private final Anchor doaReturned = new Anchor("DOA Returned");
41
	private final Anchor salesReturned = new Anchor("Sales Returned");
2630 chandransh 42
	private final Anchor reshipped = new Anchor("Reshipped");
2697 chandransh 43
	private final Anchor returnOrders = new Anchor("Returns");
534 chandransh 44
 
597 chandransh 45
	private Label orderTreeHeader = new Label("Orders");
584 chandransh 46
	private Label catalogTreeHeader = new Label("Catalog");
760 chandransh 47
	private Label providerTreeHeader = new Label("Couriers");
2835 chandransh 48
	private Label purchaseTreeHeader = new Label("Purchases");
4286 rajveer 49
	private Label inventoryTreeHeader = new Label("Inventory");
760 chandransh 50
 
534 chandransh 51
	private Tree catalogTree = new Tree();
52
	private final Anchor allItems = new Anchor("All Items");
53
	private final Anchor bestSellers = new Anchor("Best Sellers");
54
	private final Anchor bestDeals = new Anchor("Best Deals");
55
	private final Anchor latestArrivals = new Anchor("Latest Arrivals");
56
 
760 chandransh 57
	private Tree providerTree = new Tree();
58
	private final Anchor allProviders = new Anchor("All Couriers");
59
 
2835 chandransh 60
	private Tree purchaseTree = new Tree();
61
	private final Anchor newPurchaseOrders = new Anchor("New POs"); 
62
	private final Anchor openPurchaseOrders = new Anchor("Open POs");
63
	private final Anchor closedPurchaseOrders = new Anchor("Closed POs");
64
 
4286 rajveer 65
	private Tree inventoryTree = new Tree();
66
	private final Anchor reportUpload = new Anchor("Upload Report");
67
 
306 ashish 68
	private final Anchor alerts = new Anchor("Alerts");
167 ashish 69
	private Widget finalWidget = null;
70
	private Widget northWidget = null;
306 ashish 71
	private TopPanel topPanel = new TopPanel();
534 chandransh 72
 
167 ashish 73
	public InboxWidget(){
534 chandransh 74
		//Prepare the order tree
75
		TreeItem orderRootItem = createOrderTree();
76
		orderTree.addItem(orderRootItem);
77
		orderTree.setWidth("200px");
3065 chandransh 78
		orderTree.setSelectedItem(orderRootItem.getChild(1)); //FIXME: 0 is the index of the pending orders. Using numbers in code is bad practice. Fix this.
534 chandransh 79
		orderTree.ensureSelectedItemVisible();
80
 
81
		//Prepare the catalogue tree
82
		TreeItem catalogRootItem = createCatalogTree();
83
		catalogTree.addItem(catalogRootItem);
84
		catalogTree.setWidth("200px");
85
		catalogTree.setSelectedItem(catalogRootItem.getChild(0)); //FIXME: 0 is the index of All Items. Using numbers in code is bad practice.
86
		catalogTree.ensureSelectedItemVisible();
760 chandransh 87
 
88
		TreeItem providerRootItem = createProviderTree();
89
		providerTree.addItem(providerRootItem);
90
		providerTree.setWidth("200px");
91
		providerTree.setSelectedItem(providerRootItem.getChild(0));
92
		providerTree.ensureSelectedItemVisible();
584 chandransh 93
 
2835 chandransh 94
		TreeItem purchaseRootItem = createPurchaseTree();
95
        providerTree.addItem(purchaseRootItem);
96
        providerTree.setWidth("200px");
97
        providerTree.setSelectedItem(purchaseRootItem.getChild(0));
98
        providerTree.ensureSelectedItemVisible();
4286 rajveer 99
 
100
        //Prepare the left panel
534 chandransh 101
		StackLayoutPanel leftPanel = new StackLayoutPanel(Unit.PX);
597 chandransh 102
		leftPanel.add(orderTree, orderTreeHeader, 25);
584 chandransh 103
		leftPanel.add(catalogTree, catalogTreeHeader, 25);
760 chandransh 104
		leftPanel.add(providerTree, providerTreeHeader, 25);
2835 chandransh 105
		//leftPanel.add(purchaseTree, purchaseTreeHeader, 25);
4286 rajveer 106
		inventoryTree.addItem(reportUpload);
107
		leftPanel.add(inventoryTree, inventoryTreeHeader, 25);
534 chandransh 108
 
4286 rajveer 109
 
534 chandransh 110
		// Prepare the lower body of dashboard with the left navigation and the
111
		// display area on the right.
112
		sp.addWest(leftPanel, 200);
113
		sp.add(messageDetails);
114
 
115
		//Prepare the complete body with the header
306 ashish 116
		dpanel.addNorth(topPanel, 5);
117
		dpanel.add(sp);
534 chandransh 118
 
167 ashish 119
		finalWidget = messageDetails;
306 ashish 120
		initWidget(dpanel);
167 ashish 121
 
122
		commandList.setHTML("<p> hi, how ae you doing buddy </p><ul><li>one<li>two<li>three</ul>");
306 ashish 123
		messageDetails.setText("");
167 ashish 124
	}
534 chandransh 125
 
126
	private TreeItem createOrderTree(){
306 ashish 127
		TreeItem root = new TreeItem("Orders");
967 chandransh 128
		//root.addItem(allOrders);
3065 chandransh 129
		root.addItem(verificationPendingOrders);
306 ashish 130
		root.addItem(newOrders);
131
		root.addItem(acceptedOrders);
132
		root.addItem(billedOrders);
133
		root.addItem(shippedOrders);
134
		root.addItem(rejectedOrders);
135
		root.addItem(notAvailable);
4251 rajveer 136
		root.addItem(cancelConfirmed);
4248 rajveer 137
		root.addItem(salesReturnPending);
2449 chandransh 138
		root.addItem(printPending);
2509 chandransh 139
		root.addItem(doaAwaited);
4113 chandransh 140
		root.addItem(searchOrders);
2449 chandransh 141
 
4248 rajveer 142
 
2697 chandransh 143
		root.addItem(returnOrders);
2630 chandransh 144
 
2449 chandransh 145
		root.addItem(deliveredOrders);
2509 chandransh 146
		root.addItem(doaReturned);
147
		root.addItem(salesReturned);
2630 chandransh 148
		root.addItem(reshipped);
306 ashish 149
		root.addItem(alerts);
2449 chandransh 150
		deliveredOrders.setVisible(false);
2509 chandransh 151
		doaReturned.setVisible(false);
152
		salesReturned.setVisible(false);
2630 chandransh 153
		reshipped.setVisible(false);
486 rajveer 154
		alerts.setVisible(false);
306 ashish 155
		return root;
156
	}
157
 
534 chandransh 158
	private TreeItem createCatalogTree(){
159
		TreeItem root = new TreeItem("Catalog");
160
		root.addItem(allItems);
161
		root.addItem(bestDeals);
162
		root.addItem(bestSellers);
163
		root.addItem(latestArrivals);
164
		return root;
165
	}
760 chandransh 166
 
167
	private TreeItem createProviderTree(){
168
		TreeItem root = new TreeItem("Courier");
169
		root.addItem(allProviders);
170
		return root;
171
	}
2835 chandransh 172
 
173
   private TreeItem createPurchaseTree(){
174
        TreeItem root = new TreeItem("Purchase Orders");
175
        root.addItem(newPurchaseOrders);
176
        root.addItem(openPurchaseOrders);
177
        root.addItem(closedPurchaseOrders);
178
        return root;
179
    }
760 chandransh 180
 
167 ashish 181
	@Override
182
	public Widget asWidget() {
183
 
184
		return this;
185
	}
186
 
187
	@Override
534 chandransh 188
	public void updateDetailsPane(Widget details) {
189
		if(finalWidget != null){
190
			sp.remove(finalWidget);
191
		}
192
		sp.add(details);
193
		finalWidget = details;
194
	}
195
 
196
	@Override
197
	public void removeDetailsPane() {
198
		updateDetailsPane(messageDetails);	
199
	}
167 ashish 200
 
201
	@Override
202
	public void updateOrderList(OrderList orderList) {
203
		if(finalWidget != null){
204
			sp.remove(finalWidget);
205
		}
206
		if(northWidget != null){
207
			sp.remove(northWidget);
208
		}
209
		sp.addNorth(orderList, 200);
210
		this.northWidget = orderList;
211
 
212
		sp.add(finalWidget);
213
	}
584 chandransh 214
 
215
	@Override
2697 chandransh 216
	public void updateReturnOrderList(ReturnOrderList retOrderList) {
217
		if(finalWidget != null){
218
			sp.remove(finalWidget);
219
		}
220
		if(northWidget != null){
221
			sp.remove(northWidget);
222
		}
223
		sp.addNorth(retOrderList, 200);
224
		this.northWidget = retOrderList;
225
 
226
		sp.add(finalWidget);
227
	}
228
 
229
	@Override
584 chandransh 230
	public void updateItemList(ItemList itemList) {
231
		if(finalWidget != null){
232
			sp.remove(finalWidget);
233
		}
234
		if(northWidget != null){
235
			sp.remove(northWidget);
236
		}
237
		sp.addNorth(itemList, 200);
238
		this.northWidget = itemList;
239
 
240
		sp.add(finalWidget);
241
	}
760 chandransh 242
 
243
	@Override
244
	public void updateProviderList(ProivderList providerList) {
245
		if(finalWidget != null){
246
			sp.remove(finalWidget);
247
		}
248
		if(northWidget != null){
249
			sp.remove(northWidget);
250
		}
251
		sp.addNorth(providerList, 200);
252
		this.northWidget = providerList;
253
 
254
		sp.add(finalWidget);		
255
	}
534 chandransh 256
 
257
	@Override
258
	public void changeGreeting(String greeting) {
259
		topPanel.changeGreeting(greeting);		
260
	}
261
 
262
	@Override
263
	public HasClickHandlers getMessageBox() {
264
		return null;
265
	}	
167 ashish 266
 
267
	@Override
268
	public HasClickHandlers getAcceptedOrdersAnchor() {
269
		return acceptedOrders;
270
	}
271
 
272
	@Override
486 rajveer 273
	public HasClickHandlers getRejectedOrdersAnchor() {
274
		return rejectedOrders;
275
	}
276
 
277
	@Override
167 ashish 278
	public HasClickHandlers getBilledOrdersAnchor() {
279
		return billedOrders;
280
	}
281
 
282
	@Override
283
	public HasClickHandlers getNewOrdersAnchor() {
284
		return newOrders;
285
	}
286
 
287
	@Override
288
	public HasClickHandlers getShippedOrdersAnchor() {
289
		return shippedOrders;
290
	}
291
 
292
	@Override
306 ashish 293
	public HasClickHandlers getSignOutLink() {
294
		return topPanel.getSignOutLink();
295
	}
296
 
297
	@Override
298
	public HasClickHandlers getAllOrdersAnchor() {
299
		return allOrders;
300
	}
301
 
302
	@Override
303
	public HasClickHandlers getAlertsAnchor() {
304
		return alerts;
305
	}
306
 
307
	@Override
308
	public HasClickHandlers getNotAvailableAnchor() {
309
		return notAvailable;
310
	}
311
 
760 chandransh 312
	@Override
4248 rajveer 313
	public HasClickHandlers getCancelConfirmedAnchor() {
314
		return cancelConfirmed;
315
	}
316
 
317
	@Override
597 chandransh 318
	public HasClickHandlers getOrdersTreeHeader(){
319
		return orderTreeHeader;
320
	}
321
 
760 chandransh 322
	@Override
597 chandransh 323
	public HasClickHandlers getAllItemsAnchor(){
324
		return allItems;
325
	}
326
 
760 chandransh 327
	@Override
597 chandransh 328
	public HasClickHandlers getBestDealsAnchor(){
329
		return bestDeals;
330
	}
331
 
760 chandransh 332
	@Override
597 chandransh 333
	public HasClickHandlers getBestSellersAnchor(){
334
		return bestSellers;
335
	}
336
 
760 chandransh 337
	@Override
597 chandransh 338
	public HasClickHandlers getLatestArrivalsAnchor(){
339
		return latestArrivals;
340
	}
341
 
760 chandransh 342
	@Override
584 chandransh 343
	public HasClickHandlers getCatalogTreeHeader(){
344
		return catalogTreeHeader;
345
	}
346
 
760 chandransh 347
	@Override
348
	public HasClickHandlers getProviderTreeHeader(){
349
		return providerTreeHeader;
350
	}
351
 
352
	@Override
353
	public HasClickHandlers getAllProvidersAnchor(){
354
		return allProviders;
355
	}
1193 chandransh 356
 
357
	@Override
358
	public HasClickHandlers getPrintPendingAnchor() {
359
		return printPending;
360
	}
2449 chandransh 361
 
362
	@Override
363
	public HasClickHandlers getDeliveredOrdersAnchor(){
364
		return deliveredOrders;
365
	}
366
 
367
	public void enableAdminControls(){
368
		deliveredOrders.setVisible(true);
2509 chandransh 369
		doaReturned.setVisible(true);
370
		salesReturned.setVisible(true);
2630 chandransh 371
		reshipped.setVisible(true);
2449 chandransh 372
	}
2509 chandransh 373
 
374
	@Override
375
	public HasClickHandlers getDoaAwaitedAnchor() {
376
		return doaAwaited;
377
	}
378
 
379
	@Override
380
	public HasClickHandlers getDoaReturnedAnchor() {
381
		return doaReturned;
382
	}
383
 
384
	@Override
385
	public HasClickHandlers getSalesReturnPendingAnchor() {
386
		return salesReturnPending;
387
	}
388
 
389
	@Override
390
	public HasClickHandlers getSalesReturnedAnchor() {
391
		return salesReturned;
392
	}
2630 chandransh 393
 
394
	@Override
395
	public HasClickHandlers getReshippedAnchor() {
396
		return reshipped;
397
	}
2697 chandransh 398
 
399
	@Override
400
	public HasClickHandlers getReturnOrdersAnchor(){
401
		return returnOrders;
402
	}
2835 chandransh 403
 
404
    @Override
405
    public HasClickHandlers getPurchaseTreeHeader() {
406
        return purchaseTreeHeader;
407
    }
408
 
409
    @Override
410
    public HasClickHandlers getNewPurchaseOrdersAnchor() {
411
        return newPurchaseOrders;
412
    }
413
 
414
    @Override
415
    public HasClickHandlers getOpenPurchaseOrdersAnchor() {
416
        return openPurchaseOrders;
417
    }
418
 
419
    @Override
420
    public HasClickHandlers getClosedPurchaseOrdersAnchor() {
421
        return closedPurchaseOrders;
422
    }
3065 chandransh 423
 
424
    @Override
425
    public HasClickHandlers getVerificationPendingOrdersAnchor() {
426
        return verificationPendingOrders;
427
    }
4113 chandransh 428
 
429
    @Override
430
    public HasClickHandlers getSearchOrdersAnchor() {
431
        return searchOrders;
432
    }
4248 rajveer 433
 
4286 rajveer 434
	@Override
435
	public HasClickHandlers getReportUploadAnchor() {
436
		return reportUpload;
437
	}
167 ashish 438
}