Subversion Repositories SmartDukaan

Rev

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

Rev 19832 Rev 21221
Line 33... Line 33...
33
import com.google.gwt.user.client.ui.ResizeComposite;
33
import com.google.gwt.user.client.ui.ResizeComposite;
34
import com.google.gwt.user.client.ui.VerticalPanel;
34
import com.google.gwt.user.client.ui.VerticalPanel;
35
import com.google.gwt.user.client.ui.Widget;
35
import com.google.gwt.user.client.ui.Widget;
36
 
36
 
37
public class OrderDetails extends ResizeComposite{
37
public class OrderDetails extends ResizeComposite{
38
	
38
 
39
	public interface Listener{
39
	public interface Listener{
40
		void onClick();
40
		void onClick();
41
	}
41
	}
42
	
42
 
43
	interface OrderDetailsUiBinder extends UiBinder<Widget, OrderDetails>{ }
43
	interface OrderDetailsUiBinder extends UiBinder<Widget, OrderDetails>{ }
44
	
44
 
45
	interface SelectionStyle extends CssResource{
45
	interface SelectionStyle extends CssResource{
46
		String blueLabel();
46
		String blueLabel();
47
		String greenLabel();
47
		String greenLabel();
48
	}
48
	}
49
 
49
 
50
	private static final OrderDetailsUiBinder binder = GWT.create(OrderDetailsUiBinder.class);
50
	private static final OrderDetailsUiBinder binder = GWT.create(OrderDetailsUiBinder.class);
51
	
51
 
52
	@UiField FlexTable header;
52
	@UiField FlexTable header;
53
	@UiField FlexTable table;
53
	@UiField FlexTable table;
54
	@UiField HorizontalPanel orderDetails;
54
	@UiField HorizontalPanel orderDetails;
55
	@UiField VerticalPanel orderDetails1;
55
	@UiField VerticalPanel orderDetails1;
56
	@UiField VerticalPanel orderDetails2;
56
	@UiField VerticalPanel orderDetails2;
57
	@UiField VerticalPanel orderDetails3;
57
	@UiField VerticalPanel orderDetails3;
58
	@UiField VerticalPanel orderDetails4;
58
	@UiField VerticalPanel orderDetails4;
59
	@UiField VerticalPanel orderDetails5;
59
	@UiField VerticalPanel orderDetails5;
60
	@UiField SelectionStyle selectionStyle;
60
	@UiField SelectionStyle selectionStyle;
61
	
61
 
62
	private final EventBus eventbus;
62
	private final EventBus eventbus;
63
	private Order order;
63
	private Order order;
64
	private Order transaction;
64
	private Order transaction;
65
	
65
 
66
	//Buttons for the Warehouse Executive
66
	//Buttons for the Warehouse Executive
67
	//private Button verifyOrder = new Button();
67
	//private Button verifyOrder = new Button();
68
	private Button acceptOrder = new Button();
68
	private Button acceptOrder = new Button();
69
	private Button rejectOrder = new Button();
69
	private Button rejectOrder = new Button();
70
	private Button printAllInvoices = new Button();
70
	private Button printAllInvoices = new Button();
Line 72... Line 72...
72
	private Button addBillingInfo= new Button();
72
	private Button addBillingInfo= new Button();
73
	private Button printInvoice = new Button();
73
	private Button printInvoice = new Button();
74
	private Button receiveReturn = new Button();
74
	private Button receiveReturn = new Button();
75
	private Button validateDOA = new Button();
75
	private Button validateDOA = new Button();
76
	private Button validateReturnProduct = new Button();
76
	private Button validateReturnProduct = new Button();
77
	
77
 
78
	//Buttons for the Admin to track order
78
	//Buttons for the Admin to track order
79
	private Button flagOrder = new Button();
79
	private Button flagOrder = new Button();
80
	private Button requestPickup = new Button();
80
	private Button requestPickup = new Button();
81
	private Button authorizePickup = new Button();
81
	private Button authorizePickup = new Button();
82
	private Button refundOrder = new Button();
82
	private Button refundOrder = new Button();
83
	private Button reshipOrder = new Button();
83
	private Button reshipOrder = new Button();
84
	private Button markLostInTransit = new Button();
84
	private Button markLostInTransit = new Button();
85
	private Button provisionallyCapturePaymentForOrder = new Button();
85
	private Button provisionallyCapturePaymentForOrder = new Button();
86
	
86
 
87
	//Buttons for the Admin to edit order details
87
	//Buttons for the Admin to edit order details
88
	private Button addWeight = new Button();
88
	private Button addWeight = new Button();
89
	private Button changeColor = new Button();
89
	private Button changeColor = new Button();
90
	private Button addDelayReason = new Button();
90
	private Button addDelayReason = new Button();
91
	private Button markDelivered = new Button();
91
	private Button markDelivered = new Button();
92
	private Button markRtoInTransit = new Button();
92
	private Button markRtoInTransit = new Button();
93
	private Button unacceptOrder = new Button();
93
	private Button unacceptOrder = new Button();
94
//	private Button changeJacketNumber = new Button();
94
	//	private Button changeJacketNumber = new Button();
95
//	private Button shiftWarehouse = new Button();
95
	//	private Button shiftWarehouse = new Button();
96
	private Button splitFreebieOrder = new Button();
96
	private Button splitFreebieOrder = new Button();
97
	private Button changeFreebieItem = new Button();
97
	private Button changeFreebieItem = new Button();
98
	private Button splitEbayOrder = new Button();
98
	private Button splitEbayOrder = new Button();
99
	
99
 
100
	private String user;
100
	private String user;
101
	private DetailsMask mask;
101
	private DetailsMask mask;
102
	private long warehouseID;
102
	private long warehouseID;
103
	private UserType userType;
103
	private UserType userType;
104
	private BillingType billingType;
104
	private BillingType billingType;
105
	private Map<Long, String> warehouses;
105
	private Map<Long, String> warehouses;
106
	private Map<Long, String> providers;
106
	private Map<Long, String> providers;
107
	
107
 
108
	public OrderDetails(EventBus eventbus, Order order, Order order2, DetailsMask mask, String user, long warehouseID, UserType userType, BillingType billingType, Map<Long, String> warehouses,  Map<Long, String> providers){
108
	public OrderDetails(EventBus eventbus, Order order, Order order2, DetailsMask mask, String user, long warehouseID, UserType userType, BillingType billingType, Map<Long, String> warehouses,  Map<Long, String> providers){
109
		this.eventbus = eventbus;
109
		this.eventbus = eventbus;
110
		this.order = order;
110
		this.order = order;
111
		this.transaction = order2;
111
		this.transaction = order2;
112
		this.mask = mask;
112
		this.mask = mask;
Line 114... Line 114...
114
		this.warehouseID = warehouseID;
114
		this.warehouseID = warehouseID;
115
		this.userType = userType;
115
		this.userType = userType;
116
		this.billingType = billingType;
116
		this.billingType = billingType;
117
		this.warehouses = warehouses;
117
		this.warehouses = warehouses;
118
		this.providers = providers;
118
		this.providers = providers;
119
		
119
 
120
		initWidget(binder.createAndBindUi(this));
120
		initWidget(binder.createAndBindUi(this));
121
		if(this.userType != UserType.WAREHOUSE_OBSERVER) {
121
		if(this.userType != UserType.WAREHOUSE_OBSERVER) {
122
			initTableForWE();
122
			initTableForWE();
123
		}
123
		}
124
		if(this.userType == UserType.ADMIN){
124
		if(this.userType == UserType.ADMIN){
Line 126... Line 126...
126
		} else if(this.userType == UserType.WAREHOUSE_MONITOR){
126
		} else if(this.userType == UserType.WAREHOUSE_MONITOR){
127
			initTableForWM();
127
			initTableForWM();
128
		}
128
		}
129
		loadOrderDetails();
129
		loadOrderDetails();
130
	}
130
	}
131
	
131
 
132
	private void initTableForWE() {
132
	private void initTableForWE() {
133
		header.getColumnFormatter().setWidth(0, "120px");
133
		header.getColumnFormatter().setWidth(0, "120px");
134
	    header.getColumnFormatter().setWidth(1, "120px");
134
		header.getColumnFormatter().setWidth(1, "120px");
135
	    header.getColumnFormatter().setWidth(2, "120px");
135
		header.getColumnFormatter().setWidth(2, "120px");
136
	    header.getColumnFormatter().setWidth(3, "120px");
136
		header.getColumnFormatter().setWidth(3, "120px");
137
	    header.getColumnFormatter().setWidth(4, "120px");
137
		header.getColumnFormatter().setWidth(4, "120px");
138
	    header.getColumnFormatter().setWidth(5, "120px");
138
		header.getColumnFormatter().setWidth(5, "120px");
139
	    header.getColumnFormatter().setWidth(6, "120px");
139
		header.getColumnFormatter().setWidth(6, "120px");
140
	    header.getColumnFormatter().setWidth(7, "120px");
140
		header.getColumnFormatter().setWidth(7, "120px");
141
	    header.getColumnFormatter().setWidth(8, "120px");
141
		header.getColumnFormatter().setWidth(8, "120px");
142
	    
142
 
143
	    //verifyOrder.setText("Verify");
143
		//verifyOrder.setText("Verify");
144
	    acceptOrder.setText("Accept");
144
		acceptOrder.setText("Accept");
145
	    notAvailable.setText("Out Of Stock");
145
		notAvailable.setText("Out Of Stock");
146
	    addBillingInfo.setText("Bill");
146
		addBillingInfo.setText("Bill");
147
	    if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
147
		if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
148
	        addBillingInfo.setVisible(false);
148
			addBillingInfo.setVisible(false);
149
	    
149
 
150
	    printInvoice.setText("Print Invoice");
150
		printInvoice.setText("Print Invoice");
151
	    receiveReturn.setText("Receive Return");
151
		receiveReturn.setText("Receive Return");
152
	    validateDOA.setText("Validate DOA");
152
		validateDOA.setText("Validate DOA");
153
	    validateReturnProduct.setText("Product Usable?");
153
		validateReturnProduct.setText("Product Usable?");
154
	    rejectOrder.setText("Cancel Order");
154
		rejectOrder.setText("Cancel Order");
155
	    printAllInvoices.setText("Print All Invoices");
155
		printAllInvoices.setText("Print All Invoices");
156
	    
156
 
157
	    //header.setWidget(0, 0, verifyOrder);
157
		//header.setWidget(0, 0, verifyOrder);
158
	    header.setWidget(0, 0, acceptOrder);
158
		header.setWidget(0, 0, acceptOrder);
159
	    header.setWidget(0, 1, notAvailable);
159
		header.setWidget(0, 1, notAvailable);
160
	    header.setWidget(0, 2, addBillingInfo);
160
		header.setWidget(0, 2, addBillingInfo);
161
	    
161
 
162
	    header.setWidget(0, 3, printInvoice);
162
		header.setWidget(0, 3, printInvoice);
163
	    header.setWidget(0, 4, receiveReturn);
163
		header.setWidget(0, 4, receiveReturn);
164
	    header.setWidget(0, 5, validateDOA);
164
		header.setWidget(0, 5, validateDOA);
165
	    header.setWidget(0, 6, rejectOrder);
165
		header.setWidget(0, 6, rejectOrder);
166
	    header.setWidget(0, 7, printAllInvoices);
166
		header.setWidget(0, 7, printAllInvoices);
167
	    header.setWidget(0, 8, validateReturnProduct);
167
		header.setWidget(0, 8, validateReturnProduct);
168
	    
168
 
169
	    markRtoInTransit.setText("Mark RTO");
169
		markRtoInTransit.setText("Mark RTO");
170
	    
170
 
171
	    
171
 
172
	    header.setWidget(2, 4, markRtoInTransit);
172
		header.setWidget(2, 4, markRtoInTransit);
173
	    
173
 
174
	    registerButtonHandlersForWE();
174
		registerButtonHandlersForWE();
175
	    if(this.userType == UserType.WAREHOUSE_EXECUTIVE || this.userType == UserType.ADMIN){
175
		if(this.userType == UserType.WAREHOUSE_EXECUTIVE || this.userType == UserType.ADMIN){
176
			implementMaskForWE();
176
			implementMaskForWE();
177
		} else if(this.userType == UserType.WAREHOUSE_MONITOR){
177
		} else if(this.userType == UserType.WAREHOUSE_MONITOR){
178
			implementMaskForWM();
178
			implementMaskForWM();
179
		}
179
		}
180
		
180
 
181
	}
181
	}
182
	
182
 
183
	private void registerButtonHandlersForWE(){
183
	private void registerButtonHandlersForWE(){
184
		/*
184
		/*
185
	    verifyOrder.addClickHandler(new ClickHandler() {
185
	    verifyOrder.addClickHandler(new ClickHandler() {
186
            
186
 
187
            @Override
187
            @Override
188
            public void onClick(ClickEvent event) {
188
            public void onClick(ClickEvent event) {
189
                if(verifyOrder.isEnabled()){
189
                if(verifyOrder.isEnabled()){
190
                    GWT.log("Verify order event fired");
190
                    GWT.log("Verify order event fired");
191
                    eventbus.fireEvent(new VerifyOrderEvent(order));
191
                    eventbus.fireEvent(new VerifyOrderEvent(order));
192
                }
192
                }
193
            }
193
            }
194
        });
194
        });
195
	    */
195
		 */
196
	    
196
 
197
		acceptOrder.addClickHandler(new ClickHandler() {
197
		acceptOrder.addClickHandler(new ClickHandler() {
198
			
198
 
199
			@Override
199
			@Override
200
			public void onClick(ClickEvent event) {
200
			public void onClick(ClickEvent event) {
201
				if(!acceptOrder.isEnabled())
201
				if(!acceptOrder.isEnabled())
202
					return;
202
					return;
203
				if(order.getAcceptTogetherOrdersMap()!=null && order.getAcceptTogetherOrdersMap().size()==1){
203
				if(order.getAcceptTogetherOrdersMap()!=null && order.getAcceptTogetherOrdersMap().size()==1){
Line 210... Line 210...
210
				}
210
				}
211
			}
211
			}
212
		});
212
		});
213
 
213
 
214
		notAvailable.addClickHandler(new ClickHandler() {
214
		notAvailable.addClickHandler(new ClickHandler() {
215
			
215
 
216
			@Override
216
			@Override
217
			public void onClick(ClickEvent event) {
217
			public void onClick(ClickEvent event) {
218
				if(notAvailable.isEnabled())
218
				if(notAvailable.isEnabled())
219
					eventbus.fireEvent(new NostockOrderEvent(order));
219
					eventbus.fireEvent(new NostockOrderEvent(order));
220
			}
220
			}
221
		});
221
		});
222
 
222
 
223
		rejectOrder.addClickHandler(new ClickHandler() {
223
		rejectOrder.addClickHandler(new ClickHandler() {
224
			
224
 
225
			@Override
225
			@Override
226
			public void onClick(ClickEvent event) {
226
			public void onClick(ClickEvent event) {
227
				if(rejectOrder.isEnabled()){
227
				if(rejectOrder.isEnabled()){
228
					RejectReasonBox box = new RejectReasonBox(eventbus, order, user);
228
					RejectReasonBox box = new RejectReasonBox(eventbus, order, user);
229
					box.center();
229
					box.center();
230
				}
230
				}
231
			}
231
			}
232
		});
232
		});
233
		
233
 
234
		addBillingInfo.addClickHandler(new ClickHandler() {
234
		addBillingInfo.addClickHandler(new ClickHandler() {
235
			
235
 
236
			@Override
236
			@Override
237
			public void onClick(ClickEvent event) {
237
			public void onClick(ClickEvent event) {
238
				if(!addBillingInfo.isEnabled())
238
				if(!addBillingInfo.isEnabled())
239
					return;
239
					return;
240
				BillingInfoBox box = new BillingInfoBox(eventbus, order, user);
240
				BillingInfoBox box = new BillingInfoBox(eventbus, order, user);
241
				box.center();				
241
				box.center();				
242
			}
242
			}
243
		});
243
		});
244
 
244
 
245
		printInvoice.addClickHandler(new ClickHandler() {
245
		printInvoice.addClickHandler(new ClickHandler() {
246
			
246
 
247
			@Override
247
			@Override
248
			public void onClick(ClickEvent event) {
248
			public void onClick(ClickEvent event) {
249
				if(!printInvoice.isEnabled())
249
				if(!printInvoice.isEnabled())
250
					return;
250
					return;
251
				if(order.getJacketNumber()==0 && (billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)) {
251
				if(order.getJacketNumber()==0 && (billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)) {
-
 
252
					long total_quantity_to_bill = 0;
-
 
253
					for(Long orderId : billTogetherOrdersMap.keySet()){
-
 
254
						boolean hasSerialized = Boolean.parseBoolean(billTogetherOrdersMap.get(orderId).get("IsSerialized"));
-
 
255
						if (hasSerialized){
-
 
256
							total_quantity_to_bill += (long)Double.parseDouble(billTogetherOrdersMap.get(orderId).get("Quantity"));
-
 
257
						}
-
 
258
					}
-
 
259
 
-
 
260
					if (total_quantity_to_bill > 1){
-
 
261
						ShipmentDelayUpload box = new ShipmentDelayUpload(eventBus);
-
 
262
					}
-
 
263
					else{
252
					JacketInfoBox box = new JacketInfoBox(eventbus, order, user, billingType, warehouses, order.getBillTogetherOrdersMap());
264
						JacketInfoBox box = new JacketInfoBox(eventbus, order, user, billingType, warehouses, order.getBillTogetherOrdersMap());
-
 
265
					}
253
					box.setPopupPosition(Window.getClientWidth()/10, Window.getClientHeight()/10);
266
					box.setPopupPosition(Window.getClientWidth()/10, Window.getClientHeight()/10);
254
					box.show();
267
					box.show();
255
				} else{
268
				} else{
256
					String invoiceGenerationUrl = null;
269
					String invoiceGenerationUrl = null;
257
					if(warehouseID == 0) {
270
					if(warehouseID == 0) {
Line 263... Line 276...
263
						invoiceGenerationUrl = GWT.getHostPageBaseURL() + "invoice/?id=" + order.getOrderId() + "&warehouse=" + warehouseID ;
276
						invoiceGenerationUrl = GWT.getHostPageBaseURL() + "invoice/?id=" + order.getOrderId() + "&warehouse=" + warehouseID ;
264
						if(order.getLogisticsTransactionId()!=null){
277
						if(order.getLogisticsTransactionId()!=null){
265
							invoiceGenerationUrl = invoiceGenerationUrl + "&logisticsTxnId=" + order.getLogisticsTransactionId();
278
							invoiceGenerationUrl = invoiceGenerationUrl + "&logisticsTxnId=" + order.getLogisticsTransactionId();
266
						}
279
						}
267
						if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
280
						if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
268
						    invoiceGenerationUrl += "&withBill=true";
281
							invoiceGenerationUrl += "&withBill=true";
269
						else
282
						else
270
						    invoiceGenerationUrl += "&withBill=false";
283
							invoiceGenerationUrl += "&withBill=false";
271
					}
284
					}
272
					Window.open(invoiceGenerationUrl, "newWindowName", "window features.");
285
					Window.open(invoiceGenerationUrl, "newWindowName", "window features.");
273
				}
286
				}
274
			}
287
			}
275
		});
288
		});
276
		
289
 
277
		printAllInvoices.addClickHandler(new ClickHandler() {
290
		printAllInvoices.addClickHandler(new ClickHandler() {
278
			
291
 
279
			@Override
292
			@Override
280
			public void onClick(ClickEvent event) {
293
			public void onClick(ClickEvent event) {
281
				if(!printAllInvoices.isEnabled()){
294
				if(!printAllInvoices.isEnabled()){
282
					return;
295
					return;
283
				}else{
296
				}else{
284
					String invoiceGenerationUrl = GWT.getHostPageBaseURL() + "invoice/?id=" + order.getOrderId() + "&printAll=true&warehouse=" + warehouseID + "&logisticsTxnId=" + order.getLogisticsTransactionId();
297
					String invoiceGenerationUrl = GWT.getHostPageBaseURL() + "invoice/?id=" + order.getOrderId() + "&printAll=true&warehouse=" + warehouseID + "&logisticsTxnId=" + order.getLogisticsTransactionId();
285
					if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
298
					if(billingType == BillingType.OURS || billingType == BillingType.OURS_EXTERNAL)
286
					    invoiceGenerationUrl += "&withBill=true";
299
						invoiceGenerationUrl += "&withBill=true";
287
					else
300
					else
288
					    invoiceGenerationUrl += "&withBill=false";
301
						invoiceGenerationUrl += "&withBill=false";
289
					Window.open(invoiceGenerationUrl, "newWindowName", "window features.");
302
					Window.open(invoiceGenerationUrl, "newWindowName", "window features.");
290
				}
303
				}
291
			}
304
			}
292
		});
305
		});
293
 
306
 
294
		receiveReturn.addClickHandler(new ClickHandler() {
307
		receiveReturn.addClickHandler(new ClickHandler() {
295
			
308
 
296
			@Override
309
			@Override
297
			public void onClick(ClickEvent event) {
310
			public void onClick(ClickEvent event) {
298
				if(!receiveReturn.isEnabled())
311
				if(!receiveReturn.isEnabled())
299
					return;
312
					return;
300
				ReceiveReturnBox box = new ReceiveReturnBox(eventbus, order);
313
				ReceiveReturnBox box = new ReceiveReturnBox(eventbus, order);
301
				box.center();
314
				box.center();
302
			}
315
			}
303
		});
316
		});
304
		
317
 
305
		validateDOA.addClickHandler(new ClickHandler() {
318
		validateDOA.addClickHandler(new ClickHandler() {
306
			
319
 
307
			@Override
320
			@Override
308
			public void onClick(ClickEvent event) {
321
			public void onClick(ClickEvent event) {
309
				if(!validateDOA.isEnabled())
322
				if(!validateDOA.isEnabled())
310
					return;
323
					return;
311
				DoaValidationBox box = new DoaValidationBox(eventbus, order);
324
				DoaValidationBox box = new DoaValidationBox(eventbus, order);
312
				box.center();
325
				box.center();
313
			}
326
			}
314
		});
327
		});
315
		
328
 
316
		validateReturnProduct.addClickHandler(new ClickHandler() {
329
		validateReturnProduct.addClickHandler(new ClickHandler() {
317
			
330
 
318
			@Override
331
			@Override
319
			public void onClick(ClickEvent event) {
332
			public void onClick(ClickEvent event) {
320
				if(!validateReturnProduct.isEnabled())
333
				if(!validateReturnProduct.isEnabled())
321
					return;
334
					return;
322
				ProductValidationBox box = new ProductValidationBox(eventbus, order);
335
				ProductValidationBox box = new ProductValidationBox(eventbus, order);
323
				box.center();
336
				box.center();
324
			}
337
			}
325
		});
338
		});
326
		
339
 
327
		markRtoInTransit.addClickHandler(new ClickHandler() {
340
		markRtoInTransit.addClickHandler(new ClickHandler() {
328
            
341
 
329
            @Override
342
			@Override
330
            public void onClick(ClickEvent event) {
343
			public void onClick(ClickEvent event) {
331
                eventbus.fireEvent(new MarkRtoInTransitEvent(order));
344
				eventbus.fireEvent(new MarkRtoInTransitEvent(order));
332
            }
345
			}
333
        });
346
		});
334
	}
347
	}
335
 
348
 
336
	private void implementMaskForWM(){
349
	private void implementMaskForWM(){
337
		
350
 
338
		/*boolean accept, boolean notavailable, boolean updateColor, boolean reject, 
351
		/*boolean accept, boolean notavailable, boolean updateColor, boolean reject, 
339
		boolean printAllInvoice, boolean printInv, boolean splitSourceOrder, boolean markDelivery, 
352
		boolean printAllInvoice, boolean printInv, boolean splitSourceOrder, boolean markDelivery, 
340
		boolean reqPickup, boolean authPickup, boolean reship, boolean lostInTransit, boolean acceptdoa,
353
		boolean reqPickup, boolean authPickup, boolean reship, boolean lostInTransit, boolean acceptdoa,
341
		boolean validatedoa, boolean validatereturnproduct*/
354
		boolean validatedoa, boolean validatereturnproduct*/
342
		//TODO Currently a lot of options have been disabled for this case. This would need a revisit based on discussions and requirements
355
		//TODO Currently a lot of options have been disabled for this case. This would need a revisit based on discussions and requirements
Line 357... Line 370...
357
		//markDelivered.setEnabled(false);
370
		//markDelivered.setEnabled(false);
358
		//markRtoInTransit.setEnabled(false);
371
		//markRtoInTransit.setEnabled(false);
359
		changeFreebieItem.setEnabled(false);
372
		changeFreebieItem.setEnabled(false);
360
 
373
 
361
		switch(mask){
374
		switch(mask){
362
        case CAPTURE_IN_PROCESS:
375
		case CAPTURE_IN_PROCESS:
363
            maskButtonsForWM(false, false, false, false, false, false, false, false,
376
			maskButtonsForWM(false, false, false, false, false, false, false, false,
364
            		false, false, false, false, false, false, false); 
377
					false, false, false, false, false, false, false); 
365
            break;
378
			break;
366
        case VERIFICATION_PENDING:
379
		case VERIFICATION_PENDING:
367
        case NEW:
380
		case NEW:
368
        case NO_STOCK:
381
		case NO_STOCK:
369
        case ACCEPT:
382
		case ACCEPT:
370
        	maskButtonsForWM(true, true, true, true, true, false, true, false,
383
			maskButtonsForWM(true, true, true, true, true, false, true, false,
371
            		false, false, false, false, false, false, false); 
384
					false, false, false, false, false, false, false); 
372
			break;
385
			break;
373
        case BILL:
386
		case BILL:
374
        	maskButtonsForWM(false, true, false, true, false, true, false, true, 
387
			maskButtonsForWM(false, true, false, true, false, true, false, true, 
375
        			false, false, false, false, false, false, false); 
388
					false, false, false, false, false, false, false); 
376
			break;
389
			break;
377
		case DELIVERED:
390
		case DELIVERED:
378
			maskButtonsForWM(false, false, false, false, false, true, false, false,
391
			maskButtonsForWM(false, false, false, false, false, true, false, false,
379
					false, false, false, false, false, false, false); 
392
					false, false, false, false, false, false, false); 
380
		case DOA_REQUEST_AUTHORIZED:	
393
		case DOA_REQUEST_AUTHORIZED:	
Line 385... Line 398...
385
					true, true, false, false, false, false, false); 
398
					true, true, false, false, false, false, false); 
386
		case DOA_RETURNED:
399
		case DOA_RETURNED:
387
		case SALES_RETURNED:
400
		case SALES_RETURNED:
388
			maskButtonsForWM(false, false, false, false, false, true, false, false,
401
			maskButtonsForWM(false, false, false, false, false, true, false, false,
389
					false, false, true, false, false, false, false); 
402
					false, false, true, false, false, false, false); 
390
		
403
 
391
		case SHIP:
404
		case SHIP:
392
			maskButtonsForWM(false, false, false, false, false, true, false, true,
405
			maskButtonsForWM(false, false, false, false, false, true, false, true,
393
					false, false, false, true, false, false, false); 
406
					false, false, false, true, false, false, false); 
394
			break;
407
			break;
395
		default:
408
		default:
396
			maskButtonsForWM(false, false, false, false, false, true, false, false, 
409
			maskButtonsForWM(false, false, false, false, false, true, false, false, 
397
					false, false, false, false, false, false, false); 	//Unknown state. Let's not allow any untoward actions.
410
					false, false, false, false, false, false, false); 	//Unknown state. Let's not allow any untoward actions.
398
			break;
411
					break;
399
		}
412
		}
400
	}
413
	}
401
	
414
 
402
	private void implementMaskForWE(){
415
	private void implementMaskForWE(){
403
		switch(mask){
416
		switch(mask){
404
		case VERIFICATION_PENDING:
417
		case VERIFICATION_PENDING:
405
		    maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Do not allow the WE to verify the order.
418
			maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Do not allow the WE to verify the order.
406
		    break;
419
			break;
407
		case CAPTURE_IN_PROCESS:
420
		case CAPTURE_IN_PROCESS:
408
		case NEW:
421
		case NEW:
409
			maskButtonsForWE(true, false, true, false, false, false, false, false, false);  //Allow the WE to either accept the order or mark it as out of stock.
422
			maskButtonsForWE(true, false, true, false, false, false, false, false, false);  //Allow the WE to either accept the order or mark it as out of stock.
410
			break;
423
			break;
411
		case ACCEPT:
424
		case ACCEPT:
412
		    //TODO: Mask buttons based on the billingType
425
			//TODO: Mask buttons based on the billingType
413
		    if(billingType == BillingType.OURS)
426
			if(billingType == BillingType.OURS)
414
		        maskButtonsForWE(false, false, false, true, true, false, false, false, false); // For our billing, allow the WE to directly print the invoive.
427
				maskButtonsForWE(false, false, false, true, true, false, false, false, false); // For our billing, allow the WE to directly print the invoive.
415
		    else
428
			else
416
		        maskButtonsForWE(false, false, false, true, true, false, false, true, false); //For external billing, allow the WE to feed the invoice info.
429
				maskButtonsForWE(false, false, false, true, true, false, false, true, false); //For external billing, allow the WE to feed the invoice info.
417
			break;
430
			break;
418
		case REJECT:
431
		case REJECT:
419
			maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Can't do anything once the order has been rejected.
432
			maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Can't do anything once the order has been rejected.
420
			break;
433
			break;
421
		case BILL:
434
		case BILL:
Line 438... Line 451...
438
			maskButtonsForWE(false, false, false, false, false, false, true, false, false); //Allow WE to validate the DOA certificate.
451
			maskButtonsForWE(false, false, false, false, false, false, true, false, false); //Allow WE to validate the DOA certificate.
439
			break;
452
			break;
440
		case RET_RECEIVED:
453
		case RET_RECEIVED:
441
			maskButtonsForWE(false, false, false, false, false, false, false, false, true); //Allow WE to validate the DOA certificate.
454
			maskButtonsForWE(false, false, false, false, false, false, false, false, true); //Allow WE to validate the DOA certificate.
442
			break;
455
			break;
443
			
456
 
444
		default:
457
		default:
445
			maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Unknown state, let's disallow any untoward actions.
458
			maskButtonsForWE(false, false, false, false, false, false, false, false, false); //Unknown state, let's disallow any untoward actions.
446
			break;
459
			break;
447
		}
460
		}
448
	}
461
	}
449
	
462
 
450
	private void maskButtonsForWE(boolean accept, boolean reject, boolean notavailable, boolean printInv, boolean billing, boolean acceptdoa, boolean validatedoa, boolean printAllInvoice, boolean validatereturnproduct){
463
	private void maskButtonsForWE(boolean accept, boolean reject, boolean notavailable, boolean printInv, boolean billing, boolean acceptdoa, boolean validatedoa, boolean printAllInvoice, boolean validatereturnproduct){
451
	    //verifyOrder.setEnabled(verify);
464
		//verifyOrder.setEnabled(verify);
452
	    acceptOrder.setEnabled(accept);
465
		acceptOrder.setEnabled(accept);
453
		notAvailable.setEnabled(notavailable);
466
		notAvailable.setEnabled(notavailable);
454
		printInvoice.setEnabled(printInv);
467
		printInvoice.setEnabled(printInv);
455
		addBillingInfo.setEnabled(billing);
468
		addBillingInfo.setEnabled(billing);
456
		receiveReturn.setEnabled(acceptdoa);
469
		receiveReturn.setEnabled(acceptdoa);
457
		validateDOA.setEnabled(validatedoa);
470
		validateDOA.setEnabled(validatedoa);
Line 462... Line 475...
462
 
475
 
463
	private void maskButtonsForWM(boolean accept, boolean notavailable, boolean updateColor, boolean reject, 
476
	private void maskButtonsForWM(boolean accept, boolean notavailable, boolean updateColor, boolean reject, 
464
			boolean printAllInvoice, boolean printInv, boolean splitSourceOrder, boolean markDelivery, 
477
			boolean printAllInvoice, boolean printInv, boolean splitSourceOrder, boolean markDelivery, 
465
			boolean reqPickup, boolean authPickup, boolean reship, boolean lostInTransit, boolean acceptdoa,
478
			boolean reqPickup, boolean authPickup, boolean reship, boolean lostInTransit, boolean acceptdoa,
466
			boolean validatedoa, boolean validatereturnproduct){
479
			boolean validatedoa, boolean validatereturnproduct){
467
	    acceptOrder.setEnabled(accept);
480
		acceptOrder.setEnabled(accept);
468
		notAvailable.setEnabled(notavailable);
481
		notAvailable.setEnabled(notavailable);
469
		changeColor.setEnabled(updateColor);
482
		changeColor.setEnabled(updateColor);
470
		rejectOrder.setEnabled(reject);
483
		rejectOrder.setEnabled(reject);
471
		printAllInvoices.setEnabled(printAllInvoice);
484
		printAllInvoices.setEnabled(printAllInvoice);
472
		printInvoice.setEnabled(printInv);
485
		printInvoice.setEnabled(printInv);
Line 480... Line 493...
480
		validateDOA.setEnabled(validatedoa);
493
		validateDOA.setEnabled(validatedoa);
481
		validateReturnProduct.setEnabled(validatereturnproduct);
494
		validateReturnProduct.setEnabled(validatereturnproduct);
482
	}
495
	}
483
 
496
 
484
	private void initTableForWM() {
497
	private void initTableForWM() {
485
		 if(transaction.isDoaFlag()){
498
		if(transaction.isDoaFlag()){
486
		    flagOrder.setText("Unflag");
499
			flagOrder.setText("Unflag");
487
		 } else {
500
		} else {
488
		    	flagOrder.setText("Flag");
501
			flagOrder.setText("Flag");
489
		 }
502
		}
490
	    requestPickup.setText("Request Pick-up No");
503
		requestPickup.setText("Request Pick-up No");
491
	    authorizePickup.setText("Confirm Pick-up");
504
		authorizePickup.setText("Confirm Pick-up");
492
	    reshipOrder.setText("Reship");
505
		reshipOrder.setText("Reship");
493
	    markLostInTransit.setText("Lost In Transit");
506
		markLostInTransit.setText("Lost In Transit");
494
	    refundOrder.setText("Refund");
507
		refundOrder.setText("Refund");
495
	    provisionallyCapturePaymentForOrder.setText("Capture provisionally");
508
		provisionallyCapturePaymentForOrder.setText("Capture provisionally");
496
	    unacceptOrder.setText("Unaccept");
509
		unacceptOrder.setText("Unaccept");
497
	    
510
 
498
	    header.setWidget(1, 0, flagOrder);
511
		header.setWidget(1, 0, flagOrder);
499
	    header.setWidget(1, 1, requestPickup);
512
		header.setWidget(1, 1, requestPickup);
500
	    header.setWidget(1, 2, authorizePickup);
513
		header.setWidget(1, 2, authorizePickup);
501
	    header.setWidget(1, 3, reshipOrder);
514
		header.setWidget(1, 3, reshipOrder);
502
	    header.setWidget(1, 4, markLostInTransit);
515
		header.setWidget(1, 4, markLostInTransit);
503
	    header.setWidget(1, 5, provisionallyCapturePaymentForOrder);
516
		header.setWidget(1, 5, provisionallyCapturePaymentForOrder);
504
	    header.setWidget(1, 6, refundOrder);
517
		header.setWidget(1, 6, refundOrder);
505
	    //header.setWidget(1, 7, unacceptOrder);
518
		//header.setWidget(1, 7, unacceptOrder);
506
	    
519
 
507
	    addWeight.setText("Add weight");
520
		addWeight.setText("Add weight");
508
	    changeColor.setText("Change Color WH Jacket Courier");
521
		changeColor.setText("Change Color WH Jacket Courier");
509
	    addDelayReason.setText("Add Delay Reason");
522
		addDelayReason.setText("Add Delay Reason");
510
	    markDelivered.setText("Mark Delivered");
523
		markDelivered.setText("Mark Delivered");
511
	    markRtoInTransit.setText("Mark RTO");
524
		markRtoInTransit.setText("Mark RTO");
512
//		changeJacketNumber.setText("Change Jacket");
525
		//		changeJacketNumber.setText("Change Jacket");
513
//		shiftWarehouse.setText("Shift Warehouse");
526
		//		shiftWarehouse.setText("Shift Warehouse");
514
	    splitFreebieOrder.setText("Split Freebie Order");
527
		splitFreebieOrder.setText("Split Freebie Order");
515
	    changeFreebieItem.setText("Change Freebie Item");
528
		changeFreebieItem.setText("Change Freebie Item");
516
	    splitEbayOrder.setText("Split Order");
529
		splitEbayOrder.setText("Split Order");
517
	    
530
 
518
	    header.setWidget(2, 0, addWeight);
531
		header.setWidget(2, 0, addWeight);
519
	    header.setWidget(2, 1, changeColor);
532
		header.setWidget(2, 1, changeColor);
520
	    header.setWidget(2, 2, addDelayReason);
533
		header.setWidget(2, 2, addDelayReason);
521
	    header.setWidget(2, 3, markDelivered);
534
		header.setWidget(2, 3, markDelivered);
522
	    header.setWidget(2, 4, markRtoInTransit);
535
		header.setWidget(2, 4, markRtoInTransit);
523
	    header.setWidget(2, 5, splitFreebieOrder);
536
		header.setWidget(2, 5, splitFreebieOrder);
524
	    header.setWidget(2, 6, changeFreebieItem);
537
		header.setWidget(2, 6, changeFreebieItem);
525
	    header.setWidget(2, 7, splitEbayOrder);
538
		header.setWidget(2, 7, splitEbayOrder);
526
    	if(order.getQuantity()<2) {
539
		if(order.getQuantity()<2) {
527
    		splitEbayOrder.setEnabled(false);
540
			splitEbayOrder.setEnabled(false);
528
    	}
541
		}
529
	  
542
 
530
	    if(order.getTotalWeight() != 0)
543
		if(order.getTotalWeight() != 0)
531
	        addWeight.setEnabled(false);
544
			addWeight.setEnabled(false);
532
	    
545
 
533
	    if(order.getFreebieItemId() == 0) {
546
		if(order.getFreebieItemId() == 0) {
534
	        splitFreebieOrder.setEnabled(false);
547
			splitFreebieOrder.setEnabled(false);
535
	        changeFreebieItem.setEnabled(false);
548
			changeFreebieItem.setEnabled(false);
536
	    }
549
		}
537
	    
550
 
538
	    registerButtonHandlersForAdmin();
551
		registerButtonHandlersForAdmin();
539
		implementMaskForWM();
552
		implementMaskForWM();
540
	}
553
	}
541
	
554
 
542
	private void initTableForAdmin() {
555
	private void initTableForAdmin() {
543
	    if(transaction.isDoaFlag()){
556
		if(transaction.isDoaFlag()){
544
	    	flagOrder.setText("Unflag");
557
			flagOrder.setText("Unflag");
545
	    } else {
558
		} else {
546
	    	flagOrder.setText("Flag");
559
			flagOrder.setText("Flag");
547
	    }
560
		}
548
	    
561
 
549
	    requestPickup.setText("Request Pick-up No");
562
		requestPickup.setText("Request Pick-up No");
550
	    authorizePickup.setText("Confirm Pick-up");
563
		authorizePickup.setText("Confirm Pick-up");
551
	    reshipOrder.setText("Reship");
564
		reshipOrder.setText("Reship");
552
	    markLostInTransit.setText("Lost In Transit");
565
		markLostInTransit.setText("Lost In Transit");
553
	    refundOrder.setText("Refund");
566
		refundOrder.setText("Refund");
554
	    provisionallyCapturePaymentForOrder.setText("Capture provisionally");
567
		provisionallyCapturePaymentForOrder.setText("Capture provisionally");
555
	    unacceptOrder.setText("Unaccept");
568
		unacceptOrder.setText("Unaccept");
556
	    
569
 
557
	    header.setWidget(1, 0, flagOrder);
570
		header.setWidget(1, 0, flagOrder);
558
	    header.setWidget(1, 1, requestPickup);
571
		header.setWidget(1, 1, requestPickup);
559
	    header.setWidget(1, 2, authorizePickup);
572
		header.setWidget(1, 2, authorizePickup);
560
	    header.setWidget(1, 3, reshipOrder);
573
		header.setWidget(1, 3, reshipOrder);
561
	    header.setWidget(1, 4, markLostInTransit);
574
		header.setWidget(1, 4, markLostInTransit);
562
	    header.setWidget(1, 5, provisionallyCapturePaymentForOrder);
575
		header.setWidget(1, 5, provisionallyCapturePaymentForOrder);
563
	    header.setWidget(1, 6, refundOrder);
576
		header.setWidget(1, 6, refundOrder);
564
	    header.setWidget(1, 7, unacceptOrder);
577
		header.setWidget(1, 7, unacceptOrder);
565
	    
578
 
566
	    addWeight.setText("Add weight");
579
		addWeight.setText("Add weight");
567
	    changeColor.setText("Change Color WH Jacket Courier");
580
		changeColor.setText("Change Color WH Jacket Courier");
568
	    addDelayReason.setText("Add Delay Reason");
581
		addDelayReason.setText("Add Delay Reason");
569
	    markDelivered.setText("Mark Delivered");
582
		markDelivered.setText("Mark Delivered");
570
	    markRtoInTransit.setText("Mark RTO");
583
		markRtoInTransit.setText("Mark RTO");
571
//	    changeJacketNumber.setText("Change Jacket");
584
		//	    changeJacketNumber.setText("Change Jacket");
572
//	    shiftWarehouse.setText("Shift Warehouse");
585
		//	    shiftWarehouse.setText("Shift Warehouse");
573
	    splitFreebieOrder.setText("Split Freebie Order");
586
		splitFreebieOrder.setText("Split Freebie Order");
574
	    changeFreebieItem.setText("Change Freebie Item");
587
		changeFreebieItem.setText("Change Freebie Item");
575
	    splitEbayOrder.setText("Split Order");
588
		splitEbayOrder.setText("Split Order");
576
	    
589
 
577
	    header.setWidget(2, 0, addWeight);
590
		header.setWidget(2, 0, addWeight);
578
	    header.setWidget(2, 1, changeColor);
591
		header.setWidget(2, 1, changeColor);
579
	    header.setWidget(2, 2, addDelayReason);
592
		header.setWidget(2, 2, addDelayReason);
580
	    header.setWidget(2, 3, markDelivered);
593
		header.setWidget(2, 3, markDelivered);
581
	    header.setWidget(2, 4, markRtoInTransit);
594
		header.setWidget(2, 4, markRtoInTransit);
582
//	    header.setWidget(2, 5, changeJacketNumber);
595
		//	    header.setWidget(2, 5, changeJacketNumber);
583
//	    header.setWidget(2, 6, shiftWarehouse);
596
		//	    header.setWidget(2, 6, shiftWarehouse);
584
	    header.setWidget(2, 5, splitFreebieOrder);
597
		header.setWidget(2, 5, splitFreebieOrder);
585
	    header.setWidget(2, 6, changeFreebieItem);
598
		header.setWidget(2, 6, changeFreebieItem);
586
	    header.setWidget(2, 7, splitEbayOrder);
599
		header.setWidget(2, 7, splitEbayOrder);
587
	    if(order.getQuantity()<2) {
600
		if(order.getQuantity()<2) {
588
	    	splitEbayOrder.setEnabled(false);
601
			splitEbayOrder.setEnabled(false);
589
	    }
602
		}
590
	    
603
 
591
	    if(order.getTotalWeight() != 0)
604
		if(order.getTotalWeight() != 0)
592
	        addWeight.setEnabled(false);
605
			addWeight.setEnabled(false);
593
	    
606
 
594
	    if(order.getFreebieItemId() == 0) {
607
		if(order.getFreebieItemId() == 0) {
595
	        splitFreebieOrder.setEnabled(false);
608
			splitFreebieOrder.setEnabled(false);
596
	        changeFreebieItem.setEnabled(false);
609
			changeFreebieItem.setEnabled(false);
597
	    }
610
		}
598
	    
611
 
599
	    registerButtonHandlersForAdmin();
612
		registerButtonHandlersForAdmin();
600
		implementMaskForAdmin();
613
		implementMaskForAdmin();
601
	}
614
	}
602
	
615
 
603
	private void registerButtonHandlersForAdmin(){
616
	private void registerButtonHandlersForAdmin(){
604
		flagOrder.addClickHandler(new ClickHandler() {
617
		flagOrder.addClickHandler(new ClickHandler() {
605
			
618
 
606
			@Override
619
			@Override
607
			public void onClick(ClickEvent event) {
620
			public void onClick(ClickEvent event) {
608
				if(flagOrder.isEnabled()){
621
				if(flagOrder.isEnabled()){
609
					eventbus.fireEvent(new FlagOrderEvent(order));
622
					eventbus.fireEvent(new FlagOrderEvent(order));
610
				}
623
				}
611
			}
624
			}
612
		});
625
		});
613
		
626
 
614
		requestPickup.addClickHandler(new ClickHandler() {
627
		requestPickup.addClickHandler(new ClickHandler() {
615
			
628
 
616
			@Override
629
			@Override
617
			public void onClick(ClickEvent event) {
630
			public void onClick(ClickEvent event) {
618
				if(requestPickup.isEnabled()){
631
				if(requestPickup.isEnabled()){
619
					GWT.log("Raising a pickup request for: " + order.getOrderId());
632
					GWT.log("Raising a pickup request for: " + order.getOrderId());
620
					ChoosePickupProviderBox box = new ChoosePickupProviderBox(eventbus, order, providers);
633
					ChoosePickupProviderBox box = new ChoosePickupProviderBox(eventbus, order, providers);
621
					box.center();
634
					box.center();
622
				}
635
				}
623
			}
636
			}
624
		});
637
		});
625
		
638
 
626
		authorizePickup.addClickHandler(new ClickHandler() {
639
		authorizePickup.addClickHandler(new ClickHandler() {
627
			
640
 
628
			@Override
641
			@Override
629
			public void onClick(ClickEvent event) {
642
			public void onClick(ClickEvent event) {
630
				if(!authorizePickup.isEnabled())
643
				if(!authorizePickup.isEnabled())
631
					return;
644
					return;
632
				PickupAuthorizationInfoBox box = new PickupAuthorizationInfoBox(eventbus, order, providers);
645
				PickupAuthorizationInfoBox box = new PickupAuthorizationInfoBox(eventbus, order, providers);
633
				box.center();
646
				box.center();
634
			}
647
			}
635
		});
648
		});
636
		
649
 
637
		reshipOrder.addClickHandler(new ClickHandler() {
650
		reshipOrder.addClickHandler(new ClickHandler() {
638
			
651
 
639
			@Override
652
			@Override
640
			public void onClick(ClickEvent event) {
653
			public void onClick(ClickEvent event) {
641
				if(reshipOrder.isEnabled()){
654
				if(reshipOrder.isEnabled()){
642
					GWT.log("Reshipping the order: " + order.getOrderId());
655
					GWT.log("Reshipping the order: " + order.getOrderId());
643
					eventbus.fireEvent(new ReshipOrderEvent(order));
656
					eventbus.fireEvent(new ReshipOrderEvent(order));
644
				}
657
				}
645
			}
658
			}
646
		});
659
		});
647
 
660
 
648
		markLostInTransit.addClickHandler(new ClickHandler() {
661
		markLostInTransit.addClickHandler(new ClickHandler() {
649
			
662
 
650
			@Override
663
			@Override
651
			public void onClick(ClickEvent event) {
664
			public void onClick(ClickEvent event) {
652
				if(markLostInTransit.isEnabled()){
665
				if(markLostInTransit.isEnabled()){
653
					GWT.log("Mark Lost in Transit to the order: " + order.getOrderId());
666
					GWT.log("Mark Lost in Transit to the order: " + order.getOrderId());
654
					eventbus.fireEvent(new LostInTransitEvent(order));
667
					eventbus.fireEvent(new LostInTransitEvent(order));
655
				}
668
				}
656
			}
669
			}
657
		});
670
		});
658
		
671
 
659
		provisionallyCapturePaymentForOrder.addClickHandler(new ClickHandler() {
672
		provisionallyCapturePaymentForOrder.addClickHandler(new ClickHandler() {
660
 
673
 
661
	        @Override
674
			@Override
662
	        public void onClick(ClickEvent event) {
675
			public void onClick(ClickEvent event) {
663
	            if(provisionallyCapturePaymentForOrder.isEnabled()) {
676
				if(provisionallyCapturePaymentForOrder.isEnabled()) {
664
	                GWT.log("Provisionally capturing payment for order: " + order.getOrderId());
677
					GWT.log("Provisionally capturing payment for order: " + order.getOrderId());
665
	                eventbus.fireEvent(new ProvisionalCaptureEvent(order));
678
					eventbus.fireEvent(new ProvisionalCaptureEvent(order));
666
	            }
679
				}
667
	        }
680
			}
668
	    });
681
		});
669
 
682
 
670
		refundOrder.addClickHandler(new ClickHandler() {
683
		refundOrder.addClickHandler(new ClickHandler() {
671
			
684
 
672
			@Override
685
			@Override
673
			public void onClick(ClickEvent event) {
686
			public void onClick(ClickEvent event) {
674
				if(refundOrder.isEnabled()){
687
				if(refundOrder.isEnabled()){
675
					RejectReasonBox box = new RejectReasonBox(eventbus, order, user);
688
					RejectReasonBox box = new RejectReasonBox(eventbus, order, user);
676
					//box.clear();
689
					//box.clear();
677
					box.center();
690
					box.center();
678
				}
691
				}
679
			}
692
			}
680
		});
693
		});
681
		
694
 
682
		addWeight.addClickHandler(new ClickHandler() {
695
		addWeight.addClickHandler(new ClickHandler() {
683
            
696
 
684
            @Override
697
			@Override
685
            public void onClick(ClickEvent event) {
698
			public void onClick(ClickEvent event) {
686
                if(addWeight.isEnabled()){
699
				if(addWeight.isEnabled()){
687
                    AddWeightBox box = new AddWeightBox(eventbus, order);
700
					AddWeightBox box = new AddWeightBox(eventbus, order);
688
                    box.center();
701
					box.center();
689
                }
702
				}
690
            }
703
			}
691
        });
704
		});
692
		
705
 
693
		changeColor.addClickHandler(new ClickHandler() {
706
		changeColor.addClickHandler(new ClickHandler() {
694
            
707
 
695
            @Override
708
			@Override
696
            public void onClick(ClickEvent event) {
709
			public void onClick(ClickEvent event) {
697
                if(changeColor.isEnabled()){
710
				if(changeColor.isEnabled()){
698
                    ChooseColorBox box = new ChooseColorBox(eventbus, order);
711
					ChooseColorBox box = new ChooseColorBox(eventbus, order);
699
                    box.center();
712
					box.center();
700
                }
713
				}
701
            }
714
			}
702
        });
715
		});
703
		
716
 
704
		addDelayReason.addClickHandler(new ClickHandler() {
717
		addDelayReason.addClickHandler(new ClickHandler() {
705
            
718
 
706
            @Override
719
			@Override
707
            public void onClick(ClickEvent event) {
720
			public void onClick(ClickEvent event) {
708
                AddDelayReasonBox box = new AddDelayReasonBox(eventbus, order);
721
				AddDelayReasonBox box = new AddDelayReasonBox(eventbus, order);
709
                box.center();
722
				box.center();
710
            }
723
			}
711
        });
724
		});
712
		
725
 
713
		markDelivered.addClickHandler(new ClickHandler() {
726
		markDelivered.addClickHandler(new ClickHandler() {
714
            
727
 
715
            @Override
728
			@Override
716
            public void onClick(ClickEvent event) {
729
			public void onClick(ClickEvent event) {
717
                MarkDeliveredBox box = new MarkDeliveredBox(eventbus, order);
730
				MarkDeliveredBox box = new MarkDeliveredBox(eventbus, order);
718
                box.center();
731
				box.center();
719
            }
732
			}
720
        });
733
		});
721
 
734
 
722
		markRtoInTransit.addClickHandler(new ClickHandler() {
735
		markRtoInTransit.addClickHandler(new ClickHandler() {
723
            
-
 
724
            @Override
-
 
725
            public void onClick(ClickEvent event) {
-
 
726
                eventbus.fireEvent(new MarkRtoInTransitEvent(order));
-
 
727
            }
-
 
728
        });
-
 
729
 
736
 
-
 
737
			@Override
-
 
738
			public void onClick(ClickEvent event) {
-
 
739
				eventbus.fireEvent(new MarkRtoInTransitEvent(order));
-
 
740
			}
-
 
741
		});
-
 
742
 
730
//		changeJacketNumber.addClickHandler(new ClickHandler() {
743
		//		changeJacketNumber.addClickHandler(new ClickHandler() {
731
//            
744
			//            
732
//            @Override
745
			//            @Override
733
//            public void onClick(ClickEvent event) {
746
			//            public void onClick(ClickEvent event) {
734
//            	ChangeJacketBox box = new ChangeJacketBox(eventbus, order);
747
				//            	ChangeJacketBox box = new ChangeJacketBox(eventbus, order);
735
//                box.center();
748
				//                box.center();
736
//            }
749
				//            }
737
//        });
750
			//        });
738
 
751
 
739
		unacceptOrder.addClickHandler(new ClickHandler() {
752
		unacceptOrder.addClickHandler(new ClickHandler() {
740
			
753
 
741
			@Override
754
			@Override
742
			public void onClick(ClickEvent event) {
755
			public void onClick(ClickEvent event) {
743
				if(unacceptOrder.isEnabled()){
756
				if(unacceptOrder.isEnabled()){
744
					UnacceptConfirmationBox box = new UnacceptConfirmationBox(eventbus, order);
757
					UnacceptConfirmationBox box = new UnacceptConfirmationBox(eventbus, order);
745
					box.center();				
758
					box.center();				
746
				}
759
				}
747
			}
760
			}
748
		});
761
		});
749
 
762
 
750
 
763
 
751
//		shiftWarehouse.addClickHandler(new ClickHandler() {
764
		//		shiftWarehouse.addClickHandler(new ClickHandler() {
752
//            
765
		//            
753
//            @Override
766
		//            @Override
754
//            public void onClick(ClickEvent event) {
767
		//            public void onClick(ClickEvent event) {
755
//                if(shiftWarehouse.isEnabled()){
768
		//                if(shiftWarehouse.isEnabled()){
756
//                    ChooseWarehouseBox box = new ChooseWarehouseBox(eventbus, order);
769
		//                    ChooseWarehouseBox box = new ChooseWarehouseBox(eventbus, order);
757
//                    box.center();
770
		//                    box.center();
758
//                }
771
		//                }
759
//            }
772
		//            }
760
//        });
773
		//        });
761
		
774
 
762
		splitFreebieOrder.addClickHandler(new ClickHandler() {
775
		splitFreebieOrder.addClickHandler(new ClickHandler() {
763
            
776
 
764
            @Override
777
			@Override
765
            public void onClick(ClickEvent event) {
778
			public void onClick(ClickEvent event) {
766
                if(splitFreebieOrder.isEnabled()){
779
				if(splitFreebieOrder.isEnabled()){
767
                    SplitFreebieOrderBox box = new SplitFreebieOrderBox(eventbus, order);
780
					SplitFreebieOrderBox box = new SplitFreebieOrderBox(eventbus, order);
768
                    box.center();
781
					box.center();
769
                }
782
				}
770
            }
783
			}
771
        });
784
		});
772
		
785
 
773
		splitEbayOrder.addClickHandler(new ClickHandler() {
786
		splitEbayOrder.addClickHandler(new ClickHandler() {
774
            
787
 
775
            @Override
788
			@Override
776
            public void onClick(ClickEvent event) {
789
			public void onClick(ClickEvent event) {
777
                if(splitEbayOrder.isEnabled()){
790
				if(splitEbayOrder.isEnabled()){
778
                    SplitEbayOrderBox box = new SplitEbayOrderBox(eventbus, order);
791
					SplitEbayOrderBox box = new SplitEbayOrderBox(eventbus, order);
779
                    box.center();
792
					box.center();
780
                }
793
				}
781
            }
794
			}
782
        });
795
		});
783
		
796
 
784
		changeFreebieItem.addClickHandler(new ClickHandler() {
797
		changeFreebieItem.addClickHandler(new ClickHandler() {
785
            
798
 
786
            @Override
799
			@Override
787
            public void onClick(ClickEvent event) {
800
			public void onClick(ClickEvent event) {
788
                if(changeFreebieItem.isEnabled()){
801
				if(changeFreebieItem.isEnabled()){
789
                    ChangeFreebieItemBox box = new ChangeFreebieItemBox(eventbus, order);
802
					ChangeFreebieItemBox box = new ChangeFreebieItemBox(eventbus, order);
790
                    box.center();
803
					box.center();
791
                }
804
				}
792
            }
805
			}
793
        });
806
		});
794
	}
807
	}
795
	
808
 
796
	private void implementMaskForAdmin(){
809
	private void implementMaskForAdmin(){
797
		unacceptOrder.setEnabled(false);
810
		unacceptOrder.setEnabled(false);
798
		switch(mask){
811
		switch(mask){
799
        case CAPTURE_IN_PROCESS:
812
		case CAPTURE_IN_PROCESS:
800
            maskButtonsForAdmin(false, false, false, false, false, true, true, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
813
			maskButtonsForAdmin(false, false, false, false, false, true, true, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
801
            break;
814
			break;
802
        case VERIFICATION_PENDING:
815
		case VERIFICATION_PENDING:
803
        case NEW:
816
		case NEW:
804
        case NO_STOCK:
817
		case NO_STOCK:
805
        case BILL:
818
		case BILL:
806
        	maskButtonsForAdmin(false, false, false, false, false, true, false, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
819
			maskButtonsForAdmin(false, false, false, false, false, true, false, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
807
        	break;
820
			break;
808
        case ACCEPT:
821
		case ACCEPT:
809
        	maskButtonsForAdmin(false, false, false, false, false, true, false, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
822
			maskButtonsForAdmin(false, false, false, false, false, true, false, false); //Allow the OM to refund a COD order or an order with low inventory or when a customer calls or writes to cancel an order.
810
        	unacceptOrder.setEnabled(true);
823
			unacceptOrder.setEnabled(true);
811
        	break;
824
			break;
812
		case DELIVERED:
825
		case DELIVERED:
813
			maskButtonsForAdmin(false, false, false, false, false, true, false, false);	//Allow the OM to flag and request pickup.
826
			maskButtonsForAdmin(false, false, false, false, false, true, false, false);	//Allow the OM to flag and request pickup.
814
			break;
827
			break;
815
		case DOA_REQUEST_AUTHORIZED:	
828
		case DOA_REQUEST_AUTHORIZED:	
816
			maskButtonsForAdmin(true, true, false, false, false, true, false, false);	//Allow the OM to flag and request pickup.
829
			maskButtonsForAdmin(true, true, false, false, false, true, false, false);	//Allow the OM to flag and request pickup.
Line 828... Line 841...
828
		default:
841
		default:
829
			maskButtonsForAdmin(false, false, false, false, false, true, false, false);	//Unknown state. Let's not allow any untoward actions.
842
			maskButtonsForAdmin(false, false, false, false, false, true, false, false);	//Unknown state. Let's not allow any untoward actions.
830
			break;
843
			break;
831
		}
844
		}
832
	}
845
	}
833
	
846
 
834
	private void maskButtonsForAdmin(boolean flag, boolean reqPickup, boolean authPickup, boolean reship,
847
	private void maskButtonsForAdmin(boolean flag, boolean reqPickup, boolean authPickup, boolean reship,
835
	                                 boolean refund, boolean printInv, boolean provisionallyCapturePayment, boolean lostInTransit)
848
			boolean refund, boolean printInv, boolean provisionallyCapturePayment, boolean lostInTransit)
836
	{
849
	{
837
		flagOrder.setEnabled(flag);
850
		flagOrder.setEnabled(flag);
838
		requestPickup.setEnabled(reqPickup);
851
		requestPickup.setEnabled(reqPickup);
839
		authorizePickup.setEnabled(authPickup);
852
		authorizePickup.setEnabled(authPickup);
840
		reshipOrder.setEnabled(reship);
853
		reshipOrder.setEnabled(reship);
841
		provisionallyCapturePaymentForOrder.setEnabled(provisionallyCapturePayment);
854
		provisionallyCapturePaymentForOrder.setEnabled(provisionallyCapturePayment);
842
		refundOrder.setEnabled(refund);
855
		refundOrder.setEnabled(refund);
843
		printInvoice.setEnabled(printInv);
856
		printInvoice.setEnabled(printInv);
844
		markLostInTransit.setEnabled(lostInTransit);
857
		markLostInTransit.setEnabled(lostInTransit);
845
	}
858
	}
846
	
859
 
847
	private void loadOrderDetails(){
860
	private void loadOrderDetails(){
848
		if(transaction.getDealText()!=null &&!transaction.getDealText().isEmpty()) {
861
		if(transaction.getDealText()!=null &&!transaction.getDealText().isEmpty()) {
849
			orderDetails1.add(getHorizontalPanel("DEAL TEXT:    ", transaction.getDealText()));
862
			orderDetails1.add(getHorizontalPanel("DEAL TEXT:    ", transaction.getDealText()));
850
		}
863
		}
851
		orderDetails1.add(getHorizontalPanel("PRODUCT GROUP: ", transaction.getProductGroup()));
864
		orderDetails1.add(getHorizontalPanel("PRODUCT GROUP: ", transaction.getProductGroup()));
852
		orderDetails1.add(getHorizontalPanel("BRAND:   	     ", transaction.getBrand()));
865
		orderDetails1.add(getHorizontalPanel("BRAND:   	     ", transaction.getBrand()));
853
		orderDetails1.add(getHorizontalPanel("MODEL:         ", getModelDisplayName(transaction)));
866
		orderDetails1.add(getHorizontalPanel("MODEL:         ", getModelDisplayName(transaction)));
854
		orderDetails1.add(getHorizontalPanel("Item ID:       ", transaction.getItemId()+""));
867
		orderDetails1.add(getHorizontalPanel("Item ID:       ", transaction.getItemId()+""));
855
			
868
 
856
		orderDetails1.add(getHorizontalPanel("DELAY REASON:  ", transaction.getDelayReason()));
869
		orderDetails1.add(getHorizontalPanel("DELAY REASON:  ", transaction.getDelayReason()));
857
		orderDetails1.add(getHorizontalPanel("ALERT:         ", transaction.getAlert().toString()));
870
		orderDetails1.add(getHorizontalPanel("ALERT:         ", transaction.getAlert().toString()));
858
		
871
 
859
		orderDetails2.add(getHorizontalPanel("NAME:          ", transaction.getCustomerName()));
872
		orderDetails2.add(getHorizontalPanel("NAME:          ", transaction.getCustomerName()));
860
		orderDetails2.add(getHorizontalPanel("ADDRESS:       ", getDisplayAddress(transaction)));
873
		orderDetails2.add(getHorizontalPanel("ADDRESS:       ", getDisplayAddress(transaction)));
861
		orderDetails2.add(getHorizontalPanel("MOBILE NUMBER: ", transaction.getCustomerMobileNumber()));
874
		orderDetails2.add(getHorizontalPanel("MOBILE NUMBER: ", transaction.getCustomerMobileNumber()));
862
		if(transaction.getExtraInfo()!=null && !transaction.getExtraInfo().isEmpty()) {
875
		if(transaction.getExtraInfo()!=null && !transaction.getExtraInfo().isEmpty()) {
863
			orderDetails2.add(getHorizontalPanel("EXTRA INFO: ", transaction.getExtraInfo()));
876
			orderDetails2.add(getHorizontalPanel("EXTRA INFO: ", transaction.getExtraInfo()));
864
		}
877
		}
865
		
878
 
866
		orderDetails3.add(getHorizontalPanel("TOTAL WEIGHT:      ", transaction.getTotalWeight()+""));
879
		orderDetails3.add(getHorizontalPanel("TOTAL WEIGHT:      ", transaction.getTotalWeight()+""));
867
		orderDetails3.add(getHorizontalPanel("TOTAL AMOUNT(Rs):  ", transaction.getTotalAmount()+""));
880
		orderDetails3.add(getHorizontalPanel("TOTAL AMOUNT(Rs):  ", transaction.getTotalAmount()+""));
868
        orderDetails3.add(getHorizontalPanel("FULFIL FROM:       ", transaction.getPickFromWarehouse()+""));
881
		orderDetails3.add(getHorizontalPanel("FULFIL FROM:       ", transaction.getPickFromWarehouse()+""));
869
        orderDetails3.add(getHorizontalPanel("ORDER TYPE:       ", transaction.getOrderType()+""));
882
		orderDetails3.add(getHorizontalPanel("ORDER TYPE:       ", transaction.getOrderType()+""));
870
        if(transaction.getQuantity()>1)
883
		if(transaction.getQuantity()>1)
871
        	orderDetails3.add(getHorizontalPanel("BULK ORDER:          ", transaction.getQuantity()+""));
884
			orderDetails3.add(getHorizontalPanel("BULK ORDER:          ", transaction.getQuantity()+""));
872
        if(transaction.getFreebieItemId()>0)
885
		if(transaction.getFreebieItemId()>0)
873
        	orderDetails3.add(getHorizontalPanel("FREEBIE ITEMID:       ", transaction.getFreebieItemId()+""));
886
			orderDetails3.add(getHorizontalPanel("FREEBIE ITEMID:       ", transaction.getFreebieItemId()+""));
874
        if(transaction.getLogisticsTransactionId()!=null && !transaction.getLogisticsTransactionId().isEmpty()){
887
		if(transaction.getLogisticsTransactionId()!=null && !transaction.getLogisticsTransactionId().isEmpty()){
875
        	orderDetails3.add(getHorizontalPanel("MASTER ORDER ID:       ", transaction.getLogisticsTransactionId()+""));
888
			orderDetails3.add(getHorizontalPanel("MASTER ORDER ID:       ", transaction.getLogisticsTransactionId()+""));
876
        }
889
		}
877
        
890
 
878
		orderDetails4.add(getHorizontalPanel("AIRWAY BILL NO:  ", transaction.getAirwayBillNo()));
891
		orderDetails4.add(getHorizontalPanel("AIRWAY BILL NO:  ", transaction.getAirwayBillNo()));
879
		orderDetails4.add(getHorizontalPanel("INVOICE NUMBER:  ", transaction.getInvoiceNumber()));
892
		orderDetails4.add(getHorizontalPanel("INVOICE NUMBER:  ", transaction.getInvoiceNumber()));
880
		orderDetails4.add(getHorizontalPanel("JACKET NUMBER:   ", transaction.getJacketNumber() + ""));
893
		orderDetails4.add(getHorizontalPanel("JACKET NUMBER:   ", transaction.getJacketNumber() + ""));
881
        orderDetails4.add(getHorizontalPanel("ITEM NO:         ", getDisplayNameForNullableString(transaction.getItemNumber())));
894
		orderDetails4.add(getHorizontalPanel("ITEM NO:         ", getDisplayNameForNullableString(transaction.getItemNumber())));
882
        orderDetails4.add(getHorizontalPanel("IMEI NO:         ", transaction.getImeiNumber() + ""));
895
		orderDetails4.add(getHorizontalPanel("IMEI NO:         ", transaction.getImeiNumber() + ""));
883
 
896
 
884
		orderDetails4.add(getHorizontalPanel("BILLED BY:       ", transaction.getBilledBy()));		
897
		orderDetails4.add(getHorizontalPanel("BILLED BY:       ", transaction.getBilledBy()));		
885
	}
898
	}
886
 
899
 
887
	private HorizontalPanel getHorizontalPanel(String labelText, String valueText) {
900
	private HorizontalPanel getHorizontalPanel(String labelText, String valueText) {
Line 893... Line 906...
893
		hpanel.setCellWidth(hpanel.getWidget(1), "128px");
906
		hpanel.setCellWidth(hpanel.getWidget(1), "128px");
894
		hpanel.getWidget(0).setStyleName(selectionStyle.blueLabel());
907
		hpanel.getWidget(0).setStyleName(selectionStyle.blueLabel());
895
		hpanel.getWidget(1).setStyleName(selectionStyle.greenLabel());
908
		hpanel.getWidget(1).setStyleName(selectionStyle.greenLabel());
896
		return hpanel;
909
		return hpanel;
897
	}
910
	}
898
	
911
 
899
	private String getModelDisplayName(Order order){
912
	private String getModelDisplayName(Order order){
900
		String modelName = "";
913
		String modelName = "";
901
		if(order.getModelName()!=null)
914
		if(order.getModelName()!=null)
902
			modelName = order.getModelName() + " ";
915
			modelName = order.getModelName() + " ";
903
		if(order.getModelNumber()!=null)
916
		if(order.getModelNumber()!=null)
904
			modelName = modelName + order.getModelNumber();
917
			modelName = modelName + order.getModelNumber();
905
		if(order.getColor()!=null)
918
		if(order.getColor()!=null)
906
			modelName = modelName + " (" + order.getColor() + ")";
919
			modelName = modelName + " (" + order.getColor() + ")";
907
		return modelName;
920
		return modelName;
908
	}
921
	}
909
	
922
 
910
	private String getDisplayAddress(Order order){
923
	private String getDisplayAddress(Order order){
911
		StringBuilder displayAddress = new StringBuilder();
924
		StringBuilder displayAddress = new StringBuilder();
912
		displayAddress.append(order.getCustomerAddress1() + "\n");
925
		displayAddress.append(order.getCustomerAddress1() + "\n");
913
		displayAddress.append(order.getCustomerAddress2() + "\n");
926
		displayAddress.append(order.getCustomerAddress2() + "\n");
914
		displayAddress.append(order.getCustomerCity() + "\n");
927
		displayAddress.append(order.getCustomerCity() + "\n");
915
		displayAddress.append(order.getCustomerState() + "   PIN - " +  order.getCustomerPincode());
928
		displayAddress.append(order.getCustomerState() + "   PIN - " +  order.getCustomerPincode());
916
		return displayAddress.toString();
929
		return displayAddress.toString();
917
	}
930
	}
918
 
931
 
919
    private String getDisplayNameForNullableString(String s) {
932
	private String getDisplayNameForNullableString(String s) {
920
        if (s == null)
933
		if (s == null)
921
            return "";
934
			return "";
922
        return s;
935
		return s;
923
    }
936
	}
924
    
937
 
925
    
938
 
926
}
939
}