v2
This commit is contained in:
@@ -2,8 +2,6 @@
|
||||
include(__DIR__ . '/auth.php');
|
||||
require_login();
|
||||
date_default_timezone_set('Asia/Kolkata');
|
||||
|
||||
// Don't send ANY HTML or echo above this line
|
||||
?>
|
||||
<style>
|
||||
.logo {
|
||||
@@ -20,66 +18,113 @@ date_default_timezone_set('Asia/Kolkata');
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
/* Mobile-specific styles */
|
||||
@media (max-width: 767px) {
|
||||
.mobile-welcome {
|
||||
padding: 15px;
|
||||
color: #FFF;
|
||||
line-height: 20px;
|
||||
margin-left: 15px;
|
||||
.mobile-welcome,
|
||||
.mobile-profile {
|
||||
display: inline-block;
|
||||
}
|
||||
.desktop-welcome {
|
||||
display: none;
|
||||
.desktop-welcome,
|
||||
.desktop-profile,
|
||||
.navbar-right {
|
||||
display: none !important; /* hide right side in mobile */
|
||||
}
|
||||
}
|
||||
|
||||
/* Desktop styles */
|
||||
@media (min-width: 768px) {
|
||||
.mobile-welcome {
|
||||
display: none;
|
||||
.mobile-welcome,
|
||||
.mobile-profile {
|
||||
display: none !important; /* hide mobile items in desktop */
|
||||
}
|
||||
.desktop-welcome {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- nav start -->
|
||||
<nav class="navbar navbar-default">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<a href="/Admin/"><img class="img-responsive logo" style="height:50px" src="/asset/images/new_logo2.jpg" alt=""></a>
|
||||
|
||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
|
||||
<!-- Mobile profile + welcome -->
|
||||
|
||||
<?php
|
||||
$imagePath = '';
|
||||
if(isset($_SESSION['profile_pic']) && !empty($_SESSION['profile_pic'])){
|
||||
$imagePath = "/CONTENT/ROOT_URI/Admin/".$_SESSION['profile_pic'];
|
||||
}else{
|
||||
$imagePath = "/CONTENT/ROOT_URI/Admin/default.svg";
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
<img class="mobile-profile"
|
||||
src="<?php echo $imagePath; ?>"
|
||||
width="40" height="40"
|
||||
style="border-radius:50%; object-fit:cover;"
|
||||
alt="Profile">
|
||||
<span class="mobile-welcome">Welcome! <?php echo htmlspecialchars($_SESSION['name'] ?? ''); ?></span>
|
||||
</div>
|
||||
|
||||
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a href="/Admin/Create_AC_Recurring">New Recurring</a></li>
|
||||
<li><a href="/Admin/Create_AC_FD">New FD</a></li>
|
||||
<li><a href="/Admin/Create_AC_Loan">New Loan</a></li>
|
||||
<li><a href="/Admin/Add_group">Add New Group</a></li>
|
||||
<li><a href="/Admin/View_AC?Type=Recurring">View A/C</a></li>
|
||||
<li><a href="/Admin/Trans_New">Transaction</a></li>
|
||||
<li><a href="/Admin/Due">Deemand Sheet</a></li>
|
||||
<li><a href="/Admin/Report">Report</a></li>
|
||||
<!-- <li><a href="/Admin/Revert">Revert</a></li> -->
|
||||
<?php
|
||||
if($_SESSION['type'] === 'admin'){ ?>
|
||||
<li><a href="/Admin/agent_View_report">Commission</a></li>
|
||||
<li><a href="/Admin/agent-targets">Agent Targets</a></li>
|
||||
<li><a href="/Admin/Settings_Agent">Agent Settings</a></li>
|
||||
<?php } ?>
|
||||
<?php
|
||||
$userType = $_SESSION['type'] ?? '';
|
||||
|
||||
if ($userType === 'admin') {
|
||||
?>
|
||||
<li><a href="/Admin/Create_AC_Recurring">New Recurring</a></li>
|
||||
<li><a href="/Admin/Create_AC_FD">New FD</a></li>
|
||||
<li><a href="/Admin/Create_AC_Loan">New Loan</a></li>
|
||||
<li><a href="/Admin/Add_group">Add New Group</a></li>
|
||||
<li><a href="/Admin/Trans_New">Transaction</a></li>
|
||||
<li><a href="/Admin/agent-targets">Agent Targets</a></li>
|
||||
<!-- <li><a href="/Admin/agent_View_report">Commission</a></li> -->
|
||||
<li><a href="/Admin/View_AC?Type=Recurring">View A/C</a></li>
|
||||
<li><a href="/Admin/Report">Report</a></li>
|
||||
<li><a href="/Admin/Due">Deemand Sheet</a></li>
|
||||
<li><a href="/Admin/Settings_Agent">Agent Settings</a></li>
|
||||
<?php
|
||||
} elseif ($userType === 'bm') {
|
||||
?>
|
||||
<li><a href="/Admin/Create_AC_Recurring">New Recurring</a></li>
|
||||
<li><a href="/Admin/Create_AC_FD">New FD</a></li>
|
||||
<li><a href="/Admin/Create_AC_Loan">New Loan</a></li>
|
||||
<li><a href="/Admin/Add_group">Add New Group</a></li>
|
||||
<li><a href="/Admin/Trans_New">Transaction</a></li>
|
||||
<li><a href="/Admin/agent-targets">Agent Targets</a></li>
|
||||
<!-- <li><a href="/Admin/agent_View_report">Commission</a></li> -->
|
||||
<?php
|
||||
} elseif ($userType === 'agent') {
|
||||
?>
|
||||
<li><a href="/Admin/View_AC?Type=Recurring">View A/C</a></li>
|
||||
<li><a href="/Admin/Due">Deemand Sheet</a></li>
|
||||
<li><a href="/Admin/Report">Report</a></li>
|
||||
<!-- <li><a href="/Admin/agent_View_report">Commission</a></li> -->
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
|
||||
<!-- Desktop right side -->
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li class="desktop-welcome"><span class="welcome-text">Welcome! <?php echo htmlspecialchars($_SESSION['name'] ?? ''); ?></span></li>
|
||||
<li class="desktop-welcome">
|
||||
<span class="welcome-text">Welcome! <?php echo htmlspecialchars($_SESSION['name'] ?? ''); ?></span>
|
||||
</li>
|
||||
<li class="desktop-profile">
|
||||
<img src="<?php echo $imagePath; ?>" width="40" height="40" style="border-radius:50%; object-fit:cover;" alt="Profile">
|
||||
</li>
|
||||
<li><a href="/Admin/Signout">Signout</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</nav>
|
||||
|
||||
113
CONTENT/ROOT_URI/Admin/next-matured.php
Normal file
113
CONTENT/ROOT_URI/Admin/next-matured.php
Normal file
@@ -0,0 +1,113 @@
|
||||
<?php
|
||||
// ---- Default date range ----
|
||||
$today = date("Y-m-d");
|
||||
$monthStart = date("Y-m-01");
|
||||
$dFrom = $_GET['dFrom'] ?? $monthStart;
|
||||
$dTo = $_GET['dTo'] ?? $today;
|
||||
?>
|
||||
|
||||
<div class="container mt-4">
|
||||
<div class="card shadow-lg p-4 rounded-3">
|
||||
<h4 class="mb-3">Maturity Report</h4>
|
||||
<form method="get" class="row g-3">
|
||||
<div class="col-md-3">
|
||||
<label class="form-label">From</label>
|
||||
<input value="<?= $dFrom ?>" type="date" name="dFrom" class="form-control" required>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<label class="form-label">To</label>
|
||||
<input value="<?= $dTo ?>" type="date" name="dTo" class="form-control" required>
|
||||
</div>
|
||||
<div class="col-md-3 d-flex align-items-end" style="margin-top: 25px;">
|
||||
<button type="submit" class="btn btn-info w-100">Generate Report</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
function maturity_report($dateFrom, $dateTo) {
|
||||
echo '<div class="container mt-4">
|
||||
<div class="alert alert-primary shadow-sm">
|
||||
<h5 class="mb-0">Maturity Report: '.$dateFrom." → ".$dateTo.'</h5>
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
$conn = new mysqli($GLOBALS['host'], $GLOBALS['user'], $GLOBALS['pass'], $GLOBALS['db']);
|
||||
if ($conn->connect_error) die("Connection failed: " . $conn->connect_error);
|
||||
|
||||
// ---- Next month maturity filter ----
|
||||
$sql = "SELECT * FROM ".$GLOBALS['arif_ac']." WHERE DATE_FORMAT(AA_DATE_MATURE, '%Y-%m-%d') BETWEEN '".$dateFrom."' AND '".$dateTo."'ORDER BY AA_DATE_MATURE ASC";
|
||||
|
||||
$result = $conn->query($sql);
|
||||
|
||||
echo '
|
||||
<div class="container mt-3">
|
||||
<div class="card shadow-sm rounded-3">
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-hover align-middle">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th>AC No</th>
|
||||
<th>Name</th>
|
||||
<th>Type</th>
|
||||
<th>Total Installments</th>
|
||||
<th>Paid</th>
|
||||
<th>Pending</th>
|
||||
<th>Mature Value</th>
|
||||
<th>Maturity Date</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
$grandTotal = 0;
|
||||
|
||||
if ($result && $result->num_rows > 0) {
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
// Calculate installments
|
||||
$paid_installments = floor($row['AA_BAL'] / $row['AA_INSTALLMENT']);
|
||||
$pending_installments = $row['AA_NO_OF_PAYMENT'] - $paid_installments;
|
||||
|
||||
if ($pending_installments <= 0) {
|
||||
// Fully matured
|
||||
$payout = $row['AA_MATURE_VALUE'];
|
||||
} else {
|
||||
// Not fully paid, only balance is eligible
|
||||
$payout = $row['AA_BAL'];
|
||||
}
|
||||
|
||||
$grandTotal += $row['AA_MATURE_VALUE'];
|
||||
|
||||
echo "
|
||||
<tr>
|
||||
<td>".$row['AA_ACNO']."</td>
|
||||
<td>".$row['AA_NAME']."</td>
|
||||
<td>".$row['AA_ACTYPE']."</td>
|
||||
<td>".$row['AA_NO_OF_PAYMENT']."</td>
|
||||
<td>".$paid_installments."</td>
|
||||
<td>".$pending_installments."</td>
|
||||
<td>".number_format($payout,2)."</td>
|
||||
<td>".$row['AA_DATE_MATURE']."</td>
|
||||
</tr>";
|
||||
}
|
||||
} else {
|
||||
echo "<tr><td colspan='8' class='text-center text-muted'>No matured accounts found</td></tr>";
|
||||
}
|
||||
|
||||
echo '
|
||||
</tbody>
|
||||
</table>
|
||||
<h5 class="text-end">Grand Total Payout: <b>'.number_format($grandTotal,2).'</b></h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
';
|
||||
|
||||
$conn->close();
|
||||
}
|
||||
|
||||
// ---- Call maturity function ----
|
||||
maturity_report($dFrom, $dTo);
|
||||
?>
|
||||
Reference in New Issue
Block a user