| Line 103... |
Line 103... |
| 103 |
<th>Item Code</th>
|
103 |
<th>Item Code</th>
|
| 104 |
<th>Description</th>
|
104 |
<th>Description</th>
|
| 105 |
<th>Unit Price</th>
|
105 |
<th>Unit Price</th>
|
| 106 |
<th>Quantity</th>
|
106 |
<th>Quantity</th>
|
| 107 |
<th>Total Price</th>
|
107 |
<th>Total Price</th>
|
| 108 |
<th>Prebooking Quantity</th>
|
- |
|
| 109 |
<th>Prebooking Amount</th>
|
- |
|
| 110 |
</tr>
|
108 |
</tr>
|
| 111 |
<script type="text/javascript">
|
109 |
<script type="text/javascript">
|
| 112 |
fofoLineItemsMap = $fofoOrderItemIdLineItemsMap;
|
110 |
fofoLineItemsMap = $fofoOrderItemIdLineItemsMap;
|
| 113 |
foiIdCustomerReturnInventoryItemsMap = $foiIdCustomerReturnInventoryItemsMap;
|
111 |
foiIdCustomerReturnInventoryItemsMap = $foiIdCustomerReturnInventoryItemsMap;
|
| 114 |
inventoryItemBilledQtyMap = $inventoryItemBilledQtyMap;
|
112 |
inventoryItemBilledQtyMap = $inventoryItemBilledQtyMap;
|
| Line 121... |
Line 119... |
| 121 |
$fofoOrderItem.getBrand() $fofoOrderItem.getModelName() $fofoOrderItem.getModelNumber() $fofoOrderItem.getColor()
|
119 |
$fofoOrderItem.getBrand() $fofoOrderItem.getModelName() $fofoOrderItem.getModelNumber() $fofoOrderItem.getColor()
|
| 122 |
</td>
|
120 |
</td>
|
| 123 |
<td>$fofoOrderItem.getSellingPrice()</td>
|
121 |
<td>$fofoOrderItem.getSellingPrice()</td>
|
| 124 |
<td>$fofoOrderItem.getQuantity()</td>
|
122 |
<td>$fofoOrderItem.getQuantity()</td>
|
| 125 |
<td>$total</td>
|
123 |
<td>$total</td>
|
| 126 |
#if($itemIdPrebookingOrderItemMap.get($fofoOrderItem.getItemId()))
|
- |
|
| 127 |
<td>$itemIdPrebookingOrderItemMap.get($fofoOrderItem.getItemId()).getQuantity()</td>
|
- |
|
| 128 |
<td>$itemIdPrebookingOrderItemMap.get($fofoOrderItem.getItemId()).getAdvanceAmount()</td>
|
- |
|
| 129 |
#else
|
- |
|
| 130 |
<td>0</td>
|
- |
|
| 131 |
<td>0</td>
|
- |
|
| 132 |
#end
|
- |
|
| 133 |
#set ($item = $itemsMap.get($fofoOrderItem.getItemId()))
|
124 |
#set ($item = $itemsMap.get($fofoOrderItem.getItemId()))
|
| 134 |
#if($item.getCategoryId()==10006)
|
125 |
#if($item.getCategoryId()==10006)
|
| 135 |
#if($fofoOrderItem.isDoa())
|
126 |
#if($fofoOrderItem.isDoa())
|
| 136 |
<td><a class="pointer" data-foi="$fofoOrderItem.getId()"
|
127 |
<td><a class="pointer" data-foi="$fofoOrderItem.getId()"
|
| 137 |
data-itemdesc="$item.getItemDescription()" data-target=".bs-example-modal-sm" data-toggle="modal">Mark DOA</a></td>
|
128 |
data-itemdesc="$item.getItemDescription()" data-target=".bs-example-modal-sm" data-toggle="modal">Mark DOA</a></td>
|
| Line 221... |
Line 212... |
| 221 |
</div>
|
212 |
</div>
|
| 222 |
</div>
|
213 |
</div>
|
| 223 |
</div>
|
214 |
</div>
|
| 224 |
|
215 |
|
| 225 |
</section>
|
216 |
</section>
|
| 226 |
|
- |
|
| 227 |
<script type="text/javascript">
|
- |
|
| 228 |
$('#exampleModal').on('show.bs.modal', function (event) {
|
- |
|
| 229 |
var link = $(event.relatedTarget); // Button that triggered the modal
|
- |
|
| 230 |
var itemDesc = link.data('itemdesc'); // Extract info from data-* attributes
|
- |
|
| 231 |
var foitem = link.data('foi'); // Extract info from data-* attributes
|
- |
|
| 232 |
li = fofoLineItemsMap[foitem]
|
- |
|
| 233 |
returnedItems = foiIdCustomerReturnInventoryItemsMap[foitem];
|
- |
|
| 234 |
var modal = $(this);
|
- |
|
| 235 |
modal.find(".modal-title").html(link.html() + "-" + itemDesc);
|
- |
|
| 236 |
htmlArr = [];
|
- |
|
| 237 |
htmlArr.push('<div> <ul data-foi="' + foitem + '">');
|
- |
|
| 238 |
var i;
|
- |
|
| 239 |
for( i=0;i<li.length;i++) {
|
- |
|
| 240 |
var counter = 0;
|
- |
|
| 241 |
while(inventoryItemBilledQtyMap[li[i].inventoryItemId] > counter) {
|
- |
|
| 242 |
if(link.html()=="Mark Defective"){
|
- |
|
| 243 |
htmlArr.push('<li class="row">');
|
- |
|
| 244 |
htmlArr.push('<div class="col-sm-6 checkbox"><label><input type="checkbox" value="' + li[i].inventoryItemId +'">Defective</label></div>');
|
- |
|
| 245 |
htmlArr.push('<div class="col-sm-6 form-group"><label for="comment">Remarks</label><textarea class="form-control" rows="2" id="comment"></textarea></div>');
|
- |
|
| 246 |
htmlArr.push('</li>');
|
- |
|
| 247 |
} else {
|
- |
|
| 248 |
htmlArr.push('<li class="row">');
|
- |
|
| 249 |
htmlArr.push('<div class="checkbox col-sm-6"><label><input type="checkbox" value="' + li[i].inventoryItemId +'">DOA Certificate Valid for IMEI - ' + li[i].serialNumber + '</label></div>');
|
- |
|
| 250 |
htmlArr.push('<div class="form-group col-sm-6"><label for="comment">Remarks</label><textarea class="form-control" rows="2" id="comment"></textarea></div>');
|
- |
|
| 251 |
htmlArr.push('</li>');
|
- |
|
| 252 |
}
|
- |
|
| 253 |
counter = counter + 1;
|
- |
|
| 254 |
|
- |
|
| 255 |
}
|
- |
|
| 256 |
var counter = 0;
|
- |
|
| 257 |
while(li[i].quantity - inventoryItemBilledQtyMap[li[i].inventoryItemId] > counter) {
|
- |
|
| 258 |
if(link.html()=="Mark Defective"){
|
- |
|
| 259 |
htmlArr.push('<li class="row">');
|
- |
|
| 260 |
htmlArr.push('<div class="checkbox col-sm-6"><label><input type="checkbox" checked disabled value="' + li[i].inventoryItemId +'">Defective</label></div>');
|
- |
|
| 261 |
htmlArr.push('<div class="form-group col-sm-6"><label for="comment">Remarks</label><textarea disabled class="form-control" rows="2" id="comment">' + returnedItems[counter].remarks + '</textarea></div>');
|
- |
|
| 262 |
htmlArr.push('</li>');
|
- |
|
| 263 |
} else {
|
- |
|
| 264 |
htmlArr.push('<li class="row">');
|
- |
|
| 265 |
htmlArr.push('<div class="checkbox col-sm-6"><label><input type="checkbox" checked disabled value="' + li[i].inventoryItemId +'">DOA Certificate Valid for IMEI - ' + li[i].serialNumber + '</label></div>');
|
- |
|
| 266 |
htmlArr.push('<div class="form-group col-sm-6"><label for="comment">Remarks</label><textarea disabled class="form-control" rows="2" id="comment">' + returnedItems[counter].remarks + '</textarea></div>');
|
- |
|
| 267 |
htmlArr.push('</li>');
|
- |
|
| 268 |
}
|
- |
|
| 269 |
counter = counter + 1;
|
- |
|
| 270 |
}
|
- |
|
| 271 |
}
|
- |
|
| 272 |
modal.find(".modal-body").html(htmlArr.join(""));
|
- |
|
| 273 |
});
|
- |
|
| 274 |
|
- |
|
| 275 |
$(".return-submit").on('click', function(){
|
- |
|
| 276 |
var showAlert = false;
|
- |
|
| 277 |
var checkedInventory = $('.modal-body').find('input:checked:enabled');
|
- |
|
| 278 |
if(checkedInventory.length==0){
|
- |
|
| 279 |
alert("Check the defective and provide remarks");
|
- |
|
| 280 |
return;
|
- |
|
| 281 |
}
|
- |
|
| 282 |
checkedInventory.each(function(i,v){
|
- |
|
| 283 |
if($(v).closest('li').find('textarea').val()==''){
|
- |
|
| 284 |
showAlert = true;
|
- |
|
| 285 |
}
|
- |
|
| 286 |
});
|
- |
|
| 287 |
if(showAlert) {
|
- |
|
| 288 |
alert('Please add remarks');
|
- |
|
| 289 |
return;
|
- |
|
| 290 |
} else {
|
- |
|
| 291 |
var foi = $(checkedInventory).closest('ul').data('foi');
|
- |
|
| 292 |
var markedBadArr = [];
|
- |
|
| 293 |
checkedInventory.each(function(i,v){
|
- |
|
| 294 |
markedBadArr.push({"remarks" : $(v).closest('li').find('textarea').val(),
|
- |
|
| 295 |
"inventoryItemId":$(v).val()});
|
- |
|
| 296 |
});
|
- |
|
| 297 |
var json = {"fofoOrderItemId":foi, "markedBadArr":markedBadArr};
|
- |
|
| 298 |
doPostAjaxRequestWithJsonHandler('${rc.contextPath}/order/bad_return', JSON.stringify(json), function(data){
|
- |
|
| 299 |
alert('Credit Note generated');
|
- |
|
| 300 |
window.open('${rc.contextPath}/credit-note/' + data.response, '_blank');
|
- |
|
| 301 |
loadSaleDetails(orderId,"sale-details-container");
|
- |
|
| 302 |
$('#exampleModal').modal('hide');
|
- |
|
| 303 |
|
- |
|
| 304 |
});
|
- |
|
| 305 |
}
|
- |
|
| 306 |
});
|
- |
|
| 307 |
</script>
|
- |
|
| 308 |
|
217 |
<script type="text/javascript" src="resources/js/customer-return.js?v=${version}"></script/>
|
| - |
|
218 |
|