Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
23783 ashik.ali 1
$(function() {
2
	$(".create-warehouse").live('click', function() {
3
		loadCreateWarehouse("main-content");
4
	});
5
 
6
	$(".warehouses").live('click', function() {
7
		loadWarehouses("main-content");
8
	});
9
 
23882 ashik.ali 10
	$(".instruction-items").live('click', function() {
11
		loadInstructionItems("main-content");
12
	});
13
 
14
	$(".add-remove-warehouse").live('click', function() {
15
		loadAddRemoveWarehouse("main-content");
16
	});
17
 
23783 ashik.ali 18
	$("#warehouses-paginated .next").live('click', function() {
19
		loadPaginatedNextItems('/getPaginatedWarehouses', null, 'warehouses-paginated', 'warehouses-table', null);
20
		$(this).blur();
21
    });
22
 
23
	$("#warehouses-paginated .previous").live('click', function() {
24
		loadPaginatedPreviousItems('/getPaginatedWarehouses', null, 'warehouses-paginated', 'warehouses-table', null);
25
		$(this).blur();
26
    });
23882 ashik.ali 27
 
28
	$(".add-remove-warehouse-button").live('click', function() {
29
		var emailIdOrMobileNumber = $('#emailIdOrMobileNumber').val();
30
		var warehouseIds = $('#user-warehouses').val();
31
		addRemoveWarehouses("main-content", emailIdOrMobileNumber, warehouseIds);
32
	});
33
 
34
 
35
	$("#instructionItemButton").live('click', function() {
36
        var warehouseId = $("#instructionItemModel .warehouseId").val();
37
        var userId = $("#instructionItemModel .userId").val();
38
        var itemIdQuantityMap = {};
39
        $("#instructionItemsContainer .instruction-item-item-id-quantity").each(function() {
40
        	var $itemIdQuantity = $(this);
41
        	var itemId = $itemIdQuantity.find('.itemId').val();
42
        	console.log('itemId : '+itemId);
43
        	var quantity = $itemIdQuantity.find('.quantity').val();
44
        	if(quantity == null || quantity <= 0){
45
        		quantity = 1;
46
        	}
47
        	console.log('quantity : '+quantity);
48
        	itemIdQuantityMap[itemId] = quantity;
49
        });
50
        submitInstructionItem(warehouseId, userId, itemIdQuantityMap);
51
        return false;
52
    });
53
 
23783 ashik.ali 54
});
55
 
23882 ashik.ali 56
function configureUserWarehousesDropDown(){
57
	$(document).ready(function() {
58
        $('#user-warehouses').multiselect({
59
	        	includeSelectAllOption: true,
60
	        	maxHeight: 200,
61
	        	buttonWidth: '280px',
62
	        	numberDisplayed: 1,
63
	        	nonSelectedText: 'Warehouses',
64
	        	nSelectedText: ' - Warehouses Selected',
65
	        	allSelectedText: 'All Warehouses Selected',
66
	        	enableFiltering: true
67
        });
68
    });
69
}
70
 
71
function instructionItemDialog(){
72
    var warehouseId = $('#admin-warehouses').val();
73
    var warehouseName = $('#admin-warehouses option:selected').text();
74
    var itemIdItemDescriptionDiv = '<div>';
75
    $("#warehouse-instruction-items option:selected").each(function() {
76
    	console.log(this);
77
    	itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<div class="row instruction-item-item-id-quantity">';
78
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<div class="col-lg-3">';
79
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<input class="itemId" hidden value="'+this.value+'"/>';
80
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<p class="form-control">' + this.text + '</p>';
81
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '</div>';
82
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<div class="col-lg-3">';
83
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '<input type="text" class="form-control quantity" placeholder="Quantity" />';
84
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '</div>';
85
        itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '</div>';
86
    });
87
    itemIdItemDescriptionDiv = itemIdItemDescriptionDiv + '</div>';
88
 
89
    var userId = $('#fofo-users').val();
90
    var userEmailId = $('#fofo-users option:selected').text();
91
 
92
    console.log("warehouseId : "+warehouseId);
93
    console.log("warehouseName : "+warehouseName);
94
    console.log("userId : "+userId);
95
    console.log("userEmailId : "+userEmailId);
96
 
97
    $("#instructionItemModel .warehouseId").val(warehouseId);
98
    $("#instructionItemModel .userId").val(userId);
99
 
100
    $(".modal-body .warehouseInformation>span").text(warehouseName);
101
    $(".modal-body .userInformation>span").text(userEmailId);
102
    $( "#instructionItemsContainer" ).empty();
103
    $("#instructionItemsContainer").html(itemIdItemDescriptionDiv);
104
 
105
}
106
 
107
function submitInstructionItem(warehouseId, userId, itemIdQuantityMap){
108
    var postData = JSON.stringify({"warehouseId":parseInt(warehouseId), "userId":userId, "itemIdQuantityMap":itemIdQuantityMap});
109
    doPostAjaxRequestWithJsonHandler(context+"/instructionItem", postData, function(response){
110
        $('#main-content').html(response);
111
        alert("Instructoin created successfully");
112
    });
113
}
114
 
115
function configureWarehouseInstructionItemsDropDown(){
116
	$(document).ready(function() {
117
        $('#warehouse-instruction-items').multiselect({
118
    		multiple:true,
119
        	includeSelectAllOption: true,
120
        	maxHeight: 200,
121
        	buttonWidth: '200px',
122
        	numberDisplayed: 1,
123
        	nonSelectedText: 'Items',
124
        	nSelectedText: ' - Items Selected',
125
        	allSelectedText: 'All Items Selected',
126
        	enableFiltering: true
127
        });
128
    });
129
}
130
 
131
function configureWarehousesDropDown(){
132
	$(document).ready(function() {
133
        $('#admin-warehouses').multiselect({
134
    		multiple:false,
135
        	includeSelectAllOption: true,
136
        	maxHeight: 200,
137
        	buttonWidth: '200px',
138
        	numberDisplayed: 1,
139
        	nonSelectedText: 'Warehouses',
140
        	nSelectedText: ' - Warehouses Selected',
141
        	allSelectedText: 'All Warehouses Selected',
142
        	enableFiltering: true
143
        });
144
    });
145
}
146
 
23783 ashik.ali 147
function loadCreateWarehouse(domId){
148
	doGetAjaxRequestHandler(context+"/createWarehouse", function(response){
149
		$('#' + domId).html(response);
150
	});
151
}
152
 
153
function loadWarehouses(domId){
154
	doGetAjaxRequestHandler(context+"/getWarehouses", function(response){
155
		$('#' + domId).html(response);
156
	});
157
}
158
 
23882 ashik.ali 159
function loadWarehouseInstructionItemsByWarehouseId(domId, warehouseId){
160
	doGetAjaxRequestHandler(context+"/getInstructionItemsByWarehouseId?warehouseId="+warehouseId, function(response){
161
		$('#' + domId).html(response);
162
		configureWarehouseInstructionItemsDropDown();
163
	});
164
}
165
 
166
function loadInstructionItems(domId){
167
	doGetAjaxRequestHandler(context+"/getInstructionItems", function(response){
168
		$('#' + domId).html(response);
169
	});
170
}
171
 
172
function loadAddRemoveWarehouse(domId){
173
	doGetAjaxRequestHandler(context+"/getAddRemoveWarehouse", function(response){
174
		$('#' + domId).html(response);
175
	});
176
}
177
 
178
function addRemoveWarehouses(domId, emailIdOrMobileNumber, warehouseIds){
179
	if(confirm("Are you sure you want to add or remove warehouses!") == true){
180
		doPostAjaxRequestWithJsonHandler(context+"/addRemoveWarehouses?emailIdOrMobileNumber="+emailIdOrMobileNumber, JSON.stringify(warehouseIds), function(response){
181
			$('#' + domId).html(response);
182
			$('#emailIdOrMobileNumber').val(emailIdOrMobileNumber);
183
			getWarehousesByEmailIdOrMobileNumber();
184
		});
185
	}
186
}
187
 
188
function getWarehousesByEmailIdOrMobileNumber(){
189
	var emailIdOrMobileNumber = $('#emailIdOrMobileNumber').val();
190
	console.log("emailIdOrMobileNumber = "+emailIdOrMobileNumber);
191
	if(emailIdOrMobileNumber != ""){
192
		loadWarehousesByEmailIdOrMobileNumber("warehouses-container", emailIdOrMobileNumber);
193
	}
194
}
195
 
196
function loadWarehousesByEmailIdOrMobileNumber(domId, emailIdOrMobileNumber){
197
	doGetAjaxRequestHandler(context+"/userWarehouses?emailIdOrMobileNumber="+emailIdOrMobileNumber, function(response){
198
		$('#' + domId).html(response);
199
		configureUserWarehousesDropDown();
200
	});
201
}
202