Subversion Repositories SmartDukaan

Rev

Rev 23772 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
23405 amit.gupta 1
$(function() {
2
	$("a.create_indent").live('click', function() {
3
		loadIndent("main-content");
4
	});
5
	$("a.in_process_indent").live('click', function() {
6
		loadInprocessIndent("main-content");
7
	});
8
 
9
	$("#entire-catalog-table input").live(
10
		{
11
			change: function(){
12
				var itemId = parseInt($(this).data("item-id"));
13
				var sellingPrice = parseInt($(this).data("selling-price"));
14
				var quantity = parseInt($(this).val());
15
				if(quantity>10){
16
					alert("Quantity should not be above 10");
17
					if(itemId in indentMap){
18
						$(this).val(indentMap[itemId].quantity);
19
					} else {
20
						$(this).val(0);
21
					}
22
					return;
23
				}
24
				description = $(this).data("description");
25
				if(itemId in indentMap) {
26
					indentMap[itemId]["quantity"] = quantity;
27
					indentMap[itemId]["sellingPrice"] = sellingPrice;
28
					indentMap[itemId]["description"] = description; 
29
					indentMap[itemId]["itemId"] = itemId;
30
				} else {
31
					indentMap[itemId] = {"quantity": quantity, "sellingPrice":sellingPrice, "description":description, "itemId":itemId};
32
				}
33
				if ('timeout' in indentMap[itemId]) {
34
					clearTimeout(indentMap[itemId].timeout);
35
				}
36
				var somefunction= (function () {
37
				    return function() {
38
				    	if(itemId in indentMap) {
39
				    		doAjaxRequestWithJsonHandler(context+"/indent-item/save", 'PUT', JSON.stringify(indentMap[itemId]), populateIndentSummary);
40
				    	} else {
41
				    		doAjaxRequestWithJsonHandler(context+"/indent-item/save", 'PUT', JSON.stringify({itemId:itemId, quantity:0}), populateIndentSummary);
42
				    	}
43
				    };
44
				})();
45
				indentMap[itemId].timeout = setTimeout(somefunction, 1000);
46
 
47
			}
48
		}
49
	);
50
	$("button.mk_submit_indent").live('click', function(){
51
		confirmString = [];
52
		confirmString.push('<table class="table table-striped table-condensed table-bordered" id="entire-catalog-table">');
53
		confirmString.push('<tr>');
54
		confirmString.push('<th>Item Id</th>');
55
		confirmString.push('<th>Description</th>');
56
		confirmString.push('<th>Unit Price</th>');
57
		confirmString.push('<th>Quantity</th>');
58
		confirmString.push('<th>Item total</th>');
59
		confirmString.push('</tr>');
60
		for(var itemId in indentMap) {
61
			if(indentMap[itemId].quantity > 0) {
62
				confirmString.push('<tr>');
63
				confirmString.push('<td>'+ itemId +'</td>');
64
				confirmString.push('<td>'+ indentMap[itemId].description +'</td>');
65
				confirmString.push('<td style="text-align:left">' + numberToComma(indentMap[itemId].sellingPrice) +'</td>');
66
				confirmString.push('<td style="text-align:left">' + indentMap[itemId].quantity +'</td>');
67
				confirmString.push('<td style="text-align:left">' + numberToComma(indentMap[itemId].quantity*indentMap[itemId].sellingPrice) +'</td>');
68
				confirmString.push('</tr>');
69
			}
70
		}
71
		confirmString.push('</table>');
72
		$('#indent-container1').html(confirmString.join('')).show();
73
		$('#indent-container').hide();
74
		$('button.mk_submit_indent').hide();
75
		$('button.bk_toedit_indent').show();
76
		$('button.confirm_indent').show();
77
	});
78
	$("button.confirm_indent").live('click', function(){
79
		doAjaxRequestHandler(context+"/open-indent/save", 'PUT', function(data){
80
			alert('Indent has been created Successfully!');
81
			indentMap={};
82
			$('a.in_process_indent').click();
83
		});
84
	});
85
	$("button.bk_toedit_indent").live('click', function(){
86
		$('button.bk_toedit_indent').hide();
87
		$('button.confirm_indent').hide();
88
		$('button.mk_submit_indent').show();
89
		$('#indent-container1').hide();
90
		$('#indent-container').show();
91
 
92
	});
93
 
94
});
95
 
96
function populateIndentSummary(){
97
	var totalQty=0;
98
	var totalAmount = 0;
99
	var totalItems = 0;
100
	for (var itemId in indentMap) {
101
		if(indentMap[itemId]['quantity'] > 0){
102
			totalQty += indentMap[itemId]['quantity'];  
103
			totalAmount += indentMap[itemId]['sellingPrice']*indentMap[itemId]['quantity'];  
104
			totalItems++;
105
		} else {
106
			delete(indentMap[itemId]);
107
		}
108
	}
109
	if(totalQty===0){
110
		$('button.mk_submit_indent').hide();
111
	} else {
112
		$('button.mk_submit_indent').show();
113
	}
114
	$("#itemCount").html(numberToComma(totalItems));
115
	$("#totalItemQty").html(numberToComma(totalQty));
116
	$("#totalAmount").html(numberToComma(totalAmount));
117
}
118
function loadIndent(domId){
119
	doAjaxRequestHandler(context+"/indent/loadIndent", "GET", function(response){
120
		$('#' + domId).html(response);
121
	});
122
}
123
function loadInprocessIndent(domId){
124
	doAjaxRequestHandler(context+"/indent/inProcess", "GET", function(response){
125
		$('#' + domId).html(response);
126
	});
127
}