ria/app/Views/CoatingMachineDetail.php
2024-10-22 17:34:34 +05:30

914 lines
38 KiB
PHP

<style>
#datatable_filter {
float: inline-end;
}
#datatable_wrapper .row .col-sm-4 {
flex-basis: 50%;
float: inline-end;
}
#datatable_paginate .pagination {
flex-basis: 50%;
float: inline-end;
margin: 0 0 15px;
}
#datatable_wrapper .row:nth-child(3),
#datatable_wrapper .row:nth-child(1) {
padding: 0 15px;
}
#datatable_info {
margin-top: 5px;
}
.dataTables_wrapper {
padding-bottom: 0;
}
.Date-filter-form {
display: flex;
align-items: center;
gap: 10px;
/* Adjust the gap as needed */
}
.Date-filter-form input,
.Date-filter-form button {
padding: 5px;
font-size: 14px;
}
.Date-filter-form button {
background-color: #007bff;
color: white;
border: none;
cursor: pointer;
}
.Date-filter-form button:hover {
background-color: #0056b3;
}
.icon-button {
background: none;
border: none;
cursor: pointer;
color: #007bff;
font-size: 18px;
}
.icon-button:hover {
color: #0056b3;
}
</style>
<div class="content-page">
<div class="content">
<!-- Start Content-->
<div class="container-fluid">
<!-- start page title -->
<div>
<div class="row">
<div class="col-12">
<div class="page-title-box page-title-box-alt">
<div class="page-title-right">
<ol class="breadcrumb m-0">
<li class="breadcrumb-item"><a href="javascript: void(0);">Stock</a></li>
<li class="breadcrumb-item active">
<h4 class="page-title"> <?= trim(explode(":", $pageTitle)[1]) ?> </h4>
</li>
</ol>
</div>
<button type="button" class="btn btn-success" data-target="#coatingMachineDetailModal"
data-toggle="modal">
Add New Record
</button>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="card">
<form method='post' action="<?= base_url('/coatingMachineDetails');?>">
<div class="card-body">
<div class=form-row>
<div class="form-group col-md-2 mt-2 ">
<input type="text"
value="<?= $month; ?>" name="month"
class="form-control monthpicker" id="monthpicker">
</div>
<div class="form-group col-md-2">
<button type="submit" class="btn btn-success"> Change Month </button>
</div>
</div>
</form>
<table id="datatable" class="table table-hover table-bordered"
style="background-color:#fff;">
<thead>
<tr>
<th style="text-align:center !important;">Date</th>
<th style="text-align:center !important;">Shift</th>
<th style="text-align:center !important;">Machine On Time</th>
<th style="text-align:center !important;">Machine Off Time</th>
<th style="text-align:center !important;">Machine Running(hr)</th>
<th style="text-align:center !important;">Total Coating</th>
<th style="text-align:center !important;">Total Coating Sand(kg)</th>
<th style="text-align:center !important;">Total Gas Consumption</th>
<th style="text-align:center !important;">Hour Gas</th>
<th style="text-align:center !important;">Hour QTY(kg)
</th>
<th style="text-align:center !important;">Customer Name</th>
<th style="text-align:center !important;">Action</th>
</tr>
</thead>
<tbody>
<?php
if (!empty($coatingMachineDetails)) {
foreach ($coatingMachineDetails as $record) {
?>
<tr data-id="<?php echo $record['id']; ?>">
<td align="center"><?php echo $record['date'] ?></td>
<td align="center"><?php echo $record['shift'] ?></td>
<td align="center"><?php echo $record['machineOnTime'] ?></td>
<td align="center"><?php echo $record['machineOffTime'] ?></td>
<td align="center"><?php echo $record['machineRunningInHrs'] ?? '' ?></td>
<td align="center"><?php echo $record['totalCoating'] ?></td>
<td align="center"><?php echo $record['totalCoatingSandInKg'] ?></td>
<td align="center"><?php echo $record['totalGasConsumption'] ?></td>
<td align="center"><?php echo $record['perHourGasConsumption'] ?? '' ?></td>
<td align="center"><?php echo $record['perHourCoatingSandQTY'] ?? '' ?></td>
<td align="center"><?php echo $record['customerName']; ?></td>
<td align="center">
<a data-toggle="tooltip" class="edit-btn"
data-target="editCoatingMachineDetailModal" data-toggle="modal"
style="cursor:pointer ;">
<i class="fa fa-pencil-alt"
title="Click here to Edit "></i>
&nbsp;&nbsp;&nbsp;
</a>
<a data-toggle="tooltip" onclick="confirmDelete(event)" style="cursor:pointer ;"
href="<?php echo base_url(); ?>deleteCoatingMachineDetails?id=<?php echo $record['id'] ?>">
<i class="fa fa-trash"
title="Click here to Delete "></i>
&nbsp;&nbsp;&nbsp;
</a>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div> <!-- end card body-->
</div> <!-- end card -->
</div><!-- end col-->
</div>
</div>
</div> <!-- container -->
</div> <!-- content -->
</div>
<!-- Modal -->
<div class="modal fade" id="coatingMachineDetailModal" tabindex="-1" role="dialog"
aria-labelledby="coatingMachineDetailModalLabel" aria-hidden="true">
<div class="modal-dialog modal-xl" style="width:1060px !important ;" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="coatingMachineDetailModalLabel">
Add New Coating Machine Detail</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<!-- form -->
<form method="post" action="<?php echo base_url(); ?>addNewCoatingMachineDetails">
<div class="modal-body">
<div class="form-row">
<div class="form-group col-md-3">
<label for="dateId">Date</label>
<span class="badge mandatory">*</span>
<input type="date" class="form-control" id="dateId" name="date" value="" required>
</div>
<div class="form-group col-md-3">
<label for="shiftId">Shift</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="shiftId" name="shift" value="" required>
</div>
<div class="form-group col-md-3">
<label for="machineOnTimeHrId">Machine On Time</label>
<span class="badge mandatory">*</span>
<select class="form-control" name="machineOnTime" id="machineOnTimeHrId" required>
<option value="">Select Time</option>
<option value="12:00 AM" >12:00 AM</option>
<option value="12:30 AM"> 12:30 AM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour < 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 AM"> ' . $formattedHour . ':00 AM</option>';
echo '<option value="' . $formattedHour . ':30 AM">' . $formattedHour . ':30 AM</option>';
}
?>
<option value="12:00 PM">12:00 PM</option>
<option value="12:30 PM">12:30 PM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour <= 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 PM"> ' . $formattedHour . ':00 PM</option>';
echo '<option value="' . $formattedHour . ':30 PM">' . $formattedHour . ':30 PM</option>';
}
?>
</select>
</div>
<div class="form-group col-md-3">
<label for="machineOffTimeHrId">Machine Off Time</label>
<span class="badge mandatory">*</span>
<select class="form-control" name="machineOffTime" id="machineOffTimeHrId" required>
<option value="">Select Time</option>
<option value="12:00 AM" > 12:00 AM</option>
<option value="12:30 AM"> 12:30 AM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour < 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 AM"> ' . $formattedHour . ':00 AM</option>';
echo '<option value="' . $formattedHour . ':30 AM">' . $formattedHour . ':30 AM</option>';
}
?>
<option value="12:00 PM" > 12:00 PM</option>
<option value="12:30 PM"> 12:30 PM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour <= 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 PM"> ' . $formattedHour . ':00 PM</option>';
echo '<option value="' . $formattedHour . ':30 PM">' . $formattedHour . ':30 PM</option>';
}
?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-3">
<label for="customerNameId">Customer Name</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="customerNameId" name="customerName" value=""
required>
</div>
<div class="form-group col-md-3">
<label for="totalCoatingId">Total Coating</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="totalCoatingId" name="totalCoating" value=""
required>
</div>
<div class="form-group col-md-3">
<label for="totalCoatingSandId">Total Coating Sand (in Kg)</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="totalCoatingSandId" name="totalCoatingSandInKg"
value="" required>
</div>
<div class="form-group col-md-3">
<label for="totalGasConsumptionId">Total Gas Consumption</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="totalGasConsumptionId"
name="totalGasConsumption" value="" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-3">
<label for="machineRunningInHrsId"> Machine Running In Hrs</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="machineRunningInHrsId"
name="machineRunningInHrs" required>
</div>
<div class="form-group col-md-3">
<label for="perHourGasConsumptionId">Per Hour Gas Consumption </label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="perHourGasConsumptionId"
name="perHourGasConsumption" required>
</div>
<div class="form-group col-md-3">
<label for="perHourCoatingSandQTY">Per Hour Coating Sand QTY</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="perHourCoatingSandQTYId"
name="perHourCoatingSandQTY" required>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary">Save </button>
</div>
</form>
</div>
</div>
</div>
<!-- editCoatingMachineDetailModal -->
<div class="modal fade" id="editCoatingMachineDetailModal" tabindex="-1" role="dialog"
aria-labelledby="editCoatingMachineDetailModalLabel" aria-hidden="true">
<div class="modal-dialog modal-xl" style="width:1060px !important ;" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="editCoatingMachineDetailModalLabel">
Edit Coating Machine Detail</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<!-- form -->
<form method="post" id="editCoatingMachineDetailModalFormId"
action="<?php echo base_url(); ?>updateCoatingMachineDetails">
<div class="modal-body">
<div class="form-row">
<div class="form-group col-md-3">
<label for="editDateId">Date</label>
<span class="badge mandatory">*</span>
<input type="date" class="form-control" id="editDateId" name="date" value="" required>
<input type="hidden" name="editCoatingMachineDetailId" id="editCoatingMachineDetailId">
</div>
<div class="form-group col-md-3">
<label for="editShiftId">Shift</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editShiftId" name="shift" value="" required>
</div>
<div class="form-group col-md-3">
<label for="editMachineOnTimeHrId">Machine On Time</label>
<span class="badge mandatory">*</span>
<select class="form-control" name="machineOnTime" id="editMachineOnTimeHrId" required>
<option value="">Select Time</option>
<option value="12:00 AM">12:00 AM</option>
<option value="12:30 AM">12:30 AM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour < 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 AM"> ' . $formattedHour . ':00 AM</option>';
echo '<option value="' . $formattedHour . ':30 AM">' . $formattedHour . ':30 AM</option>';
}
?>
<option value="12:00 PM">12:00 PM</option>
<option value="12:30 PM">12:30 PM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour <= 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 PM"> ' . $formattedHour . ':00 PM</option>';
echo '<option value="' . $formattedHour . ':30 PM">' . $formattedHour . ':30 PM</option>';
}
?>
</select>
</div>
<div class="form-group col-md-3">
<label for="editMachineOffTimeHrId">Machine Off Time</label>
<span class="badge mandatory">*</span>
<select class="form-control" name="machineOffTime" id="editMachineOffTimeHrId" required>
<option value="">Select Time</option>
<option value="12:00 AM">12:00 AM</option>
<option value="12:30 AM">12:30 AM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour <= 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 AM"> ' . $formattedHour . ':00 AM</option>';
echo '<option value="' . $formattedHour . ':30 AM">' . $formattedHour . ':30 AM</option>';
}
?>
<option value="12:00 PM">12:00 PM</option>
<option value="12:30 PM">12:30 PM</option>
<?php
// Loop through the hours 1 to 12
for ($hour = 1; $hour < 12; $hour++) {
// Display each hour with ":00"
$formattedHour = str_pad($hour, 2, '0', STR_PAD_LEFT);
echo '<option value="' . $formattedHour . ':00 PM"> ' . $formattedHour . ':00 PM</option>';
echo '<option value="' . $formattedHour . ':30 PM">' . $formattedHour . ':30 PM</option>';
}
?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-3">
<label for="editCustomerNameId">Customer Name</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editCustomerNameId" name="customerName" value=""
required>
</div>
<div class="form-group col-md-3">
<label for="editTotalCoatingId">Total Coating</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editTotalCoatingId" name="totalCoating" value=""
required>
</div>
<div class="form-group col-md-3">
<label for="editTotalCoatingSandId">Total Coating Sand (in Kg)</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editTotalCoatingSandId"
name="totalCoatingSandInKg" value="" required>
</div>
<div class="form-group col-md-3">
<label for="editTotalGasConsumptionId">Total Gas Consumption</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editTotalGasConsumptionId"
name="totalGasConsumption" value="" required>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-3">
<label for="editMachineRunningInHrsId"> Machine Running In Hrs</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editMachineRunningInHrsId"
name="machineRunningInHrs" required>
</div>
<div class="form-group col-md-3">
<label for="editPerHourGasConsumptionId">Per Hour Gas Consumption </label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editPerHourGasConsumptionId"
name="perHourGasConsumption" required>
</div>
<div class="form-group col-md-3">
<label for="editPerHourCoatingSandQTYId">Per Hour Coating Sand QTY</label>
<span class="badge mandatory">*</span>
<input type="text" class="form-control" id="editPerHourCoatingSandQTYId"
name="perHourCoatingSandQTY" required>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary">Save </button>
</div>
</form>
</div>
</div>
</div>
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script>
<script>
$(document).ready(function () {
$.fn.dataTable.ext.type.order['date-eu-pre'] = function (date) {
var dateSplit = date.split('-');
return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1;
};
// Initialize the DataTable
var table = $('#datatable').DataTable({
dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination
buttons: [
'csv', 'excel', 'pdf', // Export buttons
],
pageLength: 10, // Default rows per page
lengthMenu: [[10, 20, 30, 50, -1], [10, 20, 30, 50, "All"]], // Rows per page options
// responsive: true, // Responsive table
order: [], // Default ordering (column index 0, descending)
language: {
paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon
previous: '<i class="fas fa-angle-left"></i>' // Previous button icon
}
}
});
// Handle form submission
$("#DateRangeFilter").submit(function (e) {
e.preventDefault();
table.draw();
});
});
</script>
<script>
function confirmDelete(event) {
let result = confirm(` Do you Confirm to Delete the Coating Machine Detail?`);
if (result) { return result; } else { event.preventDefault(); }
}
</script>
<script>
$(document).ready(function () {
$('#exampleSelect2 ').select2();
$('#machineOnTimeHrId ').select2();
$('#machineOffTimeHrId ').select2();
$('#editMachineOnTimeHrId ').select2();
$('#editMachineOffTimeHrId ').select2();
});
</script>
<!-- appending values in the edit coating machine detail modal from the table -->
<script>
$(document).ready(function () {
$('#datatable tbody').on('click', '.edit-btn', function () {
var row = $(this).closest('tr');
// Get values from the row
var date = row.find('td:eq(0)').text();
var shift = row.find('td:eq(1)').text();
var machineOnTimeHr = row.find('td:eq(2)').text();
var machineOffTimeHr = row.find('td:eq(3)').text();
var machineRunningInHrs = row.find('td:eq(4)').text();
var totalCoating = row.find('td:eq(5)').text();
var totalCoatingSandInKg = row.find('td:eq(6)').text();
var totalGasConsumption = row.find('td:eq(7)').text();
var perHourGasConsumption = row.find('td:eq(8)').text();
var perHourCoatingSandQTY = row.find('td:eq(9)').text();
var customerName = row.find('td:eq(10)').text();
// Fill the modal fields with the values
$('#editCoatingMachineDetailId').val(row.data('id'));
$('#editCustomerNameId').val(customerName);
$('#editDateId').val(date);
$('#editShiftId').val(shift);
$('#editMachineOnTimeHrId').val(machineOnTimeHr).change();
$('#editMachineOffTimeHrId').val(machineOffTimeHr).change();
$('#editTotalCoatingId').val(totalCoating);
$('#editTotalCoatingSandId').val(totalCoatingSandInKg);
$('#editTotalGasConsumptionId').val(totalGasConsumption);
$('#editMachineRunningInHrsId').val(machineRunningInHrs);
$('#editPerHourGasConsumptionId').val(perHourGasConsumption);
$('#editPerHourCoatingSandQTYId').val(perHourCoatingSandQTY);
// Show the modal
$('#editCoatingMachineDetailModal').modal('show');
});
});
</script>
<!-- calculations for some fields needed in onChange while adding coating machine details -->
<script>
$(document).ready(function () {
$('#machineOnTimeHrId , #dateId').change(function () {
let machineOnDate = $('#dateId').val();
if (machineOnDate == '') {
alert('Please Select Date before entering Machine On and Off Time ..!!');
$('#machineOnTimeHrId').val("");
return false;
}
let machineOnTimeHr = $('#machineOnTimeHrId').val();
let machineOffTimeHr = $('#machineOffTimeHrId').val();
let machineRunningInHrs = calculateMachineRunInHrs(machineOnDate, machineOnTimeHr, machineOffTimeHr );
if (!machineRunningInHrs) {
$('machineOnTimeHrId').val('');
return
}
$('#machineRunningInHrsId').val(machineRunningInHrs);
$('#totalCoatingSandId').trigger('change');
$('#totalGasConsumptionId').trigger('change');
});
$('#machineOffTimeHrId , #dateId').change(function () {
let machineOnDate = $('#dateId').val();
if (machineOnDate == '') {
alert('Please Select Date before entering Machine On and Off Time ..!!');
$('#machineOffTimeHrId').val('');
return false;
}
let machineOffTimeHr = $('#machineOffTimeHrId').val();
let machineOnTimeHr = $('#machineOnTimeHrId').val();
let machineRunningInHrs = calculateMachineRunInHrs(machineOnDate, machineOnTimeHr, machineOffTimeHr);
if (!machineRunningInHrs) {
$('#machineOffTimeHrId').val('');
return
}
$('#machineRunningInHrsId').val(machineRunningInHrs);
$('#totalCoatingSandId').trigger('change');
$('#totalGasConsumptionId').trigger('change');
})
$('#totalCoatingSandId').change(function () {
let totalCoatingSandValue = $(this).val();
let machineRunningInHrsValue = $('#machineRunningInHrsId').val();
if (totalCoatingSandValue && machineRunningInHrsValue) {
let perHourCoatingSandQTYValue = (totalCoatingSandValue / machineRunningInHrsValue).toFixed(2);
$('#perHourCoatingSandQTYId').val(perHourCoatingSandQTYValue);
}
})
$('#totalGasConsumptionId').change(function () {
let totalGasConsumptionValue = $(this).val();
let machineRunningInHrsValue = $('#machineRunningInHrsId').val();
if (totalGasConsumptionValue && machineRunningInHrsValue) {
let perHourGasConsumptionValue = (totalGasConsumptionValue / machineRunningInHrsValue).toFixed(2);
$('#perHourGasConsumptionId').val(perHourGasConsumptionValue);
}
})
})
</script>
<!-- calculations for some fields needed in onChange while editing coating machine details -->
<script>
$(document).ready(function () {
$('#editMachineOnTimeHrId , #editDateId').change(function () {
let machineOnDate = $('#editDateId').val();
if (machineOnDate == '') {
alert('Please Select Date before entering Machine On and Off Time ..!!');
$('#editMachineOnTimeHrId').val('');
return false;
}
let machineOnTimeHr = $('#editMachineOnTimeHrId').val();
let machineOffTimeHr = $('#editMachineOffTimeHrId').val();
let machineRunningInHrs = calculateMachineRunInHrs(machineOnDate, machineOnTimeHr, machineOffTimeHr);
if (!machineRunningInHrs) {
$('#editMachineOnTimeHrId').val('');
return
}
$('#editMachineRunningInHrsId').val(machineRunningInHrs);
$('#editTotalCoatingSandId').trigger('change');
$('#editTotalGasConsumptionId').trigger('change');
});
$('#editMachineOffTimeHrId , #editDateId').change(function () {
let machineOnDate = $('#editDateId').val();
if (machineOnDate == '') {
alert('Please Select Date before entering Machine On and Off Time ..!!');
$('#editMachineOnTimeHrId').val('');
return false;
}
let machineOnTimeHr = $('#editMachineOnTimeHrId').val();
let machineOffTimeHr = $('#editMachineOffTimeHrId').val();
let machineRunningInHrs = calculateMachineRunInHrs(machineOnDate, machineOnTimeHr, machineOffTimeHr);
if (!machineRunningInHrs) {
$('#editMachineOffTimeHrId').val('');
return
}
$('#editMachineRunningInHrsId').val(machineRunningInHrs);
$('#editTotalCoatingSandId').trigger('change');
$('#editTotalGasConsumptionId').trigger('change');
})
$('#editTotalCoatingSandId').change(function () {
let totalCoatingSandValue = $(this).val();
let machineRunningInHrsValue = $('#editMachineRunningInHrsId').val();
if (totalCoatingSandValue && machineRunningInHrsValue) {
let perHourCoatingSandQTYValue = (totalCoatingSandValue / machineRunningInHrsValue).toFixed(2);
$('#editPerHourCoatingSandQTYId').val(perHourCoatingSandQTYValue);
}
})
$('#editTotalGasConsumptionId').change(function () {
let totalGasConsumptionValue = $(this).val();
let machineRunningInHrsValue = $('#editMachineRunningInHrsId').val();
if (totalGasConsumptionValue && machineRunningInHrsValue) {
let perHourGasConsumptionValue = (totalGasConsumptionValue / machineRunningInHrsValue).toFixed(2);
$('#editPerHourGasConsumptionId').val(perHourGasConsumptionValue);
}
})
})
</script>
<!-- utility function for input elements of type="time" -->
<script>
function calculateMachineRunInHrs(machineOnDate, machineOnTimeHr, machineOffTimeHr) {
let machineOnTime12 = machineOnTimeHr;
let machineOffTime12 = machineOffTimeHr;
let machineOnTime24 = convertTo24Hr(machineOnTime12);
let machineOffTime24 = convertTo24Hr(machineOffTime12);
const startDate = new Date(`${machineOnDate}T${machineOnTime24}`);
const endDate = new Date(`${machineOnDate}T${machineOffTime24}`);
// Handle the case where end time is on the next day
if (endDate < startDate) {
endDate.setDate(endDate.getDate() + 1);
}
// Calculate the difference in milliseconds
const diffInMs = endDate - startDate;
// Convert milliseconds to hours and minutes
const hours = Math.floor(diffInMs / (1000 * 60 * 60));
const minutes = Math.floor((diffInMs % (1000 * 60 * 60)) / (1000 * 60));
return `${hours}.${minutes >= 30 ? 5 : 0}`; // Return in HH.MM format
}
</script>
<script>
function convertTo24Hr(time) {
const [timePart, modifier] = time.split(" ");
let [hours, minutes] = timePart.split(":");
// Convert hours to a number
hours = parseInt(hours, 10);
// Adjust hours based on AM/PM
if (modifier == "PM" && hours < 12) {
hours += 12; // Convert PM times to 24-hour format (e.g., 1 PM becomes 13:00)
} else if (modifier == "AM" && hours == 12) {
hours = 0; // Convert 12 AM to 00:00 (midnight)
}
// Format hours and minutes to ensure two digits
return `${String(hours).padStart(2, '0')}:${minutes}:00`;
}
</script>
<script>
$('#monthpicker').datepicker({
format: 'M-yyyy',
viewMode: 'months',
minViewMode: 'months',
autoclose: true,
orientation: 'bottom'
})
</script>