Subversion Repositories SmartDukaan

Rev

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

Rev 4658 Rev 5110
Line 1... Line 1...
1
package in.shop2020.hotspot.dashbaord.client.inbox;
1
package in.shop2020.hotspot.dashbaord.client.inbox;
2
 
2
 
3
import java.util.Map;
-
 
4
import java.util.Map.Entry;
-
 
5
 
-
 
6
import in.shop2020.hotspot.dashbaord.client.event.AddJacketNumberEvent;
3
import in.shop2020.hotspot.dashbaord.client.event.AddJacketNumberEvent;
7
import in.shop2020.hotspot.dashbaord.shared.actions.BillingType;
4
import in.shop2020.hotspot.dashbaord.shared.actions.BillingType;
8
import in.shop2020.hotspot.dashbaord.shared.actions.Order;
5
import in.shop2020.hotspot.dashbaord.shared.actions.Order;
9
 
6
 
-
 
7
import java.util.Map;
-
 
8
import java.util.Map.Entry;
-
 
9
 
10
import org.enunes.gwt.mvp.client.EventBus;
10
import org.enunes.gwt.mvp.client.EventBus;
11
 
11
 
12
import com.google.gwt.event.dom.client.ClickEvent;
12
import com.google.gwt.event.dom.client.ClickEvent;
13
import com.google.gwt.event.dom.client.ClickHandler;
13
import com.google.gwt.event.dom.client.ClickHandler;
14
import com.google.gwt.user.client.ui.Button;
14
import com.google.gwt.user.client.ui.Button;
Line 21... Line 21...
21
import com.google.gwt.user.client.ui.Widget;
21
import com.google.gwt.user.client.ui.Widget;
22
 
22
 
23
public class JacketInfoBox extends DialogBox {
23
public class JacketInfoBox extends DialogBox {
24
	private Label errorLabel = new Label("");
24
	private Label errorLabel = new Label("");
25
	
25
	
-
 
26
	private Label warehousePickSuggestion = new Label("");
26
	private Label jacketNumberLabel = new Label("Jacket Number");
27
	private Label jacketNumberLabel = new Label("Jacket Number");
27
	private TextBox jacketNumberBox = new TextBox();
28
	private TextBox jacketNumberBox = new TextBox();
28
	
29
	
29
	private Label itemNumberLabel = new Label("Item Number");
30
	private Label itemNumberLabel = new Label("Item Number");
30
	private TextBox itemNumberBox = new TextBox();
31
	private TextBox itemNumberBox = new TextBox();
Line 32... Line 33...
32
	private Label serialNumberLabel = new Label("Serial No.");
33
	private Label serialNumberLabel = new Label("Serial No.");
33
	private TextBox serialNumberBox = new TextBox();
34
	private TextBox serialNumberBox = new TextBox();
34
	
35
	
35
	private Label billedBy = new Label("Billed by");
36
	private Label billedBy = new Label("Billed by");
36
	
37
	
37
    private Label vendorLabel = new Label("Vendor");
38
    private Label warehouseLabel = new Label("Warehouse");
38
    private ListBox vendorBox = new ListBox();
39
    private ListBox warehouseBox = new ListBox();
39
 
40
 
40
    
41
    
41
	private Button submitbutton = new Button("Submit");
42
	private Button submitbutton = new Button("Submit");
42
	private VerticalPanel vpanel = new VerticalPanel();
43
	private VerticalPanel vpanel = new VerticalPanel();
43
 
44
 
44
	
45
	
45
	public JacketInfoBox(final EventBus eventBus, final Order order, final String user, final BillingType billingType, Map<Long, String> vendors){
46
	public JacketInfoBox(final EventBus eventBus, final Order order, final String user,
-
 
47
	        final BillingType billingType, Map<Long, String> warehouses){
46
		vpanel.add(errorLabel);
48
		vpanel.add(errorLabel);
-
 
49
		if (order.getPickFromWarehouse() != null) {
-
 
50
		    warehousePickSuggestion.setText("Pick from WH: " + order.getPickFromWarehouse());
-
 
51
		}
-
 
52
 
47
		vpanel.add(getHorizontalPanel(jacketNumberLabel, jacketNumberBox));      //Ask for the jacket number
53
		vpanel.add(getHorizontalPanel(jacketNumberLabel, jacketNumberBox));      //Ask for the jacket number
48
		if(billingType == BillingType.OURS){
54
		if(billingType == BillingType.OURS){
-
 
55
		    // Check if we need to suggest Hotspot warehouses ?
-
 
56
	        vpanel.add(warehousePickSuggestion);		    
49
            vpanel.add(getHorizontalPanel(itemNumberLabel, itemNumberBox));          //Ask for the item number
57
            vpanel.add(getHorizontalPanel(itemNumberLabel, itemNumberBox));          //Ask for the item number
50
            if("Handsets".equalsIgnoreCase(order.getProductGroup())) {
58
            if(order.isSerialized()) {
51
                vpanel.add(getHorizontalPanel(serialNumberLabel, serialNumberBox));      //Ask for Serial number only in case of Handsets
59
                vpanel.add(getHorizontalPanel(serialNumberLabel, serialNumberBox));      //Ask for Serial number only in case of Handsets
52
            }
60
            }
-
 
61
            else {
-
 
62
                for(Entry<Long, String> warehouse: warehouses.entrySet()){
-
 
63
                    warehouseBox.addItem(warehouse.getValue(), warehouse.getKey()+"");
-
 
64
                }
-
 
65
 
-
 
66
                vpanel.add(getHorizontalPanel(warehouseLabel, warehouseBox));                
-
 
67
            }
53
		}
68
		}
54
		
69
		
55
		for(Entry<Long, String> vendor: vendors.entrySet()){
-
 
56
			vendorBox.addItem(vendor.getValue(), vendor.getKey()+"");
-
 
57
		}
-
 
58
		vpanel.add(getHorizontalPanel(vendorLabel, vendorBox));
-
 
59
		
-
 
60
		
-
 
61
		vpanel.add(getHorizontalPanel(billedBy, new Label(user)));
70
		vpanel.add(getHorizontalPanel(billedBy, new Label(user)));
62
		vpanel.add(submitbutton);
71
		vpanel.add(submitbutton);
63
		
72
		
64
		setWidget(vpanel);
73
		setWidget(vpanel);
65
		setAutoHideEnabled(true);
74
		setAutoHideEnabled(true);
Line 85... Line 94...
85
				
94
				
86
				if(jacketNumber <= 0){
95
				if(jacketNumber <= 0){
87
					errorLabel.setText("Invalid Jacket number.");
96
					errorLabel.setText("Invalid Jacket number.");
88
					return;
97
					return;
89
				}
98
				}
90
				
99
 
-
 
100
				long fulfilmentWarehouseId = -1;
91
				if(billingType == BillingType.OURS){
101
				if(billingType == BillingType.OURS){
92
	                itemNumber = itemNumberBox.getText();
102
	                itemNumber = itemNumberBox.getText();
93
	                if(itemNumber==null || itemNumber.trim().isEmpty()){
103
	                if(itemNumber==null || itemNumber.trim().isEmpty()){
94
	                    errorLabel.setText("Item Number can't be left empty");
104
	                    errorLabel.setText("Item Number can't be left empty");
95
	                    return;
105
	                    return;
96
	                }
106
	                }
97
	                
107
	                
98
	                if("Handsets".equalsIgnoreCase(order.getProductGroup())){
108
	                if(order.isSerialized()) {
99
	                    try {
109
	                    try {
100
	                        serialNumber = serialNumberBox.getText();
110
	                        serialNumber = serialNumberBox.getText();
101
	                    } catch(NumberFormatException nfe){
111
	                    } catch(NumberFormatException nfe){
102
	                        nfe.printStackTrace();
112
	                        nfe.printStackTrace();
103
	                    }
113
	                    }
104
	                    
-
 
-
 
114
 
105
	                    if(serialNumber == null){
115
	                    if(serialNumber == null){
106
	                        errorLabel.setText("Invalid Serial number");
116
	                        errorLabel.setText("Invalid Serial number");
107
	                        return;
117
	                        return;
108
	                    }
118
	                    }
109
	                }
119
	                }
-
 
120
	                else {
-
 
121
	                    try {
-
 
122
	                        fulfilmentWarehouseId = Long.parseLong(warehouseBox.getValue(warehouseBox.getSelectedIndex()));
-
 
123
	                    } catch(NumberFormatException nfe) {
-
 
124
	                        nfe.printStackTrace();
-
 
125
	                    }
-
 
126
 
-
 
127
	                    if(fulfilmentWarehouseId <= 0){
-
 
128
	                        errorLabel.setText("Invalid Warehouse");
-
 
129
	                        return;
-
 
130
	                    }	                    
-
 
131
	                }
110
				}
132
				}
111
				long vendorId = -1;
-
 
112
		        try {
-
 
113
		        	vendorId = Long.parseLong(vendorBox.getValue(vendorBox.getSelectedIndex()));
-
 
114
                } catch(NumberFormatException nfe){
-
 
115
                    nfe.printStackTrace();
-
 
116
                }
-
 
117
        
-
 
118
                if(vendorId <= 0){
-
 
119
                    errorLabel.setText("Invalid Vendor");
-
 
120
                    return;
-
 
121
                }
-
 
122
				
133
 
123
				eventBus.fireEvent(new AddJacketNumberEvent(order, jacketNumber, serialNumber, itemNumber.trim(), user, billingType, vendorId));
134
				eventBus.fireEvent(new AddJacketNumberEvent(order, jacketNumber, serialNumber, itemNumber.trim(), user, billingType, fulfilmentWarehouseId));
124
				hide();
135
				hide();
125
				clean();
136
				clean();
126
			}
137
			}
127
		});
138
		});
128
	}
139
	}
129
	
140
	
130
	public void clean(){
141
	public void clean() {
131
		jacketNumberBox.setText("");
142
		jacketNumberBox.setText("");
132
		serialNumberBox.setText("");
143
		serialNumberBox.setText("");
133
		errorLabel.setText("");
144
		errorLabel.setText("");
-
 
145
		warehousePickSuggestion.setText("");
134
	}
146
	}
135
	
147
	
136
	private HorizontalPanel getHorizontalPanel(Label label, Widget textBox) {
148
	private HorizontalPanel getHorizontalPanel(Label label, Widget textBox) {
137
		HorizontalPanel hpanel = new HorizontalPanel();
149
		HorizontalPanel hpanel = new HorizontalPanel();
138
		hpanel.setSpacing(5);
150
		hpanel.setSpacing(5);