csrtechnew.ohctech.in/daily_shift_log_report_pdf.php
2025-04-14 13:28:09 +05:30

326 lines
13 KiB
PHP

<?php
//include ('pdf_header_reverse.php');
include('includes/config/config.php');
include('includes/functions.php');
?>
<?php
$date = date('Y-m-d', strtotime($_POST['startDate1']));
error_log("date:::" . $date);
$shiftId = $_REQUEST['shift'];
function getShiftDetails($shiftId, $date, $current_status, $p,$is_shift)
{
$sql_shift = "select ssd.*,ss.* from shift_status_details ssd left join shift_status ss on ssd.shift_id = ss.shift_status_id where ssd.shift_id = '" . $shiftId . "' and ssd.current_status = '" . $current_status . "' and ssd.record_date = '" . $date . "' and is_shift = '" . $is_shift . "'";
$result_shift = mysqli_query($conn,$sql_shift);
while ($row_shift = mysqli_fetch_assoc($result_shift)) {
if ($p == "start") {
return $row_shift['start_date_time'];
}
if ($p == "end") {
return $row_shift['end_date_time'];
}
if ($p == "id") {
return $row_shift['shift_details_id'];
}
if($p == "name"){
return $row_shift['status_name'];
}
}
}
$current_status = 'C';
$getValue = "start";
$getValue2 = "end";
$shift_detail_id = "id";
$is_shift = 'Y';
$shift_name = "name";
$shiftName = getShiftDetails($shiftId,$date,$current_status,$shift_name,$is_shift);
$shift_start_time = getShiftDetails($shiftId, $date, $current_status,$getValue,$is_shift);
$shift_end_time = getShiftDetails($shiftId, $date, $current_status,$getValue2,$is_shift);
$shift_details_id = getShiftDetails($shiftId, $date, $current_status,$shift_detail_id,$is_shift);
$prev_shift_id = ceil($shift_details_id - 1);
error_log("shift start time::" . $shift_start_time);
error_log("shift end time::" . $shift_end_time);
error_log("shift details id::" . $shift_details_id);
error_log("prev shift id::" . $prev_shift_id);
error_log("shift name::" . $shiftName);
error_log("shift id::" . $shiftId);
$prev_shift_start_time = '';
$prev_shift_end_time = '';
$shift = '';
$sql_prev = "select * from shift_status_details where shift_details_id='" . $prev_shift_id . "'";
$result_prev = mysqli_query($conn,$sql_prev);
while ($row_prev = mysqli_fetch_assoc($result_prev)) {
$prev_shift_start_time = $row_prev['start_date_time'];
$prev_shift_end_time = $row_prev['end_date_time'];
$shift = $row_prev['shift_id'];
}
error_log("prev shift start time::" . $prev_shift_start_time);
error_log("prev shift end time::" . $prev_shift_end_time);
error_log("prev shift id::" . $shift);
$ohc = $_SESSION['current_ohcttype'];
$query_for_company = "select company_name, company_logo, image_type from company_profile ";
//echo $query_for_company;
$result_for_company = @mysqli_query($conn,$query_for_company);
if ($row_for_company = @mysqli_fetch_array($result_for_company)) {
@extract($row_for_company);
}
?>
<link href="includes/css-js/admin.css" rel="stylesheet" type="text/css" />
<style>
@page {
margin: 15px;
}
.btn {
background-color: #4CAF50;
border-radius: 5%;
/* Green */
border: none;
color: white;
padding: 5px 8px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 12px;
margin: 4px 2px;
cursor: pointer;
}
@media print {
#printPageButton {
display: none;
}
}
</style>
<body>
<table width="100%">
<tr>
<td align="left"><img src="data:image/jpeg;base64,<?php echo base64_encode($row_for_company['company_logo']) ?>" style=" width: 120px; height: 60px;" /></td>
<td align="center" style="font-size: 15px"><b>OCCUPATIONAL HEALTH CENTRE,<?php echo $row_for_company['company_name'] ?>,RCCPL Pvt Ltd,Maihar,MP(<?php echo getTableFieldValue('ohc_type', 'ohc_type_name', 'ohc_type_id', $_SESSION['current_ohcttype']) ?>)</b></td>
</tr>
</table>
<table width="100%">
<tr>
<td align="center" style="font-size: 15px"><strong>Daily Shift Wise Medicine Log Report</strong></td>
</tr>
<tr>
<td align="left" style="font-size: 12px"><strong>For Date: <?php echo date("d-M-Y", strtotime($date)) . " " . "Shift Name: " . $shiftName; ?></strong></td>
<td align="right" style="font-size: 15px"><button align="center" id="printPageButton" class="btn btn-success" onClick="window.print();">Print</button></td>
</tr>
</table>
<br>
<table width="100%" border="1" cellspacing="0">
<tr>
<th width="1%" align="center">Sr</th>
<th align="center" width="8%">Items</th>
<th align="center" width="2%">Fresh</th>
<th align="center" width="3%">Previous</th>
<th align="center" width="2%">Total</th>
<th align="center" width="40%">Consumption Details</th>
<th align="center" width="2%">Total Consumed</th>
<th align="center" width="2%">Balance</th>
</tr>
<?php
error_reporting(E_ERROR | E_PARSE);
$count = 0;
$data = "";
$sql = "select cat_id from tbl_categories where cat_code not in ('CNC') order by cat_name asc";
error_log("SSSSSSS$$$$$$$$$" . $sql);
$result = mysqli_query($conn,$sql);
$med_cat = array();
function consume_details($item_id, $a, $date, $shift_start_time, $shift_end_time, $ohc)
{
$consume_detail = '';
$issued_qty_total = 0;
$sql_diect_issue_query = "SELECT ifnull(dd.issue_qty,0) as direct_issue FROM direct_medicine_issue_log_details dd LEFT JOIN direct_medicine_issue_log dm ON dd.issue_log_id = dm.issue_log_id WHERE item_id='$item_id' and date(date_of_issue) = '" . $date . "' and time(date_of_issue)>= time('$shift_start_time') and time(date_of_issue) <= ('$shift_end_time') and ohc_location_id = '" . $ohc . "'";
error_log("sql_diect_issue_query: " . $sql_diect_issue_query);
$result_sql_diect_issue_query = mysqli_query($conn,$sql_diect_issue_query);
while ($row_result_sql_diect_issue_query = mysqli_fetch_array($result_sql_diect_issue_query)) {
$consume_detail .= 'DIRECT ISSUE ' . ':' . $row_result_sql_diect_issue_query['direct_issue'] . ' : ';
$issued_qty_total += $row_result_sql_diect_issue_query['direct_issue'];
}
error_log("issued_qty_total:::" . $issued_qty_total);
$sql_opd_consumables = "SELECT ifnull(c.issued_qty,0) as consumable_issue,e.ticket_no FROM opd_consumables c LEFT JOIN employee_appointment e ON c.consume_id = e.appointment_id where medicine = '$item_id' and date(e.appointment_date) = '" . $date . "' and time(e.appointment_date)>= time('$shift_start_time') and time(e.appointment_date) <= time('$shift_end_time') and ohc_type_id = '" . $ohc . "'";
error_log("sql_opd_consumables: " . $sql_opd_consumables);
$result_sql_opd_consumables = mysqli_query($conn,$sql_opd_consumables);
while ($row_result_sql_opd_consumables = mysqli_fetch_array($result_sql_opd_consumables)) {
$consume_detail .= 'ID-' . $row_result_sql_opd_consumables['ticket_no'] . ':' . $row_result_sql_opd_consumables['consumable_issue'] . ' : ';
$issued_qty_total += $row_result_sql_opd_consumables['consumable_issue'];
}
error_log("issued_qty_total_2:::" . $issued_qty_total);
$sql_consume = "select a.appointment_id, (ifnull(a.issued_qty,0)+ifnull(c.issued_qty,0)) as total_issued,b.ticket_no from treatment a left join employee_appointment b on a.appointment_id = b.appointment_id left join detention_intake c on b.appointment_id = c.det_id where item_id = '$item_id' and date(e.appointment_date) = '" . $date . "' and time(e.appointment_date)>= time('$shift_start_time') and time(e.appointment_date) <= time('$shift_end_time') and b.ohc_type_id = '" . $ohc . "'";
error_log("cccccccons" . $sql_consume);
$result_consume = mysqli_query($conn,$sql_consume);
while ($row_consume = mysqli_fetch_array($result_consume)) {
$consume_detail .= 'ID-' . $row_consume['ticket_no'] . ':' . $row_consume['total_issued'] . ' : ';
$issued_qty_total += $row_consume['total_issued'];
error_log("detaiilllllllllll" . $row_consume['total_issued']);
}
error_log("issued_qty_total_3:::" . $issued_qty_total);
if ($a == 1) {
return $consume_detail;
} else {
return $issued_qty_total;
}
}
function freshReceivedItemBalance($item_id, $date, $ohc, $shift_start_time, $shift_end_time)
{
$received_qty_total = 0;
$sql_fresh_received = "select ris.received_qty from received_issue_items ris left join received_master rm on ris.received_id = rm.received_id where ris.item_id='" . $item_id . "' and rm.received_date = '" . $date . "' and rm.ohc_location_id = '" . $ohc . "' and rm.last_modified>='$shift_start_time' and rm.last_modified<='$shift_end_time'";
$result_fresh = mysqli_query($conn,$sql_fresh_received);
while ($row_fresh = mysqli_fetch_assoc($result_fresh)) {
$received_qty_total += $row_fresh['received_qty'];
}
error_log("fresh:::" . $sql_fresh_received);
return $received_qty_total;
}
function prevDispensaryItemBalance($item_id, $ohc, $shift, $prev_shift_id)
{
$sql_prev_balance = "select stock_qty from item_stock_dispensary_shift_balance a left join shift_status_details b on a.shift_id = b.shift_id where a.item_id = '$item_id' and a.ohc_location_id = '$ohc' and a.shift_id='" . $shift . "' and b.shift_details_id = '" . $prev_shift_id . "' and a.record_date = date(b.start_date_time) ";
error_log("sql_prev_balance:::" . $sql_prev_balance);
$result_sql_prev_balance = mysqli_query($conn,$sql_prev_balance);
$row_prev_balance = mysqli_fetch_array($result_sql_prev_balance);
if ($row_prev_balance == 0) {
return 0;
} else {
return $row_prev_balance['stock_qty'];
}
}
function total_qty($fresh, $prev)
{
$total = $fresh + $prev;
return $total;
}
function balance($total_balance, $total_consumed)
{
error_log("balancesjfbbf :::" . $total_balance . " - " . $total_consumed);
$b = $total_balance - $total_consumed;
return $b;
}
while ($row_m = mysqli_fetch_array($result)) {
array_push($med_cat, $row_m['cat_id']);
}
foreach ($med_cat as $i => $value) {
$query = "select item_id, item_name from tbl_items where cat='$value' and status = '1' group by item_id";
error_log("###########QQQQQQQQ" . $query);
$result = mysqli_query($conn,$query);
$total = mysqli_num_rows($result);
if ($total != 0) { ?>
<tr rowspan="2">
<th colspan='8'>
<center><?php echo getTableFieldValue("tbl_categories", "cat_name", "cat_id", $value) ?></center>
</th>
</tr>
<tr></tr>
<?php
while ($row = mysqli_fetch_assoc($result)) {
$count++;
?>
<tr>
<td align="left"><?php echo $count ?></td>
<td align="left"><?php echo getItemWithFormName($row['item_id']) ?></td>
<td align="left"><?php echo freshReceivedItemBalance($row['item_id'], $date, $ohc, $shift_start_time, $shift_end_time) ?></td>
<td align="left"><?php echo prevDispensaryItemBalance($row['item_id'], $ohc, $shift, $prev_shift_id) ?></td>
<td align="left"><?php echo ceil(total_qty(freshReceivedItemBalance($row['item_id'], $date, $ohc, $shift_start_time, $shift_end_time), prevDispensaryItemBalance($row['item_id'], $ohc, $shift, $prev_shift_id))) ?></td>
<td align="left" width="50%"><?php echo consume_details($row['item_id'], 1, $date, $shift_start_time, $shift_end_time, $ohc) ?></td>
<td align="left"><?php echo consume_details($row['item_id'], 0, $date, $shift_start_time, $shift_end_time, $ohc) ?></td>
<td align="left"><?php echo ceil(balance(total_qty(freshReceivedItemBalance($row['item_id'], $date, $ohc, $shift_start_time, $shift_end_time), prevDispensaryItemBalance($row['item_id'], $ohc, $shift, $prev_shift_id)), consume_details($row['item_id'], 0, $date, $shift_start_time, $shift_end_time, $ohc))) ?></td>
</tr>
<?php }
}
} ?>
</table>
</body>
<script>
$(document).ready(function() {
window.print();
});
</script>