changes in master details-1 vadivel J 22-11-2024

This commit is contained in:
vadivelJ96 2024-11-22 09:41:31 +05:30
parent 599e3efd7b
commit bd0a29ea95
9 changed files with 629 additions and 479 deletions

View File

@ -145,11 +145,21 @@ class Department extends BaseController
function reActivateDepartment(){ function reActivateDepartment(){
$depCode = $this->request->getGet('SID');
$updateInfo = ['IsActive' => 1];
$result = $this->department_model->reActivateDepartment($depCode , $updateInfo);
return redirect()->route('departmentListing');
} }
function deleteDepartment(){ function deleteDepartment(){
$depCode = $this->request->getGet('SID');
$updateInfo = ['IsActive' => 0];
$result = $this->department_model->reActivateDepartment($depCode , $updateInfo);
return redirect()->route('departmentListing');
} }

View File

@ -132,13 +132,21 @@ function getdepcode()
} }
function reActivateDepartment(){ function reActivateDepartment($depCode , $updateInfo){
$this->db->table('t_departmentdetails')
->where('DEPCode', $depCode)
->update($updateInfo);
$res = $this->db->affectedRows();
return $res;
} }
function deleteDepartment(){ function deleteDepartment($depCode , $updateInfo){
$this->db->table('t_departmentdetails')
->where('DEPCode', $depCode)
->update($updateInfo);
$res = $this->db->affectedRows();
return $res;
} }

View File

@ -92,6 +92,7 @@
?> ?>
</tbody> </tbody>
</table> </table>
<p>( Note :The entries count includes archived data... )</p>
<br> <br>
</div> </div>
</div> </div>

View File

@ -41,151 +41,160 @@
<!-- Start Content--> <!-- Start Content-->
<div class="container-fluid"> <div class="container-fluid">
<!-- start page title --> <!-- start page title -->
<div class="row">
<div class="col-12"> <div class="row">
<div class="page-title-box page-title-box-alt"> <div class="col-12">
<div class="page-title-right"> <div class="page-title-box page-title-box-alt">
<ol class="breadcrumb m-0"> <div class="page-title-right">
<li class="breadcrumb-item"><a href="javascript: void(0);">Master Details</a></li> <ol class="breadcrumb m-0">
<li class="breadcrumb-item active"> <li class="breadcrumb-item"><a href="javascript: void(0);">Master Details</a></li>
<h4 class="page-title">Asset Details</h4> <li class="breadcrumb-item active">
</li> <h4 class="page-title">Asset Details</h4>
</ol> </li>
</div> </ol>
<a href="<?php echo base_url();?>addasset" class="btn btn-success">Add New
Asset</a>
</div> </div>
<a href="<?php echo base_url(); ?>addasset" class="btn btn-success">Add New
Asset</a>
</div> </div>
</div> </div>
</div>
<div class="row">
<div class="col-12">
<div class="card">
<form class="Date-filter-form" id="DateRangeFilter" style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;">
<input type="hidden" name="table" value="requisition">
<label for="fromDate">From:</label>
<input class="form-control date_range form-date-search" id="fromDate" name="fromDate" placeholder="Select From Date" autocomplete="off" required>
<label for="toDate">To:</label> <div class="row">
<input class="form-control date_range to-date-search" id="toDate" name="toDate" placeholder="Select To Date" autocomplete="off" required> <div class="col-12">
<div class="card">
<form class="Date-filter-form" id="DateRangeFilter"
style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;">
<input type="hidden" name="table" value="requisition">
<label for="fromDate">From:</label>
<input class="form-control date_range form-date-search" id="fromDate" name="fromDate"
placeholder="Select From Date" autocomplete="off" required>
<button type="submit" class="range_search_button"><i class="fe-search" aria-hidden="true" class="icon-button" title="Search"></i></button> <label for="toDate">To:</label>
<i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button" id="resetButton" title="Reset"></i> <input class="form-control date_range to-date-search" id="toDate" name="toDate"
placeholder="Select To Date" autocomplete="off" required>
<div style="margin-left:auto">
<div class="form-check" style="margin-right: 25px;">
<input class="form-check-input" type="checkbox" id="showArchiveId" name="showArchive"
value="1" onchange="showArchiveList()" style="width: 18px; height: 18px;">
<label class="form-check-label" for="showArchiveId" style="font-size: 1rem; margin-left: 8px;">
Show Archive
</label>
</div>
</div> <button type="submit" class="range_search_button"><i class="fe-search" aria-hidden="true"
class="icon-button" title="Search"></i></button>
<i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button"
<div class="error" id="error"></div> id="resetButton" title="Reset"></i>
</form>
<div class="card-body" style="overflow-x:scroll;">
<table class="table dt-responsive nowrap w-100" id="asset_list_table" > <div style="margin-left:auto">
<thead> <div class="form-check" style="margin-right: 25px;">
<tr> <input class="form-check-input" type="checkbox" id="showArchiveId"
<th>Created Date</th> name="showArchive" value="1" onchange="showArchiveList()"
<th>Asset Code</th> style="width: 18px; height: 18px;">
<th>Asset Name</th> <label class="form-check-label" for="showArchiveId"
<th>Asset Description</th> style="font-size: 1rem; margin-left: 8px;">
<th>Department Name</th> Show Archive
<th>Location</th> </label>
<th>Asset User</th> </div>
<th>Supplier Name</th>
<th>Received Date</th> </div>
<th>Asset Value</th>
<th>Asset Status</th>
<th>Action</th>
</tr> <div class="error" id="error"></div>
</thead> </form>
<tbody> <div class="card-body" style="overflow-x:scroll;">
<?php
if (!empty($userRecords)) {
foreach ($userRecords as $record) {
?>
<tr
class="<?php if($record->IsActive == 0){echo"deactivatedRow";}?>"
style="<?php if($record->IsActive == 0){echo"display:none";}?>"
>
<?php if (date('d-m-Y', strtotime($record->CreatedDt)) == "30-11--0001") { <table class="table dt-responsive nowrap w-100" id="asset_list_table">
$cdate = '00-00-0000'; <thead>
} else { <tr>
$cdate = date('d-m-Y', strtotime($record->CreatedDt)); <th>Created Date</th>
} ?> <th>Asset Code</th>
<td><?php echo $cdate; ?></td> <th>Asset Name</th>
<td><?php echo $record->AssetCode ?></td> <th>Asset Description</th>
<td><?php echo $record->AssetName ?></td> <th>Department Name</th>
<td><?php echo $record->Description ?></td> <th>Location</th>
<td><?php echo $record->DepartmentName ?></td> <th>Asset User</th>
<td><?php echo $record->Location ?></td> <th>Supplier Name</th>
<td><?php echo $record->UserName ?></td> <th>Received Date</th>
<td><?php echo $record->SupplierName ?></td> <th>Asset Value</th>
<td><?php <th>Asset Status</th>
$dtpurchase = new DateTime($record->DateOfPurchase); <th>Action</th>
$DOPurchase = $dtpurchase->format('d-m-Y');
echo $DOPurchase ?></td>
<td><?php echo number_format($record->AssetValue, 2); ?></td> </tr>
<td><?php echo $record->AssetStatus ?></td> </thead>
<td> <tbody>
<?php
if (!empty($userRecords)) {
foreach ($userRecords as $record) {
?>
<tr class="<?php if ($record->IsActive == 0) {
echo "deactivatedRow";
} ?>"
style="<?php if ($record->IsActive == 0) {
echo "display:none";
} ?>">
<?php if (date('d-m-Y', strtotime($record->CreatedDt)) == "30-11--0001") {
$cdate = '00-00-0000';
} else {
$cdate = date('d-m-Y', strtotime($record->CreatedDt));
} ?>
<td><?php echo $cdate; ?></td>
<td><?php echo $record->AssetCode ?></td>
<td><?php echo $record->AssetName ?></td>
<td><?php echo $record->Description ?></td>
<td><?php echo $record->DepartmentName ?></td>
<td><?php echo $record->Location ?></td>
<td><?php echo $record->UserName ?></td>
<td><?php echo $record->SupplierName ?></td>
<td><?php
$dtpurchase = new DateTime($record->DateOfPurchase);
$DOPurchase = $dtpurchase->format('d-m-Y');
echo $DOPurchase ?></td>
<td><?php echo number_format($record->AssetValue, 2); ?></td>
<td><?php echo $record->AssetStatus ?></td>
<td>
<?php if ($record->IsActive == 0) { ?> <?php if ($record->IsActive == 0) { ?>
<a <a onclick="confirmReActivatingAsset()"
onclick ="confirmReActivatingAsset()" href="<?php echo base_url() . 'assetdetails/reActivateAsset/?AssetID=' . $record->AssetCode ?>"
href="<?php echo base_url() . 'assetdetails/reActivateAsset/?AssetID=' . $record->AssetCode ?>" data-toggle="tooltip"
data-toggle="tooltip" title="<?php echo $record->AssetCode; ?> - Click here to Re-Activate Asset Details"> title="<?php echo $record->AssetCode; ?> - Click here to Re-Activate Asset Details">
<i class="fa fa-key" ></i> <i class="fa fa-key"></i>
</a> </a>
<?php } else { ?> <?php } else { ?>
<a <a href="<?php echo base_url() . 'assetdetails/editOldasset/?AssetID=' . $record->AssetCode ?>"
href="<?php echo base_url() . 'assetdetails/editOldasset/?AssetID=' . $record->AssetCode ?>" data-toggle="tooltip"
data-toggle="tooltip" title="<?php echo $record->AssetCode; ?> - Click here to View Asset Details"> title="<?php echo $record->AssetCode; ?> - Click here to View Asset Details">
<i class="fa fa-edit" ></i> <i class="fa fa-edit"></i>
</a> </a>
&nbsp;&nbsp; &nbsp;&nbsp;
<a <a onclick="confirmDeleteAsset(event)"
onclick ="confirmDeleteAsset(event)" href="<?php echo base_url() . 'assetdetails/deleteAsset/?AssetID=' . $record->AssetCode ?>"
href="<?php echo base_url() . 'assetdetails/deleteAsset/?AssetID=' . $record->AssetCode ?>" data-toggle="tooltip"
data-toggle="tooltip" title="<?php echo $record->AssetCode; ?> - Click here to Delete Asset Details"> title="<?php echo $record->AssetCode; ?> - Click here to Delete Asset Details">
<i class="fa fa-trash" ></i> <i class="fa fa-trash"></i>
</a> </a>
<?php } ?> <?php } ?>
</td> </td>
</tr>
<?php </tr>
} <?php
} }
?> }
</tbody> ?>
</table> </tbody>
</table>
<p>( Note :The entries count includes archived data... )</p>
</div> <!-- end card body--> <p>( Note :The entries count includes archived data... )</p>
<br> </div> <!-- end card body-->
<br>
</div> <!-- end card -->
</div><!-- end col--> </div> <!-- end card -->
</div> </div><!-- end col-->
</div> </div>
</div> <!-- container --> </div>
</div> <!-- content --> </div> <!-- container -->
</div> <!-- content -->
</div> </div>
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script>
@ -194,20 +203,20 @@
<script> <script>
$(document).ready(function() { $(document).ready(function () {
// Initialize the DataTable // Initialize the DataTable
var table = $('#asset_list_table').DataTable({ var table = $('#asset_list_table').DataTable({
dom: 'Blfrtip', dom: 'Blfrtip',
buttons: [ buttons: [
'excel', 'pdf' 'excel', 'pdf'
], ],
pageLength: 10, pageLength: 10,
lengthMenu: [ lengthMenu: [
[10, 20, 30, 50, -1], [10, 20, 30, 50, -1],
[10, 20, 30, 50, "All"] [10, 20, 30, 50, "All"]
], ],
responsive: false, responsive: false,
order: false, order: false,
language: { language: {
paginate: { paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon next: '<i class="fas fa-angle-right"></i>', // Next button icon
@ -218,7 +227,7 @@
// Date range filter function // Date range filter function
$.fn.dataTable.ext.search.push( $.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) { function (settings, data, dataIndex) {
var fromDate = $('#fromDate').val(); var fromDate = $('#fromDate').val();
var toDate = $('#toDate').val(); var toDate = $('#toDate').val();
@ -250,20 +259,20 @@
); );
// Handle form submission for the date range filter // Handle form submission for the date range filter
$("#DateRangeFilter").submit(function(e) { $("#DateRangeFilter").submit(function (e) {
e.preventDefault(); e.preventDefault();
table.draw(); // Redraw the table to apply the filter table.draw(); // Redraw the table to apply the filter
}); });
// Reset button functionality // Reset button functionality
$("#resetButton").click(function() { $("#resetButton").click(function () {
$("#fromDate").val(''); $("#fromDate").val('');
$("#toDate").val(''); $("#toDate").val('');
table.draw(); // Redraw the table to clear the filter table.draw(); // Redraw the table to clear the filter
}); });
// Automatically focus and open the To Date picker when From Date is selected // Automatically focus and open the To Date picker when From Date is selected
document.getElementById('fromDate').addEventListener('change', function() { document.getElementById('fromDate').addEventListener('change', function () {
var fromDate = this.value; var fromDate = this.value;
var toDateInput = document.getElementById('toDate'); var toDateInput = document.getElementById('toDate');
@ -279,11 +288,11 @@
</script> </script>
<script> <script>
function showArchiveList() { function showArchiveList() {
let isChecked = $("#showArchiveId").prop('checked'); let isChecked = $("#showArchiveId").prop('checked');
// Show or hide the rows based on checkbox status // Show or hide the rows based on checkbox status
$(".deactivatedRow").each(function() { $(".deactivatedRow").each(function () {
if (isChecked) { if (isChecked) {
$(this).show(); $(this).show();
} else { } else {
@ -292,20 +301,27 @@
}); });
} }
$(document).ready(function() { $(document).ready(function () {
let table = $('#asset_list_table').DataTable();
showArchiveList(); showArchiveList();
table.on('draw', function () {
showArchiveList();
});
}); });
function confirmReActivatingAsset(event){ function confirmReActivatingAsset(event) {
let result = confirm("Do You Want to Re-Activate Asset details ?"); let result = confirm("Do You Want to Re-Activate Asset details ?");
if(result){return;}else{event.preventDefault();} if (result) { return; } else { event.preventDefault(); }
} }
function confirmDeleteAsset(){ function confirmDeleteAsset() {
let result = confirm("Do You Want to Delete Asset details ?"); let result = confirm("Do You Want to Delete Asset details ?");
if(result){return;}else{event.preventDefault();} if (result) { return; } else { event.preventDefault(); }
} }
</script> </script>

View File

@ -146,6 +146,7 @@
?> ?>
</tbody> </tbody>
</table> </table>
<p>( Note :The entries count includes archived data... )</p>
</div> <!-- end card body--> </div> <!-- end card body-->
</div> <!-- end card --> </div> <!-- end card -->
</div><!-- end col--> </div><!-- end col-->
@ -416,6 +417,13 @@
} }
$(document).ready(function () { $(document).ready(function () {
let table = $('#cost_listing').DataTable();
showArchiveList();
table.on('draw', function () {
showArchiveList(); showArchiveList();
}); });
});
</script> </script>

View File

@ -50,19 +50,19 @@
<!-- start page title --> <!-- start page title -->
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="page-title-box page-title-box-alt"> <div class="page-title-box page-title-box-alt">
<div class="page-title-right"> <div class="page-title-right">
<ol class="breadcrumb m-0"> <ol class="breadcrumb m-0">
<li class="breadcrumb-item"><a href="javascript: void(0);">Master Details</a></li> <li class="breadcrumb-item"><a href="javascript: void(0);">Master Details</a></li>
<li class="breadcrumb-item active"> <li class="breadcrumb-item active">
<h4 class="page-title">Department Details</h4> <h4 class="page-title">Department Details</h4>
</li> </li>
</ol> </ol>
</div> </div>
<a class="btn btn-success" href="<?php echo base_url(); ?>adddepartment">Add New department</a> <a class="btn btn-success" href="<?php echo base_url(); ?>adddepartment">Add New department</a>
</div> </div>
</div> </div>
@ -71,7 +71,7 @@
helper('form'); helper('form');
$error = session()->getFlashdata('error'); $error = session()->getFlashdata('error');
if ($error) { if ($error) {
?> ?>
<div class="alert alert-danger alert-dismissable"> <div class="alert alert-danger alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<?php echo session()->getFlashdata('error'); ?> <?php echo session()->getFlashdata('error'); ?>
@ -80,7 +80,7 @@
<?php <?php
$success = session()->getFlashdata('success'); $success = session()->getFlashdata('success');
if ($success) { if ($success) {
?> ?>
<div class="alert alert-info alert-dismissable"> <div class="alert alert-info alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<?php echo session()->getFlashdata('success'); ?> <?php echo session()->getFlashdata('success'); ?>
@ -90,16 +90,35 @@
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="card"> <div class="card">
<form class="Date-filter-form" id="DateRangeFilter" style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;"> <form class="Date-filter-form" id="DateRangeFilter"
style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;">
<input type="hidden" name="table" value="requisition"> <input type="hidden" name="table" value="requisition">
<label for="fromDate">From:</label> <label for="fromDate">From:</label>
<input class="form-control date_range form-date-search" id="fromDate" name="fromDate" placeholder="Select From Date" autocomplete="off" required> <input class="form-control date_range form-date-search" id="fromDate" name="fromDate"
placeholder="Select From Date" autocomplete="off" required>
<label for="toDate">To:</label> <label for="toDate">To:</label>
<input class="form-control date_range to-date-search" id="toDate" name="toDate" placeholder="Select To Date" autocomplete="off" required> <input class="form-control date_range to-date-search" id="toDate" name="toDate"
placeholder="Select To Date" autocomplete="off" required>
<button type="submit" class="range_search_button"><i class="fe-search" aria-hidden="true"
class="icon-button" title="Search"></i></button>
<i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button" id="resetButton"
title="Reset"></i>
<div style="margin-left:auto">
<div class="form-check" style="margin-right: 25px;">
<input class="form-check-input" type="checkbox" id="showArchiveId" name="showArchive" value="1"
onchange="showArchiveList()" style="width: 18px; height: 18px;">
<label class="form-check-label" for="showArchiveId" style="font-size: 1rem; margin-left: 8px;">
Show Archive
</label>
</div>
</div>
<button type="submit" class="range_search_button"><i class="fe-search" aria-hidden="true" class="icon-button" title="Search"></i></button>
<i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button" id="resetButton" title="Reset"></i>
<div class="error" id="error"></div> <div class="error" id="error"></div>
</form> </form>
<div class="card-body" style="overflow-x:scroll;"> <div class="card-body" style="overflow-x:scroll;">
@ -118,34 +137,56 @@
<?php <?php
if (!empty($userRecords)) { if (!empty($userRecords)) {
foreach ($userRecords as $record) { foreach ($userRecords as $record) {
?> ?>
<tr> <tr class="<?php if ($record->IsActive == 0) {
echo "deactivatedRow";
} ?>" style="<?php if ($record->IsActive == 0) {
echo "display:none";
} ?>">
<!-- <td title=" - Click here to view department details"> </td> --> <!-- <td title=" - Click here to view department details"> </td> -->
<?php if (date('d-m-Y', strtotime($record->CreatedDt)) == "30-11--0001") { <?php if (date('d-m-Y', strtotime($record->CreatedDt)) == "30-11--0001") {
$cdate = '00-00-0000'; $cdate = '00-00-0000';
} else { } else {
$cdate = date('d-m-Y', strtotime($record->CreatedDt)); $cdate = date('d-m-Y', strtotime($record->CreatedDt));
} ?> } ?>
<td><?php echo $cdate; ?> </td> <td><?php echo $cdate; ?> </td>
<td><?php echo $record->DEPCode;?></td> <td><?php echo $record->DEPCode; ?></td>
<td><?php echo $record->DepartmentName ?></td> <td><?php echo $record->DepartmentName ?></td>
<td><?php echo $record->HeadDept ?></td> <td><?php echo $record->HeadDept ?></td>
<td><?php if ($record->IsActive == 0) { ?> <td>
<a href="<?php echo base_url() . 'reActivateDepartment/?SID=' . $record->DEPCode ?>" data-toggle="tooltip" title="<?php echo $record->DEPCode ?> - Click here to Re activate Department Details"><i class="fas fa-key"></i></a></u> <?php if ($record->IsActive == 0) { ?>
<?php } else { ?>
<a href="<?php echo base_url() . 'editOlddepartment/?SID=' . $record->DEPCode ?>" data-toggle="tooltip" title="<?php echo $record->DEPCode ?> - Click here to View Department Details"><i class="fas fa-edit"></i></a></u> <a href="<?php echo base_url() . 'reActivateDepartment/?SID=' . $record->DEPCode ?>"
&nbsp;&nbsp; data-toggle="tooltip"
<a href="<?php echo base_url() . 'deleteDepartment/?SID=' . $record->DEPCode ?>" data-toggle="tooltip" title="<?php echo $record->DEPCode ?> - Click here to Delete Department Details"><i class="fas fa-trash"></i></a></u> title="<?php echo $record->DEPCode ?> - Click here to Re activate Department Details"><i
<?php } ?> class="fas fa-key"></i></a></u>
<?php } else { ?>
<a href="<?php echo base_url() . 'editOlddepartment/?SID=' . $record->DEPCode ?>"
data-toggle="tooltip"
title="<?php echo $record->DEPCode ?> - Click here to View Department Details"><i
class="fas fa-edit"></i></a></u>
&nbsp;&nbsp;
<a href="<?php echo base_url() . 'deleteDepartment/?SID=' . $record->DEPCode ?>"
data-toggle="tooltip"
title="<?php echo $record->DEPCode ?> - Click here to Delete Department Details"><i
class="fas fa-trash"></i></a></u>
<?php } ?>
</td> </td>
</tr> </tr>
<?php <?php
} }
} }
?> ?>
</tbody> </tbody>
</table> </table>
<p>( Note :The entries count includes archived data... )</p>
</div> <!-- end card body--> </div> <!-- end card body-->
</div> <!-- end card --> </div> <!-- end card -->
</div><!-- end col--> </div><!-- end col-->
@ -158,25 +199,25 @@
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script>
<script> <script>
$(document).ready(function() { $(document).ready(function () {
$.fn.dataTable.ext.type.order['date-eu-pre'] = function(date) { $.fn.dataTable.ext.type.order['date-eu-pre'] = function (date) {
var dateSplit = date.split('-'); var dateSplit = date.split('-');
return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1; return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1;
}; };
// Initialize the DataTable // Initialize the DataTable
var table = $('#department_list_table').DataTable({ var table = $('#department_list_table').DataTable({
dom: 'Blfrtip', dom: 'Blfrtip',
buttons: [ buttons: [
'excel', 'pdf' 'excel', 'pdf'
], ],
pageLength: 10, pageLength: 10,
lengthMenu: [ lengthMenu: [
[10, 20, 30, 50, -1], [10, 20, 30, 50, -1],
[10, 20, 30, 50, "All"] [10, 20, 30, 50, "All"]
], ],
responsive: false, responsive: false,
order: false, order: false,
language: { language: {
paginate: { paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon next: '<i class="fas fa-angle-right"></i>', // Next button icon
@ -187,7 +228,7 @@
// Date range filter function // Date range filter function
$.fn.dataTable.ext.search.push( $.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) { function (settings, data, dataIndex) {
var fromDate = $('#fromDate').val(); var fromDate = $('#fromDate').val();
var toDate = $('#toDate').val(); var toDate = $('#toDate').val();
console.log(fromDate); // e.g., 01-09-2024 console.log(fromDate); // e.g., 01-09-2024
@ -221,20 +262,20 @@
); );
// Handle form submission for the date range filter // Handle form submission for the date range filter
$("#DateRangeFilter").submit(function(e) { $("#DateRangeFilter").submit(function (e) {
e.preventDefault(); e.preventDefault();
table.draw(); // Redraw the table to apply the filter table.draw(); // Redraw the table to apply the filter
}); });
// Reset button functionality // Reset button functionality
$("#resetButton").click(function() { $("#resetButton").click(function () {
$("#fromDate").val(''); $("#fromDate").val('');
$("#toDate").val(''); $("#toDate").val('');
table.draw(); // Redraw the table to clear the filter table.draw(); // Redraw the table to clear the filter
}); });
// Automatically focus and open the To Date picker when From Date is selected // Automatically focus and open the To Date picker when From Date is selected
document.getElementById('fromDate').addEventListener('change', function() { document.getElementById('fromDate').addEventListener('change', function () {
var fromDate = this.value; var fromDate = this.value;
var toDateInput = document.getElementById('toDate'); var toDateInput = document.getElementById('toDate');
@ -247,4 +288,34 @@
} }
}); });
}); });
</script>
<script>
function showArchiveList() {
let isChecked = $("#showArchiveId").prop('checked');
// Show or hide the rows based on checkbox status
$(".deactivatedRow").each(function () {
if (isChecked) {
$(this).show();
} else {
$(this).hide();
}
});
}
$(document).ready(function () {
let table = $('#department_list_table').DataTable();
showArchiveList();
table.on('draw', function () {
showArchiveList();
});
});
</script> </script>

View File

@ -162,6 +162,7 @@
</tbody> </tbody>
</table> </table>
<p>( Note :The entries count includes archived data... )</p>
</div> <!-- end card body--> </div> <!-- end card body-->
</div> <!-- end card --> </div> <!-- end card -->
</div><!-- end col--> </div><!-- end col-->
@ -277,10 +278,17 @@
}); });
} }
$(document).ready(function() { $(document).ready(function () {
let table = $('#raw_material_list_table').DataTable();
showArchiveList();
table.on('draw', function () {
showArchiveList(); showArchiveList();
}); });
});
function deleteMaterial(mid) { function deleteMaterial(mid) {

View File

@ -1,203 +1,218 @@
<style> <style>
.Date-filter-form { .Date-filter-form {
display: flex; display: flex;
align-items: center; align-items: center;
gap: 10px; gap: 10px;
/* Adjust the gap as needed */ /* Adjust the gap as needed */
} }
.Date-filter-form input, .Date-filter-form input,
.Date-filter-form button { .Date-filter-form button {
padding: 5px; padding: 5px;
font-size: 14px; font-size: 14px;
} }
.Date-filter-form button { .Date-filter-form button {
background-color: #007bff; background-color: #007bff;
color: white; color: white;
border: none; border: none;
cursor: pointer; cursor: pointer;
} }
.Date-filter-form button:hover { .Date-filter-form button:hover {
background-color: #0056b3; background-color: #0056b3;
} }
.icon-button { .icon-button {
background: none; background: none;
border: none; border: none;
cursor: pointer; cursor: pointer;
color: #007bff; color: #007bff;
font-size: 18px; font-size: 18px;
} }
.icon-button:hover { .icon-button:hover {
color: #0056b3; color: #0056b3;
} }
</style> </style>
<div class="content-page"> <div class="content-page">
<div class="content"> <div class="content">
<?php <?php
helper('form'); helper('form');
$error = session()->getFlashdata('error'); $error = session()->getFlashdata('error');
if ($error) { if ($error) {
$type = "error"; $type = "error";
echo show_alert($type, $error); echo show_alert($type, $error);
} }
$success = session()->getFlashdata('success'); $success = session()->getFlashdata('success');
if ($success) { if ($success) {
$type = "success"; $type = "success";
echo show_alert($type, $success); echo show_alert($type, $success);
} }
?> ?>
<!-- Start Content--> <!-- Start Content-->
<div class="container-fluid"> <div class="container-fluid">
<!-- start page title --> <!-- start page title -->
<div> <div>
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="page-title-box page-title-box-alt"> <div class="page-title-box page-title-box-alt">
<h4 class="page-title">Supplier Listing</h4> <h4 class="page-title">Supplier Listing</h4>
<a class="btn btn-success" href="<?php echo base_url(); ?>addsupplier">Add New Supplier</a> <a class="btn btn-success" href="<?php echo base_url(); ?>addsupplier">Add New Supplier</a>
</div> </div>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="card"> <div class="card">
<form class="Date-filter-form" id="DateRangeFilter" style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;"> <form class="Date-filter-form" id="DateRangeFilter"
<input type="hidden" name="table" value="requisition"> style="margin-top: 14px;margin-bottom: -11px;margin-left: 33px;">
<label for="fromDate">From:</label> <input type="hidden" name="table" value="requisition">
<input class="form-control date_range form-date-search" id="fromDate" name="fromDate" placeholder="Select From Date" autocomplete="off" required> <label for="fromDate">From:</label>
<input class="form-control date_range form-date-search" id="fromDate" name="fromDate"
placeholder="Select From Date" autocomplete="off" required>
<label for="toDate">To:</label> <label for="toDate">To:</label>
<input class="form-control date_range to-date-search" id="toDate" name="toDate" placeholder="Select To Date" autocomplete="off" required> <input class="form-control date_range to-date-search" id="toDate" name="toDate"
placeholder="Select To Date" autocomplete="off" required>
<button type="submit" class="range_search_button"><i class="fe-search" aria-hidden="true" class="icon-button" title="Search"></i></button>
<i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button" id="resetButton" title="Reset"></i> <button type="submit" class="range_search_button"><i class="fe-search"
aria-hidden="true" class="icon-button" title="Search"></i></button>
<div style="margin-left:auto"> <i class="fe-rotate-cw range_reset_button" aria-hidden="true" class="icon-button"
id="resetButton" title="Reset"></i>
<div style="margin-left:auto">
<div class="form-check" style="margin-right: 25px;"> <div class="form-check" style="margin-right: 25px;">
<input class="form-check-input" type="checkbox" id="showArchiveId" name="showArchive" <input class="form-check-input" type="checkbox" id="showArchiveId"
value="1" onchange="showArchiveList()" style="width: 18px; height: 18px;"> name="showArchive" value="1" onchange="showArchiveList()"
<label class="form-check-label" for="showArchiveId" style="font-size: 1rem; margin-left: 8px;"> style="width: 18px; height: 18px;">
<label class="form-check-label" for="showArchiveId"
style="font-size: 1rem; margin-left: 8px;">
Show Archive Show Archive
</label> </label>
</div> </div>
</div> </div>
<div class="error" id="error"></div>
</form> <div class="error" id="error"></div>
<div class="card-body" style="overflow-x:scroll;">
<table class="table dt-responsive nowrap w-100" id="datatable">
<thead>
<tr>
<th style="width:75px">Created Date</th>
<th>Supplier ID</th>
<th>Supplier Name</th>
<th>Address</th>
<th>Contact Number</th>
<th>Email Address</th>
<th>PAN</th>
<th>GST Number</th>
<th>Payment Terms</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
if (!empty($userRecords)) {
foreach ($userRecords as $record) {
?>
<tr </form>
class="<?php if($record->IsActive == 0){echo"deactivatedRow";}?>" <div class="card-body" style="overflow-x:scroll;">
style="<?php if($record->IsActive == 0){echo"display:none";}?>" <table class="table dt-responsive nowrap w-100" id="datatable">
> <thead>
<tr>
<th style="width:75px">Created Date</th>
<th>Supplier ID</th>
<th>Supplier Name</th>
<th>Address</th>
<th>Contact Number</th>
<th>Email Address</th>
<th>PAN</th>
<th>GST Number</th>
<th>Payment Terms</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
if (!empty($userRecords)) {
foreach ($userRecords as $record) {
?>
<?php if (date('d-m-Y', strtotime($record->CreatedOn)) == "30-11--0001") { <tr class="<?php if ($record->IsActive == 0) {
$cdate = '00-00-0000'; echo "deactivatedRow";
} else { } ?>"
$cdate = date('d-m-Y', strtotime($record->CreatedOn)); style="<?php if ($record->IsActive == 0) {
} ?> echo "display:none";
<td style="width:75px" align="left"><?php echo $cdate; ?></td> } ?>">
<td><?php echo $record->SupplierID ?></td> <?php if (date('d-m-Y', strtotime($record->CreatedOn)) == "30-11--0001") {
<td><?php echo $record->SupplierName ?></td> $cdate = '00-00-0000';
<td><?php echo $record->Address ?></td> } else {
<td><?php echo $record->ContactNumber ?></td> $cdate = date('d-m-Y', strtotime($record->CreatedOn));
<td><?php echo $record->EmailAddress ?></td> } ?>
<td><?php echo $record->PAN ?></td> <td style="width:75px" align="left"><?php echo $cdate; ?></td>
<td><?php echo $record->GSTNO ?></td>
<td><?php echo $record->PaymentTerms ?></td>
<td><?php if ($record->IsActive == 0) { ?>
<a style="cursor:pointer;" onclick="reActivateSupplier('<?php echo $record->SupplierID; ?>')"><i class="fa fa-key" style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp;</a>
<?php } else { ?>
<a class="a-tag-link" <td><?php echo $record->SupplierID ?></td>
<td><?php echo $record->SupplierName ?></td>
<td><?php echo $record->Address ?></td>
<td><?php echo $record->ContactNumber ?></td>
<td><?php echo $record->EmailAddress ?></td>
<td><?php echo $record->PAN ?></td>
<td><?php echo $record->GSTNO ?></td>
<td><?php echo $record->PaymentTerms ?></td>
<td><?php if ($record->IsActive == 0) { ?>
<a style="cursor:pointer;"
onclick="reActivateSupplier('<?php echo $record->SupplierID; ?>')"><i
class="fa fa-key"
style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp;</a>
<?php } else { ?>
<a class="a-tag-link"
href="<?= base_url() ?>viewsupplier?SID=<?= $record->SupplierID ?>&Payment=<?= $record->PaymentTerms ?>" href="<?= base_url() ?>viewsupplier?SID=<?= $record->SupplierID ?>&Payment=<?= $record->PaymentTerms ?>"
data-toggle="tooltip" data-toggle="tooltip"
title="<?= $record->SupplierID ?> - Click here to edit Supplier details"><i class="fa fa-edit" style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp; title="<?= $record->SupplierID ?> - Click here to edit Supplier details"><i
class="fa fa-edit" style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp;
</a> </a>
<a style="cursor:pointer;" <a style="cursor:pointer;" data-toggle="tooltip"
data-toggle="tooltip" title="<?= $record->SupplierID ?> - Click here to delete Supplier details"
title="<?= $record->SupplierID ?> - Click here to delete Supplier details" onclick="deletesupplier('<?php echo $record->SupplierID; ?>')"><i
onclick="deletesupplier('<?php echo $record->SupplierID; ?>')"><i class="fa fa-trash" style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp; class="fa fa-trash"
style="color:#02a8b5;"></i>&nbsp;&nbsp;&nbsp;
</a> </a>
<?php } ?> <?php } ?>
</td> </td>
</tr> </tr>
<?php <?php
}
} }
?> }
</tbody> ?>
</table> </tbody>
</div> <!-- end card body--> </table>
</div> <!-- end card --> <p>( Note :The entries count includes archived data... )</p>
</div><!-- end col--> </div> <!-- end card body-->
</div> </div> <!-- end card -->
</div> </div><!-- end col-->
</div> <!-- container --> </div>
</div> <!-- content --> </div>
</div> </div> <!-- container -->
</div> <!-- content -->
</div>
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script>
<script type="text/javascript"> <script type="text/javascript">
function deletesupplier(sid) { function deletesupplier(sid) {
var answer = confirm(" Do you want to delete the Supplier from the List?") var answer = confirm(" Do you want to delete the Supplier from the List?")
if (answer) { if (answer) {
$.ajax({ $.ajax({
data: { data: {
id: sid id: sid
}, },
type: "POST", type: "POST",
url: "<?php echo base_url();?>deletesupplier", url: "<?php echo base_url(); ?>deletesupplier",
success: function(data) { success: function (data) {
if (data) { if (data) {
alert(data); alert(data);
location.reload(); location.reload();
} }
}, },
error: function(xhr, status, error) { error: function (xhr, status, error) {
// Handle errors // Handle errors
console.error('AJAX Error:', error); // Logs the actual error console.error('AJAX Error:', error); // Logs the actual error
console.error('Status:', status); // Logs the status like "timeout", "error", etc. console.error('Status:', status); // Logs the status like "timeout", "error", etc.
console.error('Response:', xhr.responseText); // Logs the server's response console.error('Response:', xhr.responseText); // Logs the server's response
}, },
complete: function(xhr, status) { complete: function (xhr, status) {
// Code to run after AJAX call is complete, regardless of success or error // Code to run after AJAX call is complete, regardless of success or error
console.log('AJAX call completed'); console.log('AJAX call completed');
console.log('Status:', status); console.log('Status:', status);
@ -205,35 +220,35 @@
// Hide loader or perform other clean-up actions // Hide loader or perform other clean-up actions
// $('#content').loader('hide'); // Uncomment if you have a loader plugin // $('#content').loader('hide'); // Uncomment if you have a loader plugin
} }
}); });
} }
} }
function reActivateSupplier(sid) {
function reActivateSupplier(sid) {
var answer = confirm(" Do you want to Re-Activate the Supplier from the List?")
if (answer) { var answer = confirm(" Do you want to Re-Activate the Supplier from the List?")
$.ajax({ if (answer) {
data: { $.ajax({
id: sid data: {
}, id: sid
type: "POST", },
url: "<?php echo base_url();?>reActivateSupplier", type: "POST",
success: function(data) { url: "<?php echo base_url(); ?>reActivateSupplier",
if (data) { success: function (data) {
if (data) {
alert(data);
location.reload(); alert(data);
} location.reload();
}, }
error: function(xhr, status, error) { },
error: function (xhr, status, error) {
// Handle errors // Handle errors
console.error('AJAX Error:', error); // Logs the actual error console.error('AJAX Error:', error); // Logs the actual error
console.error('Status:', status); // Logs the status like "timeout", "error", etc. console.error('Status:', status); // Logs the status like "timeout", "error", etc.
console.error('Response:', xhr.responseText); // Logs the server's response console.error('Response:', xhr.responseText); // Logs the server's response
}, },
complete: function(xhr, status) { complete: function (xhr, status) {
// Code to run after AJAX call is complete, regardless of success or error // Code to run after AJAX call is complete, regardless of success or error
console.log('AJAX call completed'); console.log('AJAX call completed');
console.log('Status:', status); console.log('Status:', status);
@ -241,110 +256,110 @@
// Hide loader or perform other clean-up actions // Hide loader or perform other clean-up actions
// $('#content').loader('hide'); // Uncomment if you have a loader plugin // $('#content').loader('hide'); // Uncomment if you have a loader plugin
} }
}); });
} }
} }
</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: [
'excel', 'pdf'
],
pageLength: 10, // Default rows per page
lengthMenu: [
[10, 20, 30, 50, -1],
[10, 20, 30, 50, "All"]
], // Rows per page options
responsive: false, // Responsive table
order: false,
language: {
paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon
previous: '<i class="fas fa-angle-left"></i>' // Previous button icon
}
}
});
// Date range filter function
$.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) {
var fromDate = $('#fromDate').val();
var toDate = $('#toDate').val();
console.log(fromDate); // e.g., 01-09-2024
console.log(toDate); // e.g., 08-09-2024
if (!fromDate || !toDate) {
return true; // If no dates selected, don't filter
}
// Convert the fromDate and toDate from dd-mm-yyyy to Date objects
var fromParts = fromDate.split("-");
var toParts = toDate.split("-");
var startDate = new Date(fromParts[2], fromParts[1] - 1, fromParts[0]); // Year, month (0-based), day
var endDate = new Date(toParts[2], toParts[1] - 1, toParts[0]);
// Adjust startDate to include the day before the selected fromDate
startDate.setDate(startDate.getDate() - 1);
// Ensure endDate includes the entire end date by setting time to the end of the day
endDate.setHours(23, 59, 59, 999);
// Get the date from the DataTable row (assuming it's in the first column in dd-mm-yyyy format)
var dateStr = data[0];
var dateParts = dateStr.split("-");
var rowDate = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
// Return true if the row date is within the range
return rowDate >= startDate && rowDate <= endDate;
}
);
// Handle form submission for the date range filter </script>
$("#DateRangeFilter").submit(function(e) { <script>
e.preventDefault(); $(document).ready(function () {
table.draw(); // Redraw the table to apply the filter $.fn.dataTable.ext.type.order['date-eu-pre'] = function (date) {
}); var dateSplit = date.split('-');
return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1;
};
// Reset button functionality // Initialize the DataTable
$("#resetButton").click(function() { var table = $('#datatable').DataTable({
$("#fromDate").val(''); dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination
$("#toDate").val(''); buttons: [
table.draw(); // Redraw the table to clear the filter 'excel', 'pdf'
}); ],
pageLength: 10, // Default rows per page
lengthMenu: [
[10, 20, 30, 50, -1],
[10, 20, 30, 50, "All"]
], // Rows per page options
responsive: false, // Responsive table
order: false,
language: {
paginate: {
next: '<i class="fas fa-angle-right"></i>', // Next button icon
previous: '<i class="fas fa-angle-left"></i>' // Previous button icon
}
}
});
// Automatically focus and open the To Date picker when From Date is selected // Date range filter function
document.getElementById('fromDate').addEventListener('change', function() { $.fn.dataTable.ext.search.push(
var fromDate = this.value; function (settings, data, dataIndex) {
var toDateInput = document.getElementById('toDate'); var fromDate = $('#fromDate').val();
var toDate = $('#toDate').val();
console.log(fromDate); // e.g., 01-09-2024
console.log(toDate); // e.g., 08-09-2024
// Set the min attribute of the To Date input to the selected From Date if (!fromDate || !toDate) {
toDateInput.min = fromDate; return true; // If no dates selected, don't filter
}
// Optionally reset the To Date input if the current value is before the new min date // Convert the fromDate and toDate from dd-mm-yyyy to Date objects
if (toDateInput.value < fromDate) { var fromParts = fromDate.split("-");
toDateInput.value = fromDate; var toParts = toDate.split("-");
}
}); var startDate = new Date(fromParts[2], fromParts[1] - 1, fromParts[0]); // Year, month (0-based), day
}); var endDate = new Date(toParts[2], toParts[1] - 1, toParts[0]);
// Adjust startDate to include the day before the selected fromDate
startDate.setDate(startDate.getDate() - 1);
// Ensure endDate includes the entire end date by setting time to the end of the day
endDate.setHours(23, 59, 59, 999);
// Get the date from the DataTable row (assuming it's in the first column in dd-mm-yyyy format)
var dateStr = data[0];
var dateParts = dateStr.split("-");
var rowDate = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
// Return true if the row date is within the range
return rowDate >= startDate && rowDate <= endDate;
}
);
// Handle form submission for the date range filter
$("#DateRangeFilter").submit(function (e) {
e.preventDefault();
table.draw(); // Redraw the table to apply the filter
});
// Reset button functionality
$("#resetButton").click(function () {
$("#fromDate").val('');
$("#toDate").val('');
table.draw(); // Redraw the table to clear the filter
});
// Automatically focus and open the To Date picker when From Date is selected
document.getElementById('fromDate').addEventListener('change', function () {
var fromDate = this.value;
var toDateInput = document.getElementById('toDate');
// Set the min attribute of the To Date input to the selected From Date
toDateInput.min = fromDate;
// Optionally reset the To Date input if the current value is before the new min date
if (toDateInput.value < fromDate) {
toDateInput.value = fromDate;
}
});
});
function showArchiveList() { function showArchiveList() {
let isChecked = $("#showArchiveId").prop('checked'); let isChecked = $("#showArchiveId").prop('checked');
// Show or hide the rows based on checkbox status // Show or hide the rows based on checkbox status
$(".deactivatedRow").each(function() { $(".deactivatedRow").each(function () {
if (isChecked) { if (isChecked) {
$(this).show(); $(this).show();
} else { } else {
@ -353,9 +368,15 @@
}); });
} }
$(document).ready(function() { $(document).ready(function () {
let table = $('#datatable').DataTable();
showArchiveList(); showArchiveList();
table.on('draw', function () {
showArchiveList();
});
}); });
</script> </script>

View File

@ -186,7 +186,7 @@
</tbody> </tbody>
</table> </table>
<p>( Note :The entries count includes archived data... )</p>
</div> <!-- end card body--> </div> <!-- end card body-->
</div> <!-- end card --> </div> <!-- end card -->
</div><!-- end col--> </div><!-- end col-->
@ -435,7 +435,14 @@
} }
$(document).ready(function () { $(document).ready(function () {
let table = $('#transporter_list').DataTable();
showArchiveList();
table.on('draw', function () {
showArchiveList(); showArchiveList();
}); });
});
</script> </script>