Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
23405 amit.gupta 1
<style>
2
	.btn:hover{
3
  		color: grey;
4
  		text-decoration: none;
5
	}
6
	.btn-primary:hover{
7
  		color: grey;
8
  		text-decoration: none;
9
	}
10
	.retailer-details{
11
		cursor:pointer;
12
	}
13
</style>
14
 
15
<section class="wrapper">            
16
	<div class="row">
17
		<div class="col-lg-12">
23796 amit.gupta 18
		#if ($isAdmin)
23786 amit.gupta 19
			<h3 class="page-header"><i class="icon_document_alt"></i>Create/Edit Allocation</h3>
23405 amit.gupta 20
			<ol class="breadcrumb">
21
				<li><i class="fa fa-home"></i><a href="${rc.contextPath}/dashboard">Home</a></li>
23786 amit.gupta 22
				#if($retailerName)
23
				<script type="text/javascript">
24
					currentFofoId=${retailerId};
25
				</script>
26
				<li><i class="icon_document_alt"></i><b>Allocation for $retailerName (Counter Size - $counterSize)</b></li>
27
				#else
28
				<li><i class="icon_document_alt"></i><b>Standard Allocation (Counter Size - $counterSize)</b></li>
29
				#end
23405 amit.gupta 30
			</ol>
23796 amit.gupta 31
		#else
32
			<h3 class="page-header"><i class="icon_document_alt"></i>Create Purchase Order</h3>
33
		#end
23405 amit.gupta 34
		</div>
35
	</div>
36
 
37
    <div>
23796 amit.gupta 38
    	#if ($isAdmin)
23786 amit.gupta 39
    	<div class="row">
40
    		<div class="col-lg-3">
41
                <div class="input-group">
42
			    	<input id="partnerId" type="text" class="typeahead form-control form-control-sm" placeholder="Search Partner by Store" data-provide="typeahead" 
43
			    	 #if(${retailerName}) value="${retailerName}" #end
44
			    	 autocomplete="off"/>
45
	               	<div class="input-group-btn">
46
		    			<button class="create_indent btn btn-primary">Get Partner Allocation</button>
47
		    		</div>
48
		    	</div>
49
    		</div>
50
		    <div class="col-lg-3">
51
			    <div class="dropdown">
52
			 		<button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Change Counter Size
53
					  <span class="caret"></span></button>
54
					  <ul class="dropdown-menu">
55
					  #foreach($counterSiz in $counterSizes)
56
					    <li class="mk_counter_size #if(${counterSiz}==${counterSize}) active#end"><a href="javascript:void(0)">$counterSiz</a></li>
57
					  #end
58
			  		</ul>
59
				</div>
60
	    	</div>
61
    	</div>
23796 amit.gupta 62
    	#end
23405 amit.gupta 63
	         <div class="row">
23786 amit.gupta 64
	    		<div class="col-lg-7" id="indent-container">
23405 amit.gupta 65
	    			<table class="table table-striped table-condensed table-bordered" id="entire-catalog-table">
66
		    			<thead>
67
				            <tr>
68
								<th>Id</th>
23796 amit.gupta 69
	    						<th style="width:40%">Description</th>
70
	    						<th style="width:12%">Selling Price</th>
23405 amit.gupta 71
	    						<th>MOP</th>
23855 amit.gupta 72
	    						<th style="width:20%">Allocated Quantity</th>
73
	    						<th style="width:9%">In Stock</th>
74
	    						<th style="width:9%">In Transit</th>
75
	    						<th style="width:9%">To be Ordered</th>
23405 amit.gupta 76
				            </tr>
77
				        </thead>
78
	    				<tbody>
79
	    					#foreach( $tagListing in $tagListings )
80
	    					<tr>
81
	    						<td>$tagListing.getItemId()</td>
82
	    						<td>$tagListing.getItemDescription()</td>
23786 amit.gupta 83
	    						<td class="currency">$tagListing.getSellingPrice()</td>
84
	    						<td class="currency">$tagListing.getMop()</td>
23796 amit.gupta 85
	    						<td>
86
	    						#if($isAdmin)
87
	    						<input type="number" min="0" max="10" 
23405 amit.gupta 88
	    						data-item-id="$tagListing.getItemId()"
89
	    						data-selling-price="$tagListing.getSellingPrice()"
90
	    						data-description="$tagListing.getItemDescription()" 
23796 amit.gupta 91
	    						value="$tagListing.getAllocatedQuantity()"/>
23855 amit.gupta 92
	    						#if($tagListing.getAllocatedQuantity() == 0)
93
	    							<button type="button" class="btn btn-link mk_pause_button" 
94
	    							data-id="$tagListing.getId()"
95
	    							data-description="$tagListing.getItemDescription()"
96
	    							>Pause</button>
97
	    						#end
23796 amit.gupta 98
	    						#else
99
								$tagListing.getAllocatedQuantity()	    						
100
	    						#end
101
	    						</td>
102
	    						<td>$tagListing.getStockInHand()</td>
103
	    						<td>$tagListing.getInTransitQuantity()</td>
104
	    						<td>$tagListing.getToBeOrdered()</td>
23405 amit.gupta 105
	    					</tr>
106
	    					#end
107
	    				</tbody>
108
	    			</table>
109
	    		</div>
23786 amit.gupta 110
	    		<div class="col-lg-7" id="indent-container1" style="display:none"></div>
111
	    		<div class="col-lg-4">
23405 amit.gupta 112
	    			<div class="panel panel-default">
23796 amit.gupta 113
	    			#if($isAdmin)
23786 amit.gupta 114
	                  <div class="panel-heading">Allocation Update Summary #if($retailerName) (Counter Size - $counterSize) #end</div>
23405 amit.gupta 115
	                  <div class="panel-content">
23786 amit.gupta 116
	                  	<table class="table table-sm" id="summary-table">
117
	                  		  <thead>
118
							    <tr>
119
							      <th class="col">#</th>
120
							      <th class="col">Items</th>
121
							      <th class="col">Quantity</th>
122
							      <th class="col">Amount</th>
123
							    </tr>
124
							  </thead>
125
							  <tbody>
126
							    <tr>
127
							      <th class="row">Initial</th>
128
							      <td></td>
129
							      <td></td>
23796 amit.gupta 130
							      <td></td>
23786 amit.gupta 131
							    </tr>
132
							    <tr>
133
							      <th class="row">Added</th>
134
							      <td></td>
135
							      <td></td>
23796 amit.gupta 136
							      <td></td>
23786 amit.gupta 137
							    </tr>
138
							    <tr>
139
							      <th class="row">Removed</th>
140
							      <td></td>
141
							      <td></td>
23796 amit.gupta 142
							      <td></td>
23786 amit.gupta 143
							    </tr>
144
							    <tr>
145
							      <th class="row">Final</th>
146
							      <td></td>
147
							      <td></td>
23796 amit.gupta 148
							      <td></td>
23786 amit.gupta 149
							    </tr>
150
							  <tbody>
151
	                  	</table>
152
			          <button class="btn btn-primary mk_submit_indent">Update Allocation</button>
23405 amit.gupta 153
			          <button class="btn btn-primary bk_toedit_indent" style="display:none">Edit</button>
23786 amit.gupta 154
			          <button class="btn btn-primary confirm_indent" style="display:none">Confirm Update</button>
23405 amit.gupta 155
	                  </div>
156
                	</div>
23796 amit.gupta 157
                	#else
158
                	#set($diff=$totalAmount - $walletAmount)
159
	                <div class="panel-heading">PO Summary(Total Amount in Wallet - <span class="currency">$walletAmount</span>)</div>
160
	                  <div class="panel-content">
161
	                  	<table class="table table-sm" id="summary-table">
162
	                  		  <thead>
163
							    <tr>
164
							      <th class="col">#</th>
165
							      <th class="col">Total Pcs</th>
166
							      <th class="col">Amount to Pay</th>
167
							      <th class="col">Action</th>
168
							    </tr>
169
							  </thead>
170
							  <tbody>
171
							  #**
172
							    <tr>
173
							      <th class="row">Partial PO</th>
174
							      <td>$partialPcs</td>
175
							      <td>$partialAmount</td>
176
							      <td><button class="btn btn-sm btn-primary confirm_indent #if(${diff} > 0)disabled#end"
177
							      >Raise Partial PO</button></td>
178
							    </tr>
179
							   **#
180
							    <tr>
181
							      <th class="row">Complete PO</th>
182
							      <td>$totalPcs</td>
183
							      <td class="currency">$totalAmount</td>
184
							      #if($totalPcs)
185
							      <td><button class="btn btn-primary raise_po#if($diff > 0) disabled#end">Raise Complete PO</button></td>
186
							      #else
187
							      <td>Nothing to order!</td>
188
							      #end
189
							    </tr>
190
							  </tbody>	
191
	                  	</table>
192
	                  #if($diff>0)
193
	                  	<div class="alert alert-warning">
194
							<medium>Please add Rs.<span class="currency">$diff</span> to complete this transaction.</meduim>
195
						</div>
196
					  #end
197
	                  </div>
198
                	</div>
199
                	#end
200
                	#if($isAdmin)
23786 amit.gupta 201
                	<div class="panel panel-default">
202
                		<div class="panel-heading">Brandwise Target and Performance</div>
203
                		<div class="panel-content">
204
                		<ul class="nav nav-tabs">
205
						  <li role="presentation" class="active brandLi"><a href="javascript:void(0)">Mobiles</a></li>
206
						  <li role="presentation" class="brandLi"><a href="javascript:void(0)">Accessories</a></li>
207
						</ul>
208
 
209
						<table class="brandPerformance table table-striped table-condensed table-bordered">
210
							<thead>
211
								<tr>
212
									<th rowspan="2">Brand Name</th>
213
									<th rowspan="2" align="center">Target Value</th>
214
									<th colspan="2" align="center">Achieved</th>
215
									<th colspan="2">Brand Share(%)</th>
216
								</tr>
217
								<tr>
218
									<th>Value</th>
219
									<th>Percentage</th>
220
									<th>Target</th>
221
									<th>Achieved</th>
222
								</tr>
223
							</thead>
224
							<tbody>
225
							#foreach($brandPerformance in $brandPerformanceList)
226
								<tr>
227
									<th>$brandPerformance.getBrandName()</th>
228
									<td class="currency">$brandPerformance.getTarget()</td>
229
									<td class="currency">$brandPerformance.getAchieved()</td>
230
									<td>$brandPerformance.getAchievedPercentage()%</td>
231
									<td>$brandPerformance.getBrandTargetShare()</td>
232
									<td>$brandPerformance.getBrandAchievedShare()</td>
233
								</tr>
234
							#end
235
							<tbody>
236
							</tbody>
237
						</table>
238
						<table style="display:none" class="table brandPerformance table-striped table-condensed table-bordered">
239
							<thead>
240
								<tr>
241
									<th rowspan="2">Brand Name</th>
242
									<th rowspan="2" align="center">Target Value</th>
243
									<th colspan="2" align="center">Achieved</th>
244
									<th colspan="2">Brand Share(%)</th>
245
								</tr>
246
								<tr>
247
									<th>Value</th>
248
									<th>Percentage</th>
249
									<th>Target</th>
250
									<th>Achieved</th>
251
								</tr>
252
							</thead>
253
							<tbody>
254
							#foreach($brandPerformance in $accsBrandPerformanceList)
255
								<tr>
256
									<th>$brandPerformance.getBrandName()</th>
257
									<td>$brandPerformance.getTarget()</td>
258
									<td>$brandPerformance.getAchieved()</td>
259
									<td>$brandPerformance.getAchievedPercentage()%</td>
260
									<td>$brandPerformance.getBrandTargetShare()</td>
261
									<td>$brandPerformance.getBrandAchievedShare()</td>
262
								</tr>
263
							#end
264
							<tbody>
265
							</tbody>
266
						</table>
267
                		</div>
268
 
269
                	</div>
23796 amit.gupta 270
                	#end
23405 amit.gupta 271
	    		</div>
272
	    	</div>
273
    	</div>
274
</section>
275
<script type="text/javascript">
23796 amit.gupta 276
totalAmount = $totalAmount;
23405 amit.gupta 277
/* Create an array with the values of all the input boxes in a column */
278
$.fn.dataTable.ext.order['dom-text'] = function  ( settings, col )
279
{
280
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
281
        return $('input', td).val();
282
    } );
283
}
284
 
285
/* Create an array with the values of all the input boxes in a column, parsed as numbers */
286
$.fn.dataTable.ext.order['dom-text-numeric'] = function  ( settings, col )
287
{
288
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
289
        return $('input', td).val() * 1;
290
    } );
291
}
292
 
293
/* Create an array with the values of all the select options in a column */
294
$.fn.dataTable.ext.order['dom-select'] = function  ( settings, col )
295
{
296
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
297
        return $('select', td).val();
298
    } );
299
}
300
 
301
/* Create an array with the values of all the checkboxes in a column */
302
$.fn.dataTable.ext.order['dom-checkbox'] = function  ( settings, col )
303
{
304
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
305
        return $('input', td).prop('checked') ? '1' : '0';
306
    } );
307
}
308
 
309
/* Initialise the table with the required column ordering data types */
23786 amit.gupta 310
var customRetailers = ${customRetailers};
23405 amit.gupta 311
$(document).ready(function() {
312
    indentTable = $('#entire-catalog-table').DataTable({
23786 amit.gupta 313
    	"scrollY":"600px",
23405 amit.gupta 314
    	"columns": [
23796 amit.gupta 315
            null, null, null, null,
316
            { "orderDataType": "dom-text-numeric" }, null, null, null
23786 amit.gupta 317
        ],
23796 amit.gupta 318
        "lengthMenu":[[25,50],[25,50]],
319
        "order": []
23405 amit.gupta 320
	});
321
	indentMap = {};
322
	indentTable.rows().data().each(function(arr){
23796 amit.gupta 323
		var $input = $(arr[4]);
23405 amit.gupta 324
		quantity = parseInt($input.val(), 10);
325
		if(quantity > 0){
23786 amit.gupta 326
			indentMap[parseInt(arr[0])] = {"initialQuantity": quantity, "quantity": quantity, "sellingPrice":parseInt(arr[2]), "description": arr[1], "diff":0};
23405 amit.gupta 327
	    }
328
	});
23786 amit.gupta 329
	$(".typeahead").typeahead({
330
	  source: customRetailers,
331
	  autoSelect: true,
332
	  displayText:function(item){return item.businessName + "-" + item.address.city;},
333
	  afterSelect:	function(currentItem){
334
	  					currentFofoId = currentItem.partnerId;
335
	  				}
336
	});
23796 amit.gupta 337
	if($isAdmin){
338
		populateIndentSummary();
339
	}
23405 amit.gupta 340
});
341
 
342
</script>