Rev 4251 | Rev 4308 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.hotspot.dashbaord.client.inbox;import in.shop2020.hotspot.dashbaord.client.inbox.InboxPresenter.Display;import com.google.gwt.dom.client.Style.Unit;import com.google.gwt.event.dom.client.HasClickHandlers;import com.google.gwt.user.client.ui.Anchor;import com.google.gwt.user.client.ui.Composite;import com.google.gwt.user.client.ui.DockLayoutPanel;import com.google.gwt.user.client.ui.HTML;import com.google.gwt.user.client.ui.Label;import com.google.gwt.user.client.ui.SplitLayoutPanel;import com.google.gwt.user.client.ui.StackLayoutPanel;import com.google.gwt.user.client.ui.Tree;import com.google.gwt.user.client.ui.TreeItem;import com.google.gwt.user.client.ui.Widget;public class InboxWidget extends Composite implements Display{private final HTML commandList = new HTML("Navigation");private final HTML messageDetails = new HTML("Message Details");private DockLayoutPanel dpanel = new DockLayoutPanel(Unit.EM);private SplitLayoutPanel sp = new SplitLayoutPanel();private Tree orderTree = new Tree();private final Anchor allOrders = new Anchor("All");private final Anchor verificationPendingOrders = new Anchor("Verification Pending");private final Anchor newOrders = new Anchor("Pending");private final Anchor acceptedOrders = new Anchor("Accepted");private final Anchor billedOrders = new Anchor("Billed");private final Anchor shippedOrders = new Anchor("Shipped");private final Anchor deliveredOrders = new Anchor("Delivered");private final Anchor rejectedOrders = new Anchor("Rejected");private final Anchor notAvailable = new Anchor("No Stock");private final Anchor cancelConfirmed = new Anchor("Cancel Confirmed");private final Anchor printPending = new Anchor("Print Pending");private final Anchor doaAwaited = new Anchor("DOA Return Awaited");private final Anchor salesReturnPending = new Anchor("Sales Return Awaited");private final Anchor searchOrders = new Anchor("Search");private final Anchor doaReturned = new Anchor("DOA Returned");private final Anchor salesReturned = new Anchor("Sales Returned");private final Anchor reshipped = new Anchor("Reshipped");private final Anchor returnOrders = new Anchor("Returns");private Label orderTreeHeader = new Label("Orders");private Label catalogTreeHeader = new Label("Catalog");private Label providerTreeHeader = new Label("Couriers");private Label purchaseTreeHeader = new Label("Purchases");private Label inventoryTreeHeader = new Label("Inventory");private Tree catalogTree = new Tree();private final Anchor allItems = new Anchor("All Items");private final Anchor bestSellers = new Anchor("Best Sellers");private final Anchor bestDeals = new Anchor("Best Deals");private final Anchor latestArrivals = new Anchor("Latest Arrivals");private Tree providerTree = new Tree();private final Anchor allProviders = new Anchor("All Couriers");private Tree purchaseTree = new Tree();private final Anchor newPurchaseOrders = new Anchor("New POs");private final Anchor openPurchaseOrders = new Anchor("Open POs");private final Anchor closedPurchaseOrders = new Anchor("Closed POs");private Tree inventoryTree = new Tree();private final Anchor reportUpload = new Anchor("Upload Report");private final Anchor alerts = new Anchor("Alerts");private Widget finalWidget = null;private Widget northWidget = null;private TopPanel topPanel = new TopPanel();public InboxWidget(){//Prepare the order treeTreeItem orderRootItem = createOrderTree();orderTree.addItem(orderRootItem);orderTree.setWidth("200px");orderTree.setSelectedItem(orderRootItem.getChild(1)); //FIXME: 0 is the index of the pending orders. Using numbers in code is bad practice. Fix this.orderTree.ensureSelectedItemVisible();//Prepare the catalogue treeTreeItem catalogRootItem = createCatalogTree();catalogTree.addItem(catalogRootItem);catalogTree.setWidth("200px");catalogTree.setSelectedItem(catalogRootItem.getChild(0)); //FIXME: 0 is the index of All Items. Using numbers in code is bad practice.catalogTree.ensureSelectedItemVisible();TreeItem providerRootItem = createProviderTree();providerTree.addItem(providerRootItem);providerTree.setWidth("200px");providerTree.setSelectedItem(providerRootItem.getChild(0));providerTree.ensureSelectedItemVisible();TreeItem purchaseRootItem = createPurchaseTree();providerTree.addItem(purchaseRootItem);providerTree.setWidth("200px");providerTree.setSelectedItem(purchaseRootItem.getChild(0));providerTree.ensureSelectedItemVisible();//Prepare the left panelStackLayoutPanel leftPanel = new StackLayoutPanel(Unit.PX);leftPanel.add(orderTree, orderTreeHeader, 25);leftPanel.add(catalogTree, catalogTreeHeader, 25);leftPanel.add(providerTree, providerTreeHeader, 25);//leftPanel.add(purchaseTree, purchaseTreeHeader, 25);inventoryTree.addItem(reportUpload);leftPanel.add(inventoryTree, inventoryTreeHeader, 25);// Prepare the lower body of dashboard with the left navigation and the// display area on the right.sp.addWest(leftPanel, 200);sp.add(messageDetails);//Prepare the complete body with the headerdpanel.addNorth(topPanel, 5);dpanel.add(sp);finalWidget = messageDetails;initWidget(dpanel);commandList.setHTML("<p> hi, how ae you doing buddy </p><ul><li>one<li>two<li>three</ul>");messageDetails.setText("");}private TreeItem createOrderTree(){TreeItem root = new TreeItem("Orders");//root.addItem(allOrders);root.addItem(verificationPendingOrders);root.addItem(newOrders);root.addItem(acceptedOrders);root.addItem(billedOrders);root.addItem(shippedOrders);root.addItem(rejectedOrders);root.addItem(notAvailable);root.addItem(cancelConfirmed);root.addItem(salesReturnPending);root.addItem(printPending);root.addItem(doaAwaited);root.addItem(searchOrders);root.addItem(returnOrders);root.addItem(deliveredOrders);root.addItem(doaReturned);root.addItem(salesReturned);root.addItem(reshipped);root.addItem(alerts);deliveredOrders.setVisible(false);doaReturned.setVisible(false);salesReturned.setVisible(false);reshipped.setVisible(false);alerts.setVisible(false);return root;}private TreeItem createCatalogTree(){TreeItem root = new TreeItem("Catalog");root.addItem(allItems);root.addItem(bestDeals);root.addItem(bestSellers);root.addItem(latestArrivals);return root;}private TreeItem createProviderTree(){TreeItem root = new TreeItem("Courier");root.addItem(allProviders);return root;}private TreeItem createPurchaseTree(){TreeItem root = new TreeItem("Purchase Orders");root.addItem(newPurchaseOrders);root.addItem(openPurchaseOrders);root.addItem(closedPurchaseOrders);return root;}@Overridepublic Widget asWidget() {return this;}@Overridepublic void updateDetailsPane(Widget details) {if(finalWidget != null){sp.remove(finalWidget);}sp.add(details);finalWidget = details;}@Overridepublic void removeDetailsPane() {updateDetailsPane(messageDetails);}@Overridepublic void updateOrderList(OrderList orderList) {if(finalWidget != null){sp.remove(finalWidget);}if(northWidget != null){sp.remove(northWidget);}sp.addNorth(orderList, 200);this.northWidget = orderList;sp.add(finalWidget);}@Overridepublic void updateReturnOrderList(ReturnOrderList retOrderList) {if(finalWidget != null){sp.remove(finalWidget);}if(northWidget != null){sp.remove(northWidget);}sp.addNorth(retOrderList, 200);this.northWidget = retOrderList;sp.add(finalWidget);}@Overridepublic void updateItemList(ItemList itemList) {if(finalWidget != null){sp.remove(finalWidget);}if(northWidget != null){sp.remove(northWidget);}sp.addNorth(itemList, 200);this.northWidget = itemList;sp.add(finalWidget);}@Overridepublic void updateProviderList(ProivderList providerList) {if(finalWidget != null){sp.remove(finalWidget);}if(northWidget != null){sp.remove(northWidget);}sp.addNorth(providerList, 200);this.northWidget = providerList;sp.add(finalWidget);}@Overridepublic void changeGreeting(String greeting) {topPanel.changeGreeting(greeting);}@Overridepublic HasClickHandlers getMessageBox() {return null;}@Overridepublic HasClickHandlers getAcceptedOrdersAnchor() {return acceptedOrders;}@Overridepublic HasClickHandlers getRejectedOrdersAnchor() {return rejectedOrders;}@Overridepublic HasClickHandlers getBilledOrdersAnchor() {return billedOrders;}@Overridepublic HasClickHandlers getNewOrdersAnchor() {return newOrders;}@Overridepublic HasClickHandlers getShippedOrdersAnchor() {return shippedOrders;}@Overridepublic HasClickHandlers getSignOutLink() {return topPanel.getSignOutLink();}@Overridepublic HasClickHandlers getAllOrdersAnchor() {return allOrders;}@Overridepublic HasClickHandlers getAlertsAnchor() {return alerts;}@Overridepublic HasClickHandlers getNotAvailableAnchor() {return notAvailable;}@Overridepublic HasClickHandlers getCancelConfirmedAnchor() {return cancelConfirmed;}@Overridepublic HasClickHandlers getOrdersTreeHeader(){return orderTreeHeader;}@Overridepublic HasClickHandlers getAllItemsAnchor(){return allItems;}@Overridepublic HasClickHandlers getBestDealsAnchor(){return bestDeals;}@Overridepublic HasClickHandlers getBestSellersAnchor(){return bestSellers;}@Overridepublic HasClickHandlers getLatestArrivalsAnchor(){return latestArrivals;}@Overridepublic HasClickHandlers getCatalogTreeHeader(){return catalogTreeHeader;}@Overridepublic HasClickHandlers getProviderTreeHeader(){return providerTreeHeader;}@Overridepublic HasClickHandlers getAllProvidersAnchor(){return allProviders;}@Overridepublic HasClickHandlers getPrintPendingAnchor() {return printPending;}@Overridepublic HasClickHandlers getDeliveredOrdersAnchor(){return deliveredOrders;}public void enableAdminControls(){deliveredOrders.setVisible(true);doaReturned.setVisible(true);salesReturned.setVisible(true);reshipped.setVisible(true);}@Overridepublic HasClickHandlers getDoaAwaitedAnchor() {return doaAwaited;}@Overridepublic HasClickHandlers getDoaReturnedAnchor() {return doaReturned;}@Overridepublic HasClickHandlers getSalesReturnPendingAnchor() {return salesReturnPending;}@Overridepublic HasClickHandlers getSalesReturnedAnchor() {return salesReturned;}@Overridepublic HasClickHandlers getReshippedAnchor() {return reshipped;}@Overridepublic HasClickHandlers getReturnOrdersAnchor(){return returnOrders;}@Overridepublic HasClickHandlers getPurchaseTreeHeader() {return purchaseTreeHeader;}@Overridepublic HasClickHandlers getNewPurchaseOrdersAnchor() {return newPurchaseOrders;}@Overridepublic HasClickHandlers getOpenPurchaseOrdersAnchor() {return openPurchaseOrders;}@Overridepublic HasClickHandlers getClosedPurchaseOrdersAnchor() {return closedPurchaseOrders;}@Overridepublic HasClickHandlers getVerificationPendingOrdersAnchor() {return verificationPendingOrders;}@Overridepublic HasClickHandlers getSearchOrdersAnchor() {return searchOrders;}@Overridepublic HasClickHandlers getReportUploadAnchor() {return reportUpload;}}