Subversion Repositories SmartDukaan

Rev

Rev 23786 | Rev 23855 | 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>
23796 amit.gupta 72
	    						<th style="width:12%">Allocated Quantity</th>
73
	    						<th style="width:11%">In Stock</th>
74
	    						<th style="width:11%">In Transit</th>
75
	    						<th style="width:11%">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()"/>
92
	    						#else
93
								$tagListing.getAllocatedQuantity()	    						
94
	    						#end
95
	    						</td>
96
	    						<td>$tagListing.getStockInHand()</td>
97
	    						<td>$tagListing.getInTransitQuantity()</td>
98
	    						<td>$tagListing.getToBeOrdered()</td>
23405 amit.gupta 99
	    					</tr>
100
	    					#end
101
	    				</tbody>
102
	    			</table>
103
	    		</div>
23786 amit.gupta 104
	    		<div class="col-lg-7" id="indent-container1" style="display:none"></div>
105
	    		<div class="col-lg-4">
23405 amit.gupta 106
	    			<div class="panel panel-default">
23796 amit.gupta 107
	    			#if($isAdmin)
23786 amit.gupta 108
	                  <div class="panel-heading">Allocation Update Summary #if($retailerName) (Counter Size - $counterSize) #end</div>
23405 amit.gupta 109
	                  <div class="panel-content">
23786 amit.gupta 110
	                  	<table class="table table-sm" id="summary-table">
111
	                  		  <thead>
112
							    <tr>
113
							      <th class="col">#</th>
114
							      <th class="col">Items</th>
115
							      <th class="col">Quantity</th>
116
							      <th class="col">Amount</th>
117
							    </tr>
118
							  </thead>
119
							  <tbody>
120
							    <tr>
121
							      <th class="row">Initial</th>
122
							      <td></td>
123
							      <td></td>
23796 amit.gupta 124
							      <td></td>
23786 amit.gupta 125
							    </tr>
126
							    <tr>
127
							      <th class="row">Added</th>
128
							      <td></td>
129
							      <td></td>
23796 amit.gupta 130
							      <td></td>
23786 amit.gupta 131
							    </tr>
132
							    <tr>
133
							      <th class="row">Removed</th>
134
							      <td></td>
135
							      <td></td>
23796 amit.gupta 136
							      <td></td>
23786 amit.gupta 137
							    </tr>
138
							    <tr>
139
							      <th class="row">Final</th>
140
							      <td></td>
141
							      <td></td>
23796 amit.gupta 142
							      <td></td>
23786 amit.gupta 143
							    </tr>
144
							  <tbody>
145
	                  	</table>
146
			          <button class="btn btn-primary mk_submit_indent">Update Allocation</button>
23405 amit.gupta 147
			          <button class="btn btn-primary bk_toedit_indent" style="display:none">Edit</button>
23786 amit.gupta 148
			          <button class="btn btn-primary confirm_indent" style="display:none">Confirm Update</button>
23405 amit.gupta 149
	                  </div>
150
                	</div>
23796 amit.gupta 151
                	#else
152
                	#set($diff=$totalAmount - $walletAmount)
153
	                <div class="panel-heading">PO Summary(Total Amount in Wallet - <span class="currency">$walletAmount</span>)</div>
154
	                  <div class="panel-content">
155
	                  	<table class="table table-sm" id="summary-table">
156
	                  		  <thead>
157
							    <tr>
158
							      <th class="col">#</th>
159
							      <th class="col">Total Pcs</th>
160
							      <th class="col">Amount to Pay</th>
161
							      <th class="col">Action</th>
162
							    </tr>
163
							  </thead>
164
							  <tbody>
165
							  #**
166
							    <tr>
167
							      <th class="row">Partial PO</th>
168
							      <td>$partialPcs</td>
169
							      <td>$partialAmount</td>
170
							      <td><button class="btn btn-sm btn-primary confirm_indent #if(${diff} > 0)disabled#end"
171
							      >Raise Partial PO</button></td>
172
							    </tr>
173
							   **#
174
							    <tr>
175
							      <th class="row">Complete PO</th>
176
							      <td>$totalPcs</td>
177
							      <td class="currency">$totalAmount</td>
178
							      #if($totalPcs)
179
							      <td><button class="btn btn-primary raise_po#if($diff > 0) disabled#end">Raise Complete PO</button></td>
180
							      #else
181
							      <td>Nothing to order!</td>
182
							      #end
183
							    </tr>
184
							  </tbody>	
185
	                  	</table>
186
	                  #if($diff>0)
187
	                  	<div class="alert alert-warning">
188
							<medium>Please add Rs.<span class="currency">$diff</span> to complete this transaction.</meduim>
189
						</div>
190
					  #end
191
	                  </div>
192
                	</div>
193
                	#end
194
                	#if($isAdmin)
23786 amit.gupta 195
                	<div class="panel panel-default">
196
                		<div class="panel-heading">Brandwise Target and Performance</div>
197
                		<div class="panel-content">
198
                		<ul class="nav nav-tabs">
199
						  <li role="presentation" class="active brandLi"><a href="javascript:void(0)">Mobiles</a></li>
200
						  <li role="presentation" class="brandLi"><a href="javascript:void(0)">Accessories</a></li>
201
						</ul>
202
 
203
						<table class="brandPerformance table table-striped table-condensed table-bordered">
204
							<thead>
205
								<tr>
206
									<th rowspan="2">Brand Name</th>
207
									<th rowspan="2" align="center">Target Value</th>
208
									<th colspan="2" align="center">Achieved</th>
209
									<th colspan="2">Brand Share(%)</th>
210
								</tr>
211
								<tr>
212
									<th>Value</th>
213
									<th>Percentage</th>
214
									<th>Target</th>
215
									<th>Achieved</th>
216
								</tr>
217
							</thead>
218
							<tbody>
219
							#foreach($brandPerformance in $brandPerformanceList)
220
								<tr>
221
									<th>$brandPerformance.getBrandName()</th>
222
									<td class="currency">$brandPerformance.getTarget()</td>
223
									<td class="currency">$brandPerformance.getAchieved()</td>
224
									<td>$brandPerformance.getAchievedPercentage()%</td>
225
									<td>$brandPerformance.getBrandTargetShare()</td>
226
									<td>$brandPerformance.getBrandAchievedShare()</td>
227
								</tr>
228
							#end
229
							<tbody>
230
							</tbody>
231
						</table>
232
						<table style="display:none" class="table brandPerformance table-striped table-condensed table-bordered">
233
							<thead>
234
								<tr>
235
									<th rowspan="2">Brand Name</th>
236
									<th rowspan="2" align="center">Target Value</th>
237
									<th colspan="2" align="center">Achieved</th>
238
									<th colspan="2">Brand Share(%)</th>
239
								</tr>
240
								<tr>
241
									<th>Value</th>
242
									<th>Percentage</th>
243
									<th>Target</th>
244
									<th>Achieved</th>
245
								</tr>
246
							</thead>
247
							<tbody>
248
							#foreach($brandPerformance in $accsBrandPerformanceList)
249
								<tr>
250
									<th>$brandPerformance.getBrandName()</th>
251
									<td>$brandPerformance.getTarget()</td>
252
									<td>$brandPerformance.getAchieved()</td>
253
									<td>$brandPerformance.getAchievedPercentage()%</td>
254
									<td>$brandPerformance.getBrandTargetShare()</td>
255
									<td>$brandPerformance.getBrandAchievedShare()</td>
256
								</tr>
257
							#end
258
							<tbody>
259
							</tbody>
260
						</table>
261
                		</div>
262
 
263
                	</div>
23796 amit.gupta 264
                	#end
23405 amit.gupta 265
	    		</div>
266
	    	</div>
267
    	</div>
268
</section>
269
<script type="text/javascript">
23796 amit.gupta 270
totalAmount = $totalAmount;
23405 amit.gupta 271
/* Create an array with the values of all the input boxes in a column */
272
$.fn.dataTable.ext.order['dom-text'] = function  ( settings, col )
273
{
274
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
275
        return $('input', td).val();
276
    } );
277
}
278
 
279
/* Create an array with the values of all the input boxes in a column, parsed as numbers */
280
$.fn.dataTable.ext.order['dom-text-numeric'] = function  ( settings, col )
281
{
282
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
283
        return $('input', td).val() * 1;
284
    } );
285
}
286
 
287
/* Create an array with the values of all the select options in a column */
288
$.fn.dataTable.ext.order['dom-select'] = function  ( settings, col )
289
{
290
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
291
        return $('select', td).val();
292
    } );
293
}
294
 
295
/* Create an array with the values of all the checkboxes in a column */
296
$.fn.dataTable.ext.order['dom-checkbox'] = function  ( settings, col )
297
{
298
    return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) {
299
        return $('input', td).prop('checked') ? '1' : '0';
300
    } );
301
}
302
 
303
/* Initialise the table with the required column ordering data types */
23786 amit.gupta 304
var customRetailers = ${customRetailers};
23405 amit.gupta 305
$(document).ready(function() {
306
    indentTable = $('#entire-catalog-table').DataTable({
23786 amit.gupta 307
    	"scrollY":"600px",
23405 amit.gupta 308
    	"columns": [
23796 amit.gupta 309
            null, null, null, null,
310
            { "orderDataType": "dom-text-numeric" }, null, null, null
23786 amit.gupta 311
        ],
23796 amit.gupta 312
        "lengthMenu":[[25,50],[25,50]],
313
        "order": []
23405 amit.gupta 314
	});
315
	indentMap = {};
316
	indentTable.rows().data().each(function(arr){
23796 amit.gupta 317
		var $input = $(arr[4]);
23405 amit.gupta 318
		quantity = parseInt($input.val(), 10);
319
		if(quantity > 0){
23786 amit.gupta 320
			indentMap[parseInt(arr[0])] = {"initialQuantity": quantity, "quantity": quantity, "sellingPrice":parseInt(arr[2]), "description": arr[1], "diff":0};
23405 amit.gupta 321
	    }
322
	});
23786 amit.gupta 323
	$(".typeahead").typeahead({
324
	  source: customRetailers,
325
	  autoSelect: true,
326
	  displayText:function(item){return item.businessName + "-" + item.address.city;},
327
	  afterSelect:	function(currentItem){
328
	  					currentFofoId = currentItem.partnerId;
329
	  				}
330
	});
23796 amit.gupta 331
	if($isAdmin){
332
		populateIndentSummary();
333
	}
23405 amit.gupta 334
});
335
 
336
</script>