stock module-1 vadivel J 23-12-2024
This commit is contained in:
parent
ac631aa7e5
commit
45c0abcfd0
@ -415,7 +415,7 @@ class StockController extends BaseController
|
|||||||
'_300' => $postData['300Mm'],
|
'_300' => $postData['300Mm'],
|
||||||
'pan' => $postData['pan'],
|
'pan' => $postData['pan'],
|
||||||
'total' => $postData['total'],
|
'total' => $postData['total'],
|
||||||
'plus20loss' => $postData['plus20Loss'],
|
'plus20Loss' => $postData['plus20Loss'],
|
||||||
'plus30Loss' => $postData['plus30Loss'],
|
'plus30Loss' => $postData['plus30Loss'],
|
||||||
'moistureSpec' => $postData['moistureSpec'],
|
'moistureSpec' => $postData['moistureSpec'],
|
||||||
'moistureActual' => $postData['moistureActual'],
|
'moistureActual' => $postData['moistureActual'],
|
||||||
@ -753,8 +753,6 @@ class StockController extends BaseController
|
|||||||
->findAll();
|
->findAll();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$startDate = "$month-01";
|
$startDate = "$month-01";
|
||||||
$endDate = date("Y-m-t", strtotime($startDate));
|
$endDate = date("Y-m-t", strtotime($startDate));
|
||||||
$data['resinStockDetails'] = $this->resinStockDetails_model
|
$data['resinStockDetails'] = $this->resinStockDetails_model
|
||||||
@ -789,7 +787,7 @@ class StockController extends BaseController
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (!empty($data['groupedBagStockDetails'])) {
|
if (!empty($data['groupedResinStockDetails'])) {
|
||||||
|
|
||||||
$result = $this->resinStockDetails_model
|
$result = $this->resinStockDetails_model
|
||||||
->select('materialCode') // Specify the column you want to select
|
->select('materialCode') // Specify the column you want to select
|
||||||
@ -802,9 +800,10 @@ class StockController extends BaseController
|
|||||||
}
|
}
|
||||||
$resinMaterials = $this->rawmaterialdetails_model->getSelectedResinMaterialCode($distinctMaterialCodes);
|
$resinMaterials = $this->rawmaterialdetails_model->getSelectedResinMaterialCode($distinctMaterialCodes);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
$resinMaterials = $this->rawmaterialdetails_model->getAllResinMaterialCode();
|
$resinMaterials = $this->rawmaterialdetails_model->getAllResinMaterialCode();
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($resinMaterials as $key => $resinMaterial) {
|
foreach ($resinMaterials as $key => $resinMaterial) {
|
||||||
$materialCode = $resinMaterial['MaterialCode'];
|
$materialCode = $resinMaterial['MaterialCode'];
|
||||||
@ -819,7 +818,7 @@ class StockController extends BaseController
|
|||||||
$resinMaterialCount = count($resinMaterials);
|
$resinMaterialCount = count($resinMaterials);
|
||||||
|
|
||||||
$data['resinMaterialCount'] = $resinMaterialCount;
|
$data['resinMaterialCount'] = $resinMaterialCount;
|
||||||
$data['resinMaterials'] = $resinMaterials;
|
$data['resinMaterials'] = $resinMaterials;
|
||||||
|
|
||||||
$date = DateTime::createFromFormat('Y-m', $month);
|
$date = DateTime::createFromFormat('Y-m', $month);
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,10 @@
|
|||||||
padding:0 8px;
|
padding:0 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.table td{
|
||||||
|
vertical-align: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.fht-table td {
|
.fht-table td {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
@ -272,6 +276,7 @@
|
|||||||
<th class="celda_encabezado_general" style="display:none">___300___</th>
|
<th class="celda_encabezado_general" style="display:none">___300___</th>
|
||||||
<th class="celda_encabezado_general" style="display:none">PAN</th>
|
<th class="celda_encabezado_general" style="display:none">PAN</th>
|
||||||
<th class="celda_encabezado_general" style="display:none">Total</th>
|
<th class="celda_encabezado_general" style="display:none">Total</th>
|
||||||
|
<th class="celda_encabezado_general" style="padding: 10px;">Lab Report</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">AFS Spec</th>
|
<th class="celda_encabezado_general" style="padding: 10px;">AFS Spec</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">AFS Actual</th>
|
<th class="celda_encabezado_general" style="padding: 10px;">AFS Actual</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">Plus 20 loss%</th>
|
<th class="celda_encabezado_general" style="padding: 10px;">Plus 20 loss%</th>
|
||||||
@ -284,9 +289,8 @@
|
|||||||
<th class="celda_encabezado_general" style="padding: 10px;">Salable Qty</th>
|
<th class="celda_encabezado_general" style="padding: 10px;">Salable Qty</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">Remark</th>
|
<th class="celda_encabezado_general" style="padding: 10px;">Remark</th>
|
||||||
<th class="celda_encabezado_general" style="display:none;">MaterialCode</th>
|
<th class="celda_encabezado_general" style="display:none;">MaterialCode</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">Update Lab Report</th>
|
|
||||||
<th class="celda_encabezado_general" style="display:none">id</th>
|
<th class="celda_encabezado_general" style="display:none">id</th>
|
||||||
<th class="celda_encabezado_general" style="padding: 10px;">Download Report</th>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -367,7 +371,6 @@
|
|||||||
<?php echo $record['VehicleNo']??''; ?>
|
<?php echo $record['VehicleNo']??''; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- calculateRow() for every td change below -->
|
|
||||||
|
|
||||||
<!-- 'td:eq(9)' -->
|
<!-- 'td:eq(9)' -->
|
||||||
<td class="celda_normal" >
|
<td class="celda_normal" >
|
||||||
@ -434,62 +437,67 @@
|
|||||||
<?php echo $record['total']??'0.00'; ?>
|
<?php echo $record['total']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
|
|
||||||
<!-- 'td:eq(22)' -->
|
<!-- 'td:eq(22)' -->
|
||||||
|
<td class="celda_normal" style="color:#02d0eb; background:white;">
|
||||||
|
<i
|
||||||
|
class="fas fa-edit download-lab-report" style="cursor:pointer;"></i>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 'td:eq(23)' -->
|
||||||
<td class="celda_normal" contenteditable="true">
|
<td class="celda_normal" contenteditable="true">
|
||||||
<?php echo $record['afsSpec']??'0.00'; ?>
|
<?php echo $record['afsSpec']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(23)' -->
|
<!-- 'td:eq(24)' -->
|
||||||
<td class="celda_normal" contenteditable="true">
|
<td class="celda_normal" contenteditable="true">
|
||||||
<?php echo $record['afsActual']??'0.00'; ?>
|
<?php echo $record['afsActual']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(24)' -->
|
<!-- 'td:eq(25)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal">
|
||||||
<?php echo $record['plus20Loss']??'0.00'; ?>
|
<?php echo $record['plus20Loss']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(25)' -->
|
<!-- 'td:eq(26)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal">
|
||||||
<?php echo $record['plus30Loss']??'0.00'; ?>
|
<?php echo $record['plus30Loss']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(26)' -->
|
<!-- 'td:eq(27)' -->
|
||||||
<td class="celda_normal" contenteditable="true"
|
<td class="celda_normal" >
|
||||||
onkeyup="calculateRow(this.parentNode.id);"
|
|
||||||
>
|
|
||||||
<?php echo $record['moistureSpec']??'0.00'; ?>
|
<?php echo $record['moistureSpec']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(27)' -->
|
|
||||||
<td class="celda_normal" contenteditable="true" id="moistureActualId"
|
|
||||||
onkeyup="calculateRow(this.parentNode.id);">
|
|
||||||
<?php echo $record['moistureActual']??'0.00'; ?>
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<!-- 'td:eq(28)' -->
|
<!-- 'td:eq(28)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal" id="moistureActualId">
|
||||||
<?php echo $record['moistureLoss']??'0.00'; ?>
|
<?php echo $record['moistureActual']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(29)' -->
|
<!-- 'td:eq(29)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal">
|
||||||
<?php echo $record['moistureLossQty']??'0.00'; ?>
|
<?php echo $record['moistureLoss']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(30)' -->
|
<!-- 'td:eq(30)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal">
|
||||||
<?php echo $record['sieveLossQty']??'0.00'; ?>
|
<?php echo $record['moistureLossQty']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(31)' -->
|
<!-- 'td:eq(31)' -->
|
||||||
|
<td class="celda_normal">
|
||||||
|
<?php echo $record['sieveLossQty']??'0.00'; ?>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<!-- 'td:eq(32)' -->
|
||||||
<td class="celda_normal">
|
<td class="celda_normal">
|
||||||
<?php echo $record['salableQty']??'0.00'; ?>
|
<?php echo $record['salableQty']??'0.00'; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- need to check the status and select values before hand -->
|
<!-- need to check the status and select values before hand -->
|
||||||
|
|
||||||
<!-- 'td:eq(32)' -->
|
<!-- 'td:eq(33)' -->
|
||||||
<td class="celda_normal" style="color:#02d0eb; background:white;" contenteditable="true">
|
<td class="celda_normal" style="color:#02d0eb; background:white;" contenteditable="true">
|
||||||
<select class="status sand-status" style="width:210px;">
|
<select class="status sand-status" style="width:210px;">
|
||||||
<option value="noRemark">Select</option>
|
<option value="noRemark">Select</option>
|
||||||
@ -506,28 +514,17 @@
|
|||||||
|
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(33)' -->
|
<!-- 'td:eq(34)' -->
|
||||||
<td style="display: none;">
|
<td style="display: none;">
|
||||||
<?php echo $record['MaterialCode'] ?? ''; ?>
|
<?php echo $record['MaterialCode'] ?? ''; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(34)' -->
|
|
||||||
<td class="celda_normal" style="color:#02d0eb; background:white;">
|
<!-- 'td:eq(35)' -->
|
||||||
<i
|
<td style="display: none;">
|
||||||
class="fas fa-edit edit-lab-report" style="cursor:pointer;"></i>
|
<?php echo $record['id'] ?? ''; ?>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<!-- 'td:eq(35)' -->
|
|
||||||
<td style="display: none;">
|
|
||||||
<?php echo $record['id'] ?? ''; ?>
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<!-- 'td:eq(36)' -->
|
|
||||||
<td class="celda_normal" style="color:#02d0eb; background:white;">
|
|
||||||
<i
|
|
||||||
class="fas fa-download download-lab-report" style="cursor:pointer;"></i>
|
|
||||||
</td>
|
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
@ -566,38 +563,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- modal section -->
|
<!-- download report modal section -->
|
||||||
|
|
||||||
|
|
||||||
<div class="modal fade" id="labReportModel" tabindex="-1" role="dialog" aria-labelledby="labReportModelLabel" aria-hidden="true">
|
|
||||||
<div class="modal-dialog modal-xl">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h5 class="modal-title" id="labReportModelLabel">Sand Lab Report</h5>
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<form action="<?php echo base_url('/updateLabReport')?>" method="POST">
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
|
|
||||||
<button type="submit" class="btn btn-primary">Save changes</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="modal fade" id="downloadLabReportModel" tabindex="-1" role="dialog" aria-labelledby="downloadLabReportModelLabel" aria-hidden="true">
|
<div class="modal fade" id="downloadLabReportModel" tabindex="-1" role="dialog" aria-labelledby="downloadLabReportModelLabel" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-lg">
|
<div class="modal-dialog modal-lg">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
@ -682,13 +648,13 @@
|
|||||||
id="dwnldClayId">20</td>
|
id="dwnldClayId">20</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: left !important; width:25%;"><b>Moisture %</b></td>
|
<td style="text-align: left !important; width:25%;"><b>Moisture Actual %</b></td>
|
||||||
<td contenteditable="true" oninput="calculateRow()"
|
<td contenteditable="true" oninput="calculateRow(value='moistureValue')"
|
||||||
id="dwnldMoistureActualId">10</td>
|
id="dwnldMoistureActualId">10</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: left !important; width:25%;"><b>Moisture Spec %</b></td>
|
<td style="text-align: left !important; width:25%;"><b>Moisture Spec %</b></td>
|
||||||
<td contenteditable="true" oninput="calculateRow()"
|
<td contenteditable="true" oninput="calculateRow(value='moistureValue')"
|
||||||
id="dwnldMoistureSpecId">10</td>
|
id="dwnldMoistureSpecId">10</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -835,7 +801,7 @@
|
|||||||
<tbody >
|
<tbody >
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: left !important; width:25%;"><b>Accepted</b></td>
|
<td style="text-align: left !important; width:25%;"><b>Accepted</b></td>
|
||||||
<td id="dwnldAcceptedId">OK</td>
|
<td id="dwnldAcceptedId"></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: left !important;"><b>Accepted Under Deviation</b></td>
|
<td style="text-align: left !important;"><b>Accepted Under Deviation</b></td>
|
||||||
@ -903,7 +869,7 @@
|
|||||||
|
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
|
||||||
<button type="button" class="btn btn-success" data-dismiss="modal">Save</button>
|
<button type="submit" class="btn btn-success" >Save</button>
|
||||||
<button type="button" id="pdfGenerateId" class="btn btn-primary">Download</button>
|
<button type="button" id="pdfGenerateId" class="btn btn-primary">Download</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@ -912,112 +878,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<!-- download pdf punction -->
|
|
||||||
|
|
||||||
<script>
|
|
||||||
|
|
||||||
document.getElementById('pdfGenerateId').addEventListener('click', function () {
|
|
||||||
// Get the content
|
|
||||||
const content = document.getElementById("content").innerHTML;
|
|
||||||
|
|
||||||
// Sanitize with DOMPurify
|
|
||||||
const cleanContent = DOMPurify.sanitize(content);
|
|
||||||
|
|
||||||
// Convert to PDF
|
|
||||||
const element = document.createElement('div');
|
|
||||||
element.innerHTML = cleanContent;
|
|
||||||
|
|
||||||
const opt = {
|
|
||||||
margin: 1,
|
|
||||||
filename: 'report.pdf',
|
|
||||||
image: { type: 'jpeg', quality: 0.98 },
|
|
||||||
html2canvas: { scale: 2 },
|
|
||||||
jsPDF: { unit: 'in', format: 'A4', orientation: 'portrait' }
|
|
||||||
};
|
|
||||||
|
|
||||||
html2pdf().from(element).set(opt).save();
|
|
||||||
|
|
||||||
$('#downloadLabReportModel').modal('hide');
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<!-- Populate Data in download lab report modal -->
|
||||||
$(document).ready(function(){
|
|
||||||
$('#incomingSilicaSandDetailsTable tbody').on('click', '.edit-lab-report', function () {
|
|
||||||
|
|
||||||
var row = $(this).closest('tr');
|
|
||||||
|
|
||||||
// Get values from the row
|
|
||||||
|
|
||||||
let igrNo = row.find('td:eq(1)').text().trim();
|
|
||||||
let qty = row.find('td:eq(9)').text().trim();
|
|
||||||
let _10Mm = row.find('td:eq(10)').text().trim();
|
|
||||||
let _20Mm = row.find('td:eq(11)').text().trim();
|
|
||||||
let _30Mm = row.find('td:eq(12)').text().trim();
|
|
||||||
let _40Mm = row.find('td:eq(13)').text().trim();
|
|
||||||
let _50Mm = row.find('td:eq(14)').text().trim();
|
|
||||||
let _70Mm = row.find('td:eq(15)').text().trim();
|
|
||||||
let _100Mm = row.find('td:eq(16)').text().trim();
|
|
||||||
let _140Mm = row.find('td:eq(17)').text().trim();
|
|
||||||
let _200Mm = row.find('td:eq(18)').text().trim();
|
|
||||||
let _300Mm = row.find('td:eq(19)').text().trim();
|
|
||||||
let pan = row.find('td:eq(20)').text().trim();
|
|
||||||
let total = row.find('td:eq(21)').text().trim();
|
|
||||||
let plus20loss = row.find('td:eq(24)').text().trim();
|
|
||||||
let plus30Loss = row.find('td:eq(25)').text().trim();
|
|
||||||
let moistureSpec = row.find('td:eq(26)').text().trim();
|
|
||||||
let moistureActual = row.find('td:eq(27)').text().trim();
|
|
||||||
let moistureLoss = row.find('td:eq(28)').text().trim();
|
|
||||||
let moistureLossQty = row.find('td:eq(29)').text().trim();
|
|
||||||
let sieveLossQty = row.find('td:eq(30)').text().trim();
|
|
||||||
let salableQty = row.find('td:eq(31)').text().trim();
|
|
||||||
let id = row.find('td:eq(35)').text().trim();
|
|
||||||
|
|
||||||
let materialCode = row.find('td:eq(33)').text().trim();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Fill the modal fields with the values
|
|
||||||
|
|
||||||
$('#igrNo').val(igrNo);
|
|
||||||
$('#qty').val(qty);
|
|
||||||
$('#10Mm').val(_10Mm);
|
|
||||||
$('#20Mm').val(_20Mm);
|
|
||||||
$('#30Mm').val(_30Mm);
|
|
||||||
$('#40Mm').val(_40Mm);
|
|
||||||
$('#50Mm').val(_50Mm);
|
|
||||||
$('#70Mm').val(_70Mm);
|
|
||||||
$('#100Mm').val(_100Mm);
|
|
||||||
$('#140Mm').val(_140Mm);
|
|
||||||
$('#200Mm').val(_200Mm);
|
|
||||||
$('#300Mm').val(_300Mm);
|
|
||||||
$('#pan') .val(pan);
|
|
||||||
$('#total').val(total);
|
|
||||||
$('#plus20loss').val(plus20loss);
|
|
||||||
$('#plus30Loss').val(plus30Loss);
|
|
||||||
$('#moistureSpec').val(moistureSpec);
|
|
||||||
$('#moistureActual').val(moistureActual);
|
|
||||||
$('#moistureLoss').val(moistureLoss);
|
|
||||||
$('#moistureLossQty').val(moistureLossQty);
|
|
||||||
$('#sieveLossQty').val(sieveLossQty);
|
|
||||||
$('#salableQty').val(salableQty);
|
|
||||||
|
|
||||||
|
|
||||||
$('#issdId').val(id);
|
|
||||||
$('#materialCode').val(materialCode);
|
|
||||||
|
|
||||||
// Show the modal
|
|
||||||
$('#labReportModel').modal('show');
|
|
||||||
|
|
||||||
})
|
|
||||||
})
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$('#incomingSilicaSandDetailsTable tbody').on('click', '.download-lab-report', function () {
|
$('#incomingSilicaSandDetailsTable tbody').on('click', '.download-lab-report', function () {
|
||||||
@ -1026,33 +890,42 @@
|
|||||||
|
|
||||||
// Get values from the row
|
// Get values from the row
|
||||||
|
|
||||||
let igrNo = row.find('td:eq(1)').text().trim();
|
|
||||||
let invoiceNo = row.find('td:eq(2)').text().trim();
|
|
||||||
let invoiceDate = row.find('td:eq(3)').text().trim();
|
let igrNo = row.find('td:eq(1)').text().trim();
|
||||||
let igrDate = row.find('td:eq(4)').text().trim();
|
let invoiceNo = row.find('td:eq(2)').text().trim();
|
||||||
let supplierName = row.find('td:eq(5)').text().trim();
|
let invoiceDate = row.find('td:eq(3)').text().trim();
|
||||||
let vehicleNo = row.find('td:eq(8)').text().trim();
|
let igrDate = row.find('td:eq(4)').text().trim();
|
||||||
let qty = row.find('td:eq(9)').text().trim();
|
let supplierName = row.find('td:eq(5)').text().trim();
|
||||||
let _10Mm = row.find('td:eq(10)').text().trim();
|
let vehicleNo = row.find('td:eq(8)').text().trim();
|
||||||
let _20Mm = row.find('td:eq(11)').text().trim();
|
let qty = row.find('td:eq(9)').text().trim();
|
||||||
let _30Mm = row.find('td:eq(12)').text().trim();
|
let _10Mm = row.find('td:eq(10)').text().trim();
|
||||||
let _40Mm = row.find('td:eq(13)').text().trim();
|
let _20Mm = row.find('td:eq(11)').text().trim();
|
||||||
let _50Mm = row.find('td:eq(14)').text().trim();
|
let _30Mm = row.find('td:eq(12)').text().trim();
|
||||||
let _70Mm = row.find('td:eq(15)').text().trim();
|
let _40Mm = row.find('td:eq(13)').text().trim();
|
||||||
let _100Mm = row.find('td:eq(16)').text().trim();
|
let _50Mm = row.find('td:eq(14)').text().trim();
|
||||||
let _140Mm = row.find('td:eq(17)').text().trim();
|
let _70Mm = row.find('td:eq(15)').text().trim();
|
||||||
let _200Mm = row.find('td:eq(18)').text().trim();
|
let _100Mm = row.find('td:eq(16)').text().trim();
|
||||||
let _300Mm = row.find('td:eq(19)').text().trim();
|
let _140Mm = row.find('td:eq(17)').text().trim();
|
||||||
let pan = row.find('td:eq(20)').text().trim();
|
let _200Mm = row.find('td:eq(18)').text().trim();
|
||||||
let total = row.find('td:eq(21)').text().trim();
|
let _300Mm = row.find('td:eq(19)').text().trim();
|
||||||
|
let pan = row.find('td:eq(20)').text().trim();
|
||||||
let moistureSpec = row.find('td:eq(26)').text().trim();
|
let total = row.find('td:eq(21)').text().trim();
|
||||||
let moistureActual = row.find('td:eq(27)').text().trim();
|
|
||||||
let moistureLoss = row.find('td:eq(28)').text().trim();
|
let afsSpec = row.find('td:eq(23)').text().trim();
|
||||||
|
let afsActual = row.find('td:eq(24)').text().trim();
|
||||||
|
|
||||||
|
let plus20Loss = row.find('td:eq(25)').text().trim();
|
||||||
|
let plus30Loss = row.find('td:eq(26)').text().trim();
|
||||||
|
let moistureSpec = row.find('td:eq(27)').text().trim();
|
||||||
|
let moistureActual = row.find('td:eq(28)').text().trim();
|
||||||
|
let moistureLoss = row.find('td:eq(29)').text().trim();
|
||||||
|
let moistureLossQty = row.find('td:eq(30)').text().trim();
|
||||||
|
let sieveLossQty = row.find('td:eq(31)').text().trim();
|
||||||
|
let salableQty = row.find('td:eq(32)').text().trim();
|
||||||
let remark = row.find('.sand-status').val();
|
let remark = row.find('.sand-status').val();
|
||||||
|
let materialCode = row.find('td:eq(34)').text().trim();
|
||||||
let materialCode = row.find('td:eq(33)').text().trim();
|
let id = row.find('td:eq(35)').text().trim();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Fill the modal fields with the values
|
// Fill the modal fields with the values
|
||||||
@ -1113,14 +986,14 @@
|
|||||||
(parseFloat(dwnld10MmFId)+
|
(parseFloat(dwnld10MmFId)+
|
||||||
parseFloat(dwnld20MmFId)+
|
parseFloat(dwnld20MmFId)+
|
||||||
parseFloat(dwnld30MmFId)+
|
parseFloat(dwnld30MmFId)+
|
||||||
parseFloat(dwnld40MmFId) +
|
parseFloat(dwnld40MmFId)+
|
||||||
parseFloat(dwnld50MmFId) +
|
parseFloat(dwnld50MmFId)+
|
||||||
parseFloat(dwnld70MmFId) +
|
parseFloat(dwnld70MmFId)+
|
||||||
parseFloat(dwnld100MmFId) +
|
parseFloat(dwnld100MmFId)+
|
||||||
parseFloat(dwnld140MmFId) +
|
parseFloat(dwnld140MmFId)+
|
||||||
parseFloat(dwnld200MmFId) +
|
parseFloat(dwnld200MmFId)+
|
||||||
parseFloat(dwnld300MmFId)+
|
parseFloat(dwnld300MmFId)+
|
||||||
parseFloat(dwnldPanFId) ).toFixed(2);
|
parseFloat(dwnldPanFId)).toFixed(2);
|
||||||
|
|
||||||
let dwnldAfsId;
|
let dwnldAfsId;
|
||||||
|
|
||||||
@ -1128,7 +1001,7 @@
|
|||||||
dwnldAfsId = "0.00";
|
dwnldAfsId = "0.00";
|
||||||
}else{
|
}else{
|
||||||
dwnldAfsId = parseFloat(fTotal/total).toFixed(2);
|
dwnldAfsId = parseFloat(fTotal/total).toFixed(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$('#dwnldWeighOfSand').text(total);
|
$('#dwnldWeighOfSand').text(total);
|
||||||
@ -1140,6 +1013,8 @@
|
|||||||
$('#dwnldFtotalId').text(fTotal);
|
$('#dwnldFtotalId').text(fTotal);
|
||||||
$('#dwnldAfsId').text(dwnldAfsId);
|
$('#dwnldAfsId').text(dwnldAfsId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(remark == "accepted"){
|
if(remark == "accepted"){
|
||||||
$('#dwnldAcceptedId').text("Ok");
|
$('#dwnldAcceptedId').text("Ok");
|
||||||
}else if(remark == "conditionallyAccepted"){
|
}else if(remark == "conditionallyAccepted"){
|
||||||
@ -1148,85 +1023,71 @@
|
|||||||
$('#dwnldRejectedId').text("Ok");
|
$('#dwnldRejectedId').text("Ok");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$('#issdId').val(id);
|
||||||
|
$('#igrNo').val(igrNo);
|
||||||
|
$('#materialCode').val(materialCode);
|
||||||
|
$('#10Mm').val(_10Mm);
|
||||||
|
$('#20Mm').val(_20Mm);
|
||||||
|
$('#30Mm').val(_30Mm);
|
||||||
|
$('#40Mm').val(_40Mm);
|
||||||
|
$('#50Mm').val(_50Mm);
|
||||||
|
$('#70Mm').val(_70Mm);
|
||||||
|
$('#100Mm').val(_100Mm);
|
||||||
|
$('#140Mm').val(_140Mm);
|
||||||
|
$('#200Mm').val(_200Mm);
|
||||||
|
$('#300Mm').val(_300Mm);
|
||||||
|
$('#pan') .val( pan );
|
||||||
|
$('#total').val(total);
|
||||||
|
$('#plus20Loss').val(plus20Loss);
|
||||||
|
$('#plus30Loss').val(plus30Loss);
|
||||||
|
$('#moistureSpec').val(moistureSpec);
|
||||||
|
$('#moistureActual').val(moistureActual);
|
||||||
|
$('#moistureLoss').val(moistureLoss);
|
||||||
|
$('#moistureLossQty').val(moistureLossQty);
|
||||||
|
$('#sieveLossQty').val(sieveLossQty);
|
||||||
|
$('#salableQty').val(salableQty);
|
||||||
|
|
||||||
// Show the modal
|
// Show the modal
|
||||||
$('#downloadLabReportModel').modal('show');
|
$('#downloadLabReportModel').modal('show');
|
||||||
|
|
||||||
let someValue = $("#meshTableId").tableToJSON();
|
|
||||||
|
|
||||||
console.log(someValue);
|
|
||||||
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- download pdf punction -->
|
||||||
|
<script>
|
||||||
|
document.getElementById('pdfGenerateId').addEventListener('click', function () {
|
||||||
|
// Get the content
|
||||||
|
const content = document.getElementById("content").innerHTML;
|
||||||
|
|
||||||
|
// Sanitize with DOMPurify
|
||||||
|
const cleanContent = DOMPurify.sanitize(content);
|
||||||
|
|
||||||
|
// Convert to PDF
|
||||||
|
const element = document.createElement('div');
|
||||||
|
element.innerHTML = cleanContent;
|
||||||
|
|
||||||
|
const opt = {
|
||||||
|
margin: 1,
|
||||||
|
filename: 'report.pdf',
|
||||||
|
image: { type: 'jpeg', quality: 0.98 },
|
||||||
|
html2canvas: { scale: 2 },
|
||||||
|
jsPDF: { unit: 'in', format: 'A4', orientation: 'portrait' }
|
||||||
|
};
|
||||||
|
|
||||||
|
html2pdf().from(element).set(opt).save();
|
||||||
|
|
||||||
|
$('#downloadLabReportModel').modal('hide');
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
$('#10Mm , #20Mm, #30Mm, #40Mm, #50Mm, #70Mm, #100Mm, #1400Mm, #200Mm, #300Mm , #pan , #moistureSpec ,#moistureActual').change(function(){
|
$('#10Mm , #20Mm, #30Mm, #40Mm, #50Mm, #70Mm, #100Mm, #1400Mm, #200Mm, #300Mm , #pan , #moistureSpec ,#moistureActual').change(function(){
|
||||||
|
|
||||||
let qty = parseFloat( $('#qty').val().trim());
|
|
||||||
let _10Mm = parseFloat( $('#10Mm').val().trim());
|
|
||||||
let _20Mm = parseFloat($('#20Mm').val().trim());
|
|
||||||
let _30Mm = parseFloat($('#30Mm').val().trim());
|
|
||||||
let _40Mm = parseFloat($('#40Mm').val().trim());
|
|
||||||
let _50Mm = parseFloat($('#50Mm').val().trim());
|
|
||||||
let _70Mm = parseFloat($('#70Mm').val().trim());
|
|
||||||
let _100Mm = parseFloat($('#100Mm').val().trim());
|
|
||||||
let _140Mm = parseFloat($('#140Mm').val().trim());
|
|
||||||
let _200Mm = parseFloat($('#200Mm').val().trim());
|
|
||||||
let _300Mm = parseFloat($('#300Mm').val().trim());
|
|
||||||
let pan = parseFloat($('#pan').val().trim());
|
|
||||||
let total = parseFloat($('#total').val().trim());
|
|
||||||
let plus20Loss = parseFloat($('#plus20Loss').val().trim());
|
|
||||||
let plus30Loss = parseFloat($('#plus30Loss').val().trim());
|
|
||||||
let moistureSpec = parseFloat($('#moistureSpec').val().trim());
|
|
||||||
let moistureActual = parseFloat($('#moistureActual').val().trim());
|
|
||||||
let moistureLoss = parseFloat($('#moistureLoss').val().trim());
|
|
||||||
let moistureLossQty = parseFloat($('#moistureLossQty').val().trim());
|
|
||||||
let sieveLossQty = parseFloat($('#sieveLossQty').val().trim());
|
|
||||||
let salableQty = parseFloat($('#salableQty').val().trim());
|
|
||||||
|
|
||||||
let newTotal = (_10Mm + _20Mm + _30Mm + _40Mm + _50Mm + _70Mm + _100Mm + _140Mm + _200Mm + _300Mm + pan).toFixed(2);
|
|
||||||
|
|
||||||
let newPlus20Loss = (_10Mm + _20Mm).toFixed(2) ;
|
|
||||||
|
|
||||||
|
|
||||||
let newPlus30Loss =( _10Mm + _20Mm + _30Mm).toFixed(2) ;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
let newSieveLossQty = ((qty * newPlus30Loss) / 100).toFixed(2);
|
|
||||||
|
|
||||||
|
|
||||||
let newMoistureLoss = (moistureActual - moistureSpec).toFixed(2);
|
|
||||||
|
|
||||||
|
|
||||||
let newMoistureLossQty = ((qty * newMoistureLoss) / 100 ).toFixed(2);
|
|
||||||
|
|
||||||
|
|
||||||
let newSalableQty = (qty - newMoistureLossQty - newSieveLossQty).toFixed(2);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$('#total').val(newTotal);
|
|
||||||
$('#plus20loss').val(newPlus20Loss);
|
|
||||||
$('#plus30Loss').val(newPlus30Loss);
|
|
||||||
$('#moistureSpec').val(moistureSpec);
|
|
||||||
$('#moistureActual').val(moistureActual);
|
|
||||||
$('#moistureLoss').val(newMoistureLoss);
|
|
||||||
$('#moistureLossQty').val(newMoistureLossQty);
|
|
||||||
$('#sieveLossQty').val(newSieveLossQty);
|
|
||||||
$('#salableQty').val(newSalableQty);
|
|
||||||
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
@ -1234,8 +1095,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Save All Data in Incoming Silica Sand Details -->
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
|
||||||
@ -1303,109 +1163,103 @@
|
|||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Calculate Row -->
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
function calculateRow(value){
|
function calculateRow(value){
|
||||||
|
|
||||||
var table = $('#meshTableId');
|
var table = $('#meshTableId');
|
||||||
|
|
||||||
var tr = $(value).closest('tr');
|
|
||||||
var weighOfSand = tr.find('td:eq(3)').text();
|
|
||||||
var factor = tr.find('td:eq(4)').text();
|
|
||||||
tr.find('td:eq(5)').text(parseFloat((weighOfSand * factor).toFixed(2)));
|
|
||||||
|
|
||||||
|
|
||||||
let result = table.tableToJSON();
|
if( value != "moistureValue" ){
|
||||||
|
var tr = $(value).closest('tr');
|
||||||
let qty = parseFloat($('#dwnldQtyId').text());
|
var weighOfSand = tr.find('td:eq(3)').text();
|
||||||
let moistureSpec = $('#dwnldMoistureSpecId').text();
|
var factor = tr.find('td:eq(4)').text();
|
||||||
let moistureActual = $('#dwnldMoistureActualId').text();
|
tr.find('td:eq(5)').text(parseFloat((weighOfSand * factor).toFixed(2)));
|
||||||
let totalWeighOfSand = 0;
|
|
||||||
let totalFactoredValue = 0;
|
|
||||||
let afs = 0 ;
|
|
||||||
let newPlus20Loss = 0 ;
|
|
||||||
let newPlus30Loss = 0 ;
|
|
||||||
let newSieveLossQty = 0 ;
|
|
||||||
|
|
||||||
for(let i=0; i< result.length-2; i++){ // -2 because last two rows cannot be converted to proper table to json
|
|
||||||
|
|
||||||
if(i == 0 || i == 1){
|
|
||||||
newPlus20Loss += Number(result[i]['WEIGH OF SAND']) ;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(i == 0 || i == 1 || i== 2){
|
let result = table.tableToJSON();
|
||||||
|
|
||||||
newPlus30Loss += Number(result[i]['WEIGH OF SAND']) ;
|
let qty = parseFloat($('#dwnldQtyId').text());
|
||||||
|
let moistureSpec = $('#dwnldMoistureSpecId').text();
|
||||||
|
let moistureActual = $('#dwnldMoistureActualId').text();
|
||||||
|
let totalWeighOfSand = 0 ;
|
||||||
|
let totalFactoredValue = 0 ;
|
||||||
|
let afs = 0 ;
|
||||||
|
let newPlus20Loss = 0 ;
|
||||||
|
let newPlus30Loss = 0 ;
|
||||||
|
let newSieveLossQty = 0 ;
|
||||||
|
|
||||||
|
for(let i=0; i< result.length-2; i++){
|
||||||
|
|
||||||
|
if(i === 0 || i === 1){
|
||||||
|
newPlus20Loss += Number(result[i]['WEIGH OF SAND']) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(i === 0 || i === 1 || i === 2){
|
||||||
|
newPlus30Loss += Number(result[i]['WEIGH OF SAND']) ;
|
||||||
|
newSieveLossQty = (parseFloat(qty) * newPlus30Loss) / 100 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
totalWeighOfSand += Number(result[i]['WEIGH OF SAND']) ;
|
||||||
|
totalFactoredValue += Number(result[i]['TOTAL']) ;
|
||||||
|
afs = (Number(totalFactoredValue) / Number(totalWeighOfSand)).toFixed(2) ;
|
||||||
|
|
||||||
|
|
||||||
|
$('#dwnldWeighOfSand').text((totalWeighOfSand.toFixed(2)));
|
||||||
|
$('#dwnldFtotalId').text((totalFactoredValue).toFixed(2));
|
||||||
|
$('#dwnldAfsId').text(afs);
|
||||||
|
|
||||||
newSieveLossQty = (parseFloat(qty) * newPlus30Loss) / 100 ;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
totalWeighOfSand += Number(result[i]['WEIGH OF SAND']) ;
|
|
||||||
totalFactoredValue += Number(result[i]['TOTAL']) ;
|
|
||||||
afs = (Number(totalFactoredValue) / Number(totalWeighOfSand)).toFixed(2) ;
|
|
||||||
|
|
||||||
|
let newMoistureLoss = parseFloat(moistureActual) - parseFloat(moistureSpec) ;
|
||||||
|
|
||||||
$('#dwnldWeighOfSand').text((totalWeighOfSand.toFixed(2)));
|
let newMoistureLossQty = ((parseFloat(qty) * newMoistureLoss) / 100 ).toFixed(2) ;
|
||||||
$('#dwnldFtotalId').text((totalFactoredValue).toFixed(2));
|
|
||||||
$('#dwnldAfsId').text(afs);
|
let newSalableQty = (parseFloat(qty) - newMoistureLossQty - newSieveLossQty).toFixed(2) ;
|
||||||
|
|
||||||
}
|
newSieveLossQty = (newSieveLossQty).toFixed(2);newPlus20Loss
|
||||||
|
|
||||||
|
newPlus20Loss = (newPlus20Loss).toFixed(2);
|
||||||
|
|
||||||
|
newPlus30Loss = (newPlus30Loss).toFixed(2);
|
||||||
|
|
||||||
|
totalWeighOfSand = (totalWeighOfSand).toFixed(2);
|
||||||
|
|
||||||
|
|
||||||
let newMoistureLoss = parseFloat(moistureActual) - parseFloat(moistureSpec) ;
|
$('#10Mm').val(result[0]['WEIGH OF SAND']);
|
||||||
|
$('#20Mm').val(result[1]['WEIGH OF SAND']);
|
||||||
let newMoistureLossQty = ((parseFloat(qty) * newMoistureLoss) / 100 ).toFixed(2) ;
|
$('#30Mm').val(result[2]['WEIGH OF SAND']);
|
||||||
|
$('#40Mm').val(result[3]['WEIGH OF SAND']);
|
||||||
let newSalableQty = (parseFloat(qty) - newMoistureLossQty - newSieveLossQty).toFixed(2) ;
|
$('#50Mm').val(result[4]['WEIGH OF SAND']);
|
||||||
|
$('#70Mm').val(result[5]['WEIGH OF SAND']);
|
||||||
newSieveLossQty = (newSieveLossQty).toFixed(2);
|
$('#100Mm').val(result[6]['WEIGH OF SAND']);
|
||||||
|
$('#140Mm').val(result[7]['WEIGH OF SAND']);
|
||||||
console.log(totalWeighOfSand); //total
|
$('#200Mm').val(result[8]['WEIGH OF SAND']);
|
||||||
console.log(totalFactoredValue);
|
$('#300Mm').val(result[9]['WEIGH OF SAND']);
|
||||||
console.log(afs);
|
$('#pan') .val(result[10]['WEIGH OF SAND']);
|
||||||
console.log(newMoistureLoss);
|
$('#total').val(totalWeighOfSand);
|
||||||
console.log("qty");
|
$('#plus20Loss').val(newPlus20Loss);
|
||||||
console.log(qty);
|
$('#plus30Loss').val(newPlus30Loss);
|
||||||
console.log(newMoistureLossQty);
|
$('#moistureSpec').val(moistureSpec);
|
||||||
console.log(newSieveLossQty);
|
$('#moistureActual').val(moistureActual);
|
||||||
console.log(newSalableQty);
|
$('#moistureLoss').val(newMoistureLoss);
|
||||||
|
$('#moistureLossQty').val(newMoistureLossQty);
|
||||||
$('#10Mm').val(result[0]['WEIGH OF SAND']);
|
$('#sieveLossQty').val(newSieveLossQty);
|
||||||
$('#20Mm').val(result[1]['WEIGH OF SAND']);
|
$('#salableQty').val(newSalableQty);
|
||||||
$('#30Mm').val(result[2]['WEIGH OF SAND']);
|
|
||||||
$('#40Mm').val(result[3]['WEIGH OF SAND']);
|
|
||||||
$('#50Mm').val(result[4]['WEIGH OF SAND']);
|
|
||||||
$('#70Mm').val(result[5]['WEIGH OF SAND']);
|
|
||||||
$('#100Mm').val(result[6]['WEIGH OF SAND']);
|
|
||||||
$('#140Mm').val(result[7]['WEIGH OF SAND']);
|
|
||||||
$('#200Mm').val(result[8]['WEIGH OF SAND']);
|
|
||||||
$('#300Mm').val(result[9]['WEIGH OF SAND']);
|
|
||||||
$('#pan') .val(result[10]['WEIGH OF SAND']);
|
|
||||||
$('#total').val(totalWeighOfSand);
|
|
||||||
$('#plus20Loss').val(newPlus20Loss);
|
|
||||||
$('#plus30Loss').val(newPlus30Loss);
|
|
||||||
$('#moistureSpec').val(moistureSpec);
|
|
||||||
$('#moistureActual').val(moistureActual);
|
|
||||||
$('#moistureLoss').val(newMoistureLoss);
|
|
||||||
$('#moistureLossQty').val(newMoistureLossQty);
|
|
||||||
$('#sieveLossQty').val(newSieveLossQty);
|
|
||||||
$('#salableQty').val(newSalableQty);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- adding select 2 -->
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
$('.status').select2({
|
$('.status').select2({
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user