Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
5714 rajveer 1
<html>
2
<head>
3
	<title>Hotspot Store Dashboard for Saholic Orders</title>
4
</head>
5678 rajveer 5
<script type="text/javascript" src="/Support/js/jquery-1.4.2.js"></script>
6
<script type="text/javascript" src="/Support/js/jquery.validate.js"></script>
5693 rajveer 7
<script type="text/javascript" src="/Support/js/jquery.colorbox-min.js"></script>
5883 anupam.sin 8
<script type="text/javascript" src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/md5.js"></script>
5678 rajveer 9
 
5723 rajveer 10
<link rel="stylesheet" href="/Support/css/colorbox.css" type="text/css" media="all" /> 
11
<link rel="stylesheet" href="/Support/css/lightbox_inline.css" type="text/css" media="all" />
5693 rajveer 12
 
5678 rajveer 13
<script type="text/javascript">
5693 rajveer 14
$(function() {
5714 rajveer 15
 
5775 rajveer 16
	$('#selectreason').change(function(){
17
		if($(this).val() == "Other"){
18
			$('#reason').show();
19
			$('#reason').addClass('required');
20
		}else{
21
			$('#reason').hide();
22
			$('#reason').removeClass('required');
23
			$('label.error').remove();
24
		}
25
	});
5714 rajveer 26
 
5775 rajveer 27
 
5714 rajveer 28
	$('.receiveform').live('click', function() {
5883 anupam.sin 29
		var jacketnumber = $('input[name=jacketnumber]',$(this).parent()).val();
30
		var ojacketnumber = $('input[name=jacketnumber]',$(this).parent()).attr('jacketnumber');
5714 rajveer 31
		if(jacketnumber != ojacketnumber){
32
			alert("Jacket Number does not match. Enter correct jacket number.");
33
			return false; 
34
		}
5883 anupam.sin 35
		var orderid = $('input[name=orderid]',$(this).parent()).val(); 
5714 rajveer 36
		jQuery.ajax({
37
		  type: "POST",
38
		  url: "$request.getContextPath()/pickup-store",
39
		  data: "orderid=" + orderid + "&action=markreceived",
40
		  success: function(msg){
41
			window.location = '$request.getContextPath()/pickup-store/receive';
42
		  }
43
		});
44
	});
5766 rajveer 45
    $('#jacketnumber').live('blur', function() {
5883 anupam.sin 46
		var orderid = $("#orderid").val();
5766 rajveer 47
		if($('#jacketnumber').val() == ""){
48
			alert("Jacket Number cannot be left empty !!!");
49
			//$("#jacketnumber").focus();
5693 rajveer 50
			return false;
51
		}
5883 anupam.sin 52
		var jacketnumber = $('#'+orderid + ' td')[4].innerHTML;
5766 rajveer 53
		if($('#jacketnumber').val() != jacketnumber){
54
			alert("Jacket Number does not match !!!");
55
			//$("#jacketnumber").focus();
5693 rajveer 56
			return false;
57
		}
5741 rajveer 58
 
5883 anupam.sin 59
		var cod = $('input[name=selectedorder]:checked').attr('iscod');
5766 rajveer 60
		if(cod=='true'){
5741 rajveer 61
			$("#codblock").css("display","block");
62
			$('#codblock').attr('disabled', '');
63
		}else{
64
			$("#codblock").css("display","none");
65
			$('#codblock').attr('disabled', 'disabled');
66
			$("#secretcodeblock").css("display","block");
67
		}
5766 rajveer 68
		$("#jacketnumber").attr('readonly', 'readonly');
5693 rajveer 69
    });
70
	$('#amount').live('blur', function() {
5883 anupam.sin 71
		var orderid = $("#orderid").val();
5693 rajveer 72
		if($('#amount').val() == ""){
73
			alert("Amount cannot be left empty !!!");
5741 rajveer 74
			//$("#amount").focus();
5693 rajveer 75
			return false;
76
		}
5883 anupam.sin 77
		var amount = $('#'+orderid + ' td')[5].innerHTML
5693 rajveer 78
		if($('#amount').val() != amount){
79
			alert("Amount does not match !!!");
5741 rajveer 80
			//$("#amount").focus();
5693 rajveer 81
			return false;
82
		}
5741 rajveer 83
		$("#secretcodeblock").css("display","block");
5766 rajveer 84
		$("#amount").attr('readonly', 'readonly');
5693 rajveer 85
    });
5714 rajveer 86
	$('#secretcode').live('blur', function() {
5883 anupam.sin 87
		var orderid = $("#orderid").val();
5714 rajveer 88
		if($('#secretcode').val() == ""){
89
			alert("Secret code cannot be left empty !!!");
5741 rajveer 90
			//$("#secretcode").focus();
5714 rajveer 91
			return false;
92
		}
5883 anupam.sin 93
		var secretcode = $('#'+orderid + ' td')[6].innerHTML
94
		if(CryptoJS.MD5($('#secretcode').val()) != secretcode){
5714 rajveer 95
			alert("Secret code does not match !!!");
5741 rajveer 96
			//$("#secretcode").focus();
5714 rajveer 97
			return false;
98
		}
5741 rajveer 99
		$("#receiverblock").css("display","block");
100
		$('input[name=deliverybutton]').attr("disabled", "");
5766 rajveer 101
		$("#secretcode").attr('readonly', 'readonly');
5714 rajveer 102
    });
5693 rajveer 103
});
104
 
5766 rajveer 105
 
106
function openCancelDialogue(orderid){
107
 
5883 anupam.sin 108
		var radBtn = '<input type="hidden" name="orderid" value=' + orderid + ' />';
5766 rajveer 109
 
110
		$(".cancelReasonLightBox .content").html(radBtn);
111
 
112
		jQuery.fn.colorbox({
113
			inline:true, 
114
			href:".cancelReasonLightBox", 
115
			open:true, 
116
			onComplete:function(){
117
				var posLeft = (document.documentElement.clientWidth / 2) - (parseInt($('#colorbox').css('width')) / 2);
118
				var posTop = (document.documentElement.clientHeight / 2) - (parseInt($('#colorbox').css('height')) / 2);
119
 
120
				$('#colorbox').css('top', posTop);
121
				$('#colorbox').css('left', posLeft);
122
			}
123
		});
124
}
125
 
126
function openDialogue(provider, fillAWB){
127
 
5883 anupam.sin 128
		var radBtn = '<input type="hidden" id="providerId" value=' + provider+ ' />';
5766 rajveer 129
 
130
		$('.log-' + provider).each(function() {
5883 anupam.sin 131
			var orderId = $('td', $(this))[0].innerHTML;
5766 rajveer 132
			var oldAWB = '';
133
			var disableAWB = '';
134
			if(fillAWB){
135
				oldAWB =  $('td', $(this))[4].innerHTML;
136
				disableAWB = 'readonly';
137
			}
5775 rajveer 138
			radBtn = radBtn + '<span class="rorder"><input type="checkbox" name="oid" value="' + orderId + '" checked/>' + orderId +'<input type="text" name="awb" ' + disableAWB + ' value="' + oldAWB + '"/></br></span>'; 
5766 rajveer 139
 
140
 		});
141
 
142
		$(".colorSelLightBoxColor .content").html(radBtn);
143
 
144
		jQuery.fn.colorbox({
145
			inline:true, 
146
			href:".colorSelLightBoxColor", 
147
			open:true, 
148
			onComplete:function(){
149
				var posLeft = (document.documentElement.clientWidth / 2) - (parseInt($('#colorbox').css('width')) / 2);
150
				var posTop = (document.documentElement.clientHeight / 2) - (parseInt($('#colorbox').css('height')) / 2);
151
 
152
				$('#colorbox').css('top', posTop);
153
				$('#colorbox').css('left', posLeft);
154
			}
155
		});
156
}
157
 
5741 rajveer 158
function displayForm(orderId){
5693 rajveer 159
	$("#myform").css("display","block");
160
	$("#orderid").val(orderId);
161
}
162
 
163
function printManifest(){
5714 rajveer 164
	var orderIds = '';
165
	var awbs = '';
5766 rajveer 166
	var retval = true;
5714 rajveer 167
	$('.rorder').each(function() {
168
		$('input[name=oid]:checked', $(this)).each(function() {
169
			 var awb = $('input[name=awb]', $(this).parent()).val();
170
			 if(awb == ""){
5766 rajveer 171
				retval = false;
5714 rajveer 172
			 }
173
    		if(orderIds == ''){
174
    			orderIds = $(this).val();
175
				awbs = awb;
176
    		}else{
177
    			orderIds = orderIds + ':' + $(this).val();
178
				awbs = awbs + ':' + awb;
179
    		}
180
		});
181
	});
182
 
5766 rajveer 183
	if(!retval){
184
		alert("Airway Bill Number can not be left empty for selected orders.");
185
		return retval;
186
	}
5724 rajveer 187
 
5693 rajveer 188
	$('#manifestbutton').attr('disabled', 'disabled');
189
	$('#confirmbutton').attr('disabled', '');
190
 
191
	$('input[name=oid]').each(function() {
192
		$(this).attr('disabled', 'disabled');
193
	});
194
 
5714 rajveer 195
	$('input[name=awb]').each(function() {
196
		$(this).attr('disabled', 'disabled');
197
	});
198
 
5883 anupam.sin 199
	var provider=$('#providerId').val();
200
	var orderIds='';
5693 rajveer 201
	$('input[name=oid]:checked').each(function() {
5678 rajveer 202
		if(orderIds == ''){
203
			orderIds = $(this).val();
204
		}else{
205
			orderIds = orderIds + ':' + $(this).val();
206
		}
207
	});
208
	if(orderIds == ''){
209
		alert('No order is selected !!!');
210
		return;
211
	}
5714 rajveer 212
	url = '/Support/manifest?providerID=' + provider + '&storeId=$action.getStoreId()&orderIds=' + orderIds + '&awbs=' + awbs;
5678 rajveer 213
	window.open(url);
214
}
215
 
5693 rajveer 216
 
217
 
5678 rajveer 218
function confirmReturns(provider){
5693 rajveer 219
	provider=$('#providerId').val();
5714 rajveer 220
	var orderIds = '';
221
	var awbs = '';
222
	$('.rorder').each(function() {
223
		$('input[name=oid]:checked', $(this)).each(function() {
224
			 var awb = $('input[name=awb]', $(this).parent()).val();
225
			 if(awb == ""){
226
			 	alert("Airway Bill Number can not be left empty for selected orders.");
227
				return false;
228
			 }
229
    		if(orderIds == ''){
230
    			orderIds = $(this).val();
231
				awbs = awb;
232
    		}else{
233
    			orderIds = orderIds + ':' + $(this).val();
234
				awbs = awbs + ':' + awb;
235
    		}
236
		});
5678 rajveer 237
	});
238
	if(orderIds == ''){
239
		alert('No order is selected !!!');
5766 rajveer 240
		return false;
5678 rajveer 241
	}
242
 
5693 rajveer 243
	jQuery.ajax({
244
		  type: "POST",
245
		  url: "$request.getContextPath()/pickup-store",
5714 rajveer 246
		  data: "orderIds="+orderIds+"&providerID="+provider+"&action=markreturned&awbs="+awbs,
5693 rajveer 247
		  success: function(msg){
248
			window.location = '$request.getContextPath()/pickup-store/return';
249
		  }
250
	});
251
 
5678 rajveer 252
}
253
</script>
5693 rajveer 254
 
255
 
256
 
257
 
5678 rajveer 258
<style type="text/css">
259
.error {
260
color: red;
261
}
262
</style>
263
 
264
<a href="$request.getContextPath()/pickup-store">Back to Main Menu</a>
265
 
266
<div style="color:red">$action.getError()</div>
267
#if($action.getId() == "receive")
268
#set($orders=$action.getReceivePendingOrders())
269
<h3>Receive Pending Orders</h3>
270
</br>
271
<table border="1">
272
<tr>
273
<th>Order Id</th>
274
<th>Customer Name</th>
275
<th>Product</th>
276
<th>AWB Number</th>
277
<th></th>
5714 rajveer 278
<th></th>
5678 rajveer 279
</tr>
280
 
281
#foreach($order in $orders)
282
#set($lineitem = $order.getLineitems().get(0))
283
<tr>
284
<td>$order.getId()</td>
285
<td>$order.getCustomer_name()</td>
286
<th>$lineitem.getBrand() #if($lineitem.getModel_name())$lineitem.getModel_name()#end #if($lineitem.getModel_number())$lineitem.getModel_number()#end #if($lineitem.getColor())$lineitem.getColor()#end</th>
287
<td>$order.getAirwaybill_no()</td>
5714 rajveer 288
<td>
289
	<!--action="$request.getContextPath()/pickup-store"-->
290
 
291
<div>
292
<p>
293
Jacket Number<input id="jacketnumber" name="jacketnumber" value="" jacketnumber="$order.getJacket_number()" type="text" class="required">
5678 rajveer 294
<input id="orderid" name="orderid" value="$order.getId()" type="hidden">
295
<input id="action" name="action" value="markreceived" type="hidden">
5714 rajveer 296
<input type="submit" class="receiveform" value="Mark Received">
297
<p>
298
</div>
299
 
300
</td>
5766 rajveer 301
<td><div><input id="orderid" name="orderid" value="$order.getId()" type="hidden"><input type="button" class="rejectform" onclick=openCancelDialogue($order.getId()) value="Do Not Receive"></div></td>
5678 rajveer 302
</tr>
303
#end
304
 
305
</table>
306
 
307
#elseif($action.getId() == "deliver")
308
 
5766 rajveer 309
<h3>Orders Pending for Delivery to Customer</h3>
5678 rajveer 310
#set($receivedorders=$action.getReceivedAtStoreOrders())
311
 
312
<table border="1">
313
<tr>
314
<th>Order Id</th>
5714 rajveer 315
<th>Order Type</th>
5678 rajveer 316
<th>Customer Name</th>
317
<th>Product</th>
5766 rajveer 318
<th style="display:none">Jacket Number</th>
5693 rajveer 319
<th style="display:none">Amount</th>
320
<th style="display:none">Secret Code</th>
5766 rajveer 321
<th>Amount to Collect</th>
322
<th>AWB Number</th>
5678 rajveer 323
<th></th>
324
</tr>
325
 
326
#foreach($receivedorder in $receivedorders)
327
#set($lineitem = $receivedorder.getLineitems().get(0))
5741 rajveer 328
#set($Double=$receivedorder.getTotal_amount())
5693 rajveer 329
<tr id="$receivedorder.getId()">
5678 rajveer 330
<td>$receivedorder.getId()</td>
5714 rajveer 331
<td>#if($receivedorder.isCod())COD#else Prepaid #end</td>
5678 rajveer 332
<td>$receivedorder.getCustomer_name()</td>
5693 rajveer 333
<td>$lineitem.getBrand() #if($lineitem.getModel_name())$lineitem.getModel_name()#end #if($lineitem.getModel_number())$lineitem.getModel_number()#end #if($lineitem.getColor())$lineitem.getColor()#end</td>
5766 rajveer 334
<td style="display:none">$receivedorder.getJacket_number()</td>
5741 rajveer 335
<td style="display:none">$Double.intValue()</td>
5693 rajveer 336
<td style="display:none">$action.getSecretCode($receivedorder.getId())</td>
5766 rajveer 337
<td>#if($receivedorder.isCod())$Double.intValue()#else 0 #end</td>
338
<td>$receivedorder.getAirwaybill_no()</td>
5693 rajveer 339
<td>
5741 rajveer 340
	<input type="radio" name="selectedorder" iscod=$receivedorder.isCod() value="$receivedorder.getId()" onclick="displayForm($receivedorder.getId())" />
5693 rajveer 341
</td>
342
</tr>
343
#end
344
 
345
</table>
346
 
347
<br>
348
<br>
349
<br>
350
<form name="myform" id="myform" style="display:none" action="$request.getContextPath()/pickup-store" method="POST">
351
<input id="orderid" name="orderid" value="" type="hidden">
5766 rajveer 352
Jacket Number &nbsp;&nbsp; <input id="jacketnumber" name="jacketnumber" class="required" value="" type="text"><br />
5693 rajveer 353
<div id="codblock" style="display:none">
5741 rajveer 354
Amount Collected &nbsp;&nbsp; <input id="amount" name="amount" class="required" value="0" type="text"><br />
5724 rajveer 355
Payment Type &nbsp;&nbsp; <input type="radio" name="paymenttype" class="required" value="Cash" checked /> Cash
356
	                      <input type="radio" name="paymenttype" class="required" value="Card" /> Card <br />
5693 rajveer 357
</div>
5741 rajveer 358
<div id="secretcodeblock" style="display:none">
5693 rajveer 359
Secret Code &nbsp;&nbsp; <input id="secretcode" name="secretcode" class="required" value="" type="text"><br />
5741 rajveer 360
</div>
361
<div id="receiverblock" style="display:none">
5693 rajveer 362
Receiver &nbsp;&nbsp; <input id="receiver" name="receiver" class="required" value="" type="text"><br />
5741 rajveer 363
</div>
5678 rajveer 364
</b>
365
<input id="action" name="action" value="markdelivered" type="hidden">
5741 rajveer 366
<br><input type="submit" name="deliverybutton" disabled value="Mark Delivered"><br>
5678 rajveer 367
</form>
368
 
369
 
370
<script type="text/javascript" charset="utf-8">
371
            $(function(){
372
                $("form#myform").validate();
5714 rajveer 373
           	});
374
</script>
5678 rajveer 375
 
5766 rajveer 376
<ul> Instructions
377
	<li>Get copy of photo id card from customer.</li>
378
	<li>Ask secret code from customer.</li>
379
	<li>Take dispatch advice from packet and get it signed by customer. Keep it with you.</li>
380
</ul> 
5678 rajveer 381
 
5693 rajveer 382
 
5766 rajveer 383
 
5678 rajveer 384
#elseif($action.getId() == "return")
385
<h3>Return Pending Orders</h3>
5714 rajveer 386
 
5766 rajveer 387
<ul> Instructions
388
	<li>For runner, print manifest, get it signed by runner and keep it with you.</li>
389
	<li>For courier, get copy of the slip from courier person and keep it with you.</li>
390
</ul> 
391
 
5678 rajveer 392
#set($receivedorders=$action.getReceivedAtStoreOrders())
5766 rajveer 393
 
394
#set($providers=$action.getAllProviders())
395
#foreach($provider in $providers)
5714 rajveer 396
<hr />
5766 rajveer 397
<h5>$provider.getName()</h5>
5678 rajveer 398
<table border="1">
399
<tr>
400
<th>Order Id</th>
401
<th>Customer Name</th>
402
<th>Product</th>
5693 rajveer 403
<th style="display:none">Provider Id</th>
5766 rajveer 404
<th style="display:none">AWB Number</th>
5678 rajveer 405
</tr>
406
 
407
#foreach($receivedorder in $receivedorders)
5766 rajveer 408
#if($receivedorder.getStatus().getValue() == 60 && $receivedorder.getLogistics_provider_id() == $provider.getId()) 
5678 rajveer 409
	#set($lineitem = $receivedorder.getLineitems().get(0))
5693 rajveer 410
	<tr class="log-$receivedorder.getLogistics_provider_id()">
5678 rajveer 411
		<td>$receivedorder.getId()</td>
412
		<td>$receivedorder.getCustomer_name()</td>
5766 rajveer 413
		<td>$lineitem.getBrand() #if($lineitem.getModel_name())$lineitem.getModel_name()#end #if($lineitem.getModel_number())$lineitem.getModel_number()#end #if($lineitem.getColor())$lineitem.getColor()#end</td>
414
		<td style="display:none">$receivedorder.getLogistics_provider_id()</td>
415
		<td style="display:none">$receivedorder.getAirwaybill_no()</td>
5678 rajveer 416
	</tr>
417
#end
418
#end
419
 
420
</table>
5714 rajveer 421
 
5678 rajveer 422
</br>
5775 rajveer 423
<button type="button" onclick="openDialogue($provider.getId(), #if($provider.getPickup().getValue() == 1) true #else false #end);" >Return orders for $provider.getName()</button>
5678 rajveer 424
</br>
5714 rajveer 425
#end
426
 
427
#elseif($action.getId() == "report")
428
 
429
<h3>Collection Report</h3>
430
<p>Specify the date range (dd/MM/yyyy):</p>
431
<form action="$request.getContextPath()/pickup-store" method="post">
432
	<div class="register-row">
433
		<label><span>Start Date:</span></label>
434
        <div class="imgTextBox textbox-image">
435
			<input type="text" class="textbox" value="" name="startDate" id="datepicker" />
436
        </div>
437
        <div class="clearBoth"></div>	
438
     </div>
439
	 <br/>
440
	 <div class="register-row">
441
		<label><span>End Date:</span></label>
442
        <div class="imgTextBox textbox-image">
443
			<input type="text" class="textbox" value="" name="endDate" id="datepicker1" />
444
        </div>
445
        <div class="clearBoth"></div>	
446
     </div>
447
	 <br/>
448
	 <input id="action" name="action" value="getreport" type="hidden">
449
	 <div>
450
		<input name="submit" type="submit" value="Get Report"/>
451
	 </div>
452
</form>
453
 
454
 
5678 rajveer 455
#end
5693 rajveer 456
 
457
 
458
	<!-- color by color lightbox -->
459
	<div style="display:none;">
460
		<div class="colorSelLightBoxColor">
461
			<form name="frmColorSelName" method="post" action="#">
5766 rajveer 462
				<h1>Select Order and enter new AWB number.</h1>
5693 rajveer 463
				<div class="content">
464
				</div>
465
				<div class="bigImgButton yellow-image">
466
					<input id="manifestbutton" value="Print Manifest" type="button" class="button" onclick="printManifest();" />
467
					<input id="confirmbutton" value="Confirm" type="button" class="button" disabled onclick="confirmReturns();" />
468
				</div>
469
				<div class="clearBoth"></div>
470
			</form>
471
		</div>
472
	</div>
473
	<!-- /color by color lightbox -->
5766 rajveer 474
 
475
 
476
		<!-- color by color lightbox -->
477
	<div style="display:none;">
5775 rajveer 478
		<div style="height:150px;" class="cancelReasonLightBox">
479
			<form id="frmColorSelName" name="frmColorSelName" method="post" action="$request.getContextPath()/pickup-store">
480
				<h4>Select reason and confirm</h4>
5766 rajveer 481
				<div class="content">
482
				</div>
483
				<div class="bigImgButton yellow-image">
484
					<input id="action" name="action" value="markrejected" type="hidden">
5775 rajveer 485
					<select style="width:250px;" id="selectreason" name="selectreason">
486
						<option>Jacket tampered.</option>
487
						<option>Jacket number does not match.</option>
488
						<option>Dispatch advice not legible.</option>
489
						<option>Packet damaged.</option>
490
						<option>Other</option>
491
                    </select>
492
					</br>
493
					</br>
494
					<input  style="display:none" type="text" id="reason" name="reason"/>
495
					</br>
5766 rajveer 496
					<input type="submit" value="Confirm">
497
				</div>
498
				<div class="clearBoth"></div>
499
			</form>
500
		</div>
501
	</div>
502
	<!-- /color by color lightbox -->
503
 
504
 
5775 rajveer 505
<script type="text/javascript" charset="utf-8">
506
	$(function(){
507
    	$("form#frmColorSelName").validate();
508
	});
509
</script>
510
 
5714 rajveer 511
</html>