nhance/app/Views/endorsement_dash.php
2025-08-29 17:56:19 +05:30

505 lines
16 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<style>
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg,#4099ff,#73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg,#2ed8b6,#59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg,#FFB64D,#ffcb80);
}
.bg-c-pink {
background: linear-gradient(45deg,#FF5370,#ff869a);
}
.bg-c-red {
background: linear-gradient(45deg,#FF4E50,#F9D423);
}
.bg-c-purple {
background: linear-gradient(45deg,#9D50BB,#6E48AA);
}
.bg-c-orange {
background: linear-gradient(45deg,#F2994A,#F2C94C);
}
.bg-c-teal {
background: linear-gradient(45deg,#1ABC9C,#16A085);
}
.bg-c-cyan {
background: linear-gradient(45deg,#00C9FF,#92FE9D);
}
.bg-c-lime {
background: linear-gradient(45deg,#A8E063,#56AB2F);
}
.bg-c-indigo {
background: linear-gradient(45deg,#3F51B5,#5A55AE);
}
.bg-c-Pelorous {
background: linear-gradient(45deg, #00d6db, #00a8b5);
}
.bg-c-Pelorous2 {
background: linear-gradient(45deg, #02a8b5, #017f8b);
}
.bg-c-Pelorous3 {
background: linear-gradient(45deg, #098895, #046063);
}
.bg-c-Grenadier {
background: linear-gradient(45deg, #ff9d37, #ff7a10);
}
.bg-c-Grenadier2 {
background: linear-gradient(45deg, #ff8010, #ff4c00);
}
.bg-c-Grenadier3 {
background: linear-gradient(45deg, #f06306, #cc4b05);
}
.bg-c-SilverChalice {
background: linear-gradient(45deg, #a3a8a8, #8f9494);
}
.bg-c-SilverChalice2 {
background: linear-gradient(45deg, #7e8484, #686e6e);
}
.bg-c-SilverChalice3 {
background: linear-gradient(45deg, #5c6363, #434949);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4,26,55,0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4,26,55,0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding-top: 10px;
padding-bottom: 10px;
padding-left: 25px;
padding-right: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
.m-b-1{
margin-top: 0;
margin-bottom: 5px;
}
.modal-right{
width: 100% !important;
justify-content: normal !important;
}
.modal-body {
max-height: 100vh;
overflow-y: auto;
padding-left: 25px !important;
padding-right: 25px !important;
padding-top: 10px !important;
padding-bottom: 30px !important;
}
.modal-content{
background-color: #F4F4F4 !important;
}
.inside-tab-content-div{
display:flex;
justify-content:flex-start !important;
flex-flow: row wrap;
}
.dash-card{
background-color:#F4FBFB !important;
border-radius:25px;
border:2px solid #09B9BF;
box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.2);
min-width: 250px !important;
}
#pending-actions-dash-tab{
padding-right: 20px;
}
.span-color{
color:#09B9BF;
}
.diff-span-color{
color: #0EB96E !important;
}
.endorsement-div{
margin-left:20px;
}
.custom-card{
border-radius: 10px !important;
background-color: white;
box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.1), 0px 4px 8px rgba(0, 0, 0, 0.2);
margin-bottom: 5px;
padding : 5px 0px 5px 10px;
border-left: 10px solid #09B9BF;
}
#right-modal .modal-content {
border-radius: 10px !important;
overflow: hidden; /* optional, keeps children inside rounded corners */
}
</style>
<div class="tab-pane active show" id="pending-actions-dash-tab" >
<div class="inside-tab-content-div">
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Inception Pending', 'I')">
<div class="card-block" >
<h4 class="mb-3"><b>Inception Pending</b></h4>
<h2>
<span class="span-color"><?= $pendingActionsData['inception'] ?></span>
</h2>
<h6 >&nbsp;<span class="text-danger">Inception Action</span></h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Pending Insurer', 'insurer')">
<div class=" card-block ">
<h4 class="mb-3">Pending Insurer</h4>
<h2 >
<span class="span-color"><?= $pendingActionsData['uhid'] ?></span>
</h2>
<h6 class="text-right">
<span class="diff-span-color f-left">Exported : <?= $pendingActionsData['uhid_export_count'] ?></span>
<span class="text-danger">Not Exported : <?= $pendingActionsData['uhid_not_export_count'] ?></span>
</h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Pending TPA', 'TPA')">
<div class="card-block">
<h4 class="mb-3">Pending TPA</h4>
<h2>
<span class="span-color"><?= $pendingActionsData['tpa'] ?></span>
</h2>
<h6 class="text-right">
<span class="diff-span-color f-left">Exported : <?= $pendingActionsData['tpa_export_count'] ?></span>
<span class="text-danger">Not Exported : <?= $pendingActionsData['tpa_not_export_count'] ?></span>
</h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Correction Pending', 'C')">
<div class="card-block">
<h4 class="mb-3">Correction Pending</h4>
<h2 >
<span class="span-color"><?= $pendingActionsData['correction'] ?></span>
</h2>
<h6 class="tex-right">
<span class="diff-span-color">Exported : <?= $pendingActionsData['correction_export_count'] ?></span>
<span class="text-danger f-right">Not Exported : <?= $pendingActionsData['correction_not_export_count'] ?></span>
</h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Deletion Pending', 'D')">
<div class="card-block">
<h4 class="mb-3">Deletion Pending</h4>
<h2 >
<span class="span-color"><?= $pendingActionsData['deletion'] ?></span>
</h2>
<h6>
<span class="diff-span-color">Exported : <?= $pendingActionsData['deletion_export_count'] ?></span>
<span class="text-danger f-right">Not Exported : <?= $pendingActionsData['deletion_not_export_count'] ?></span>
</h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'SI Enhancement Pending', 'SI')">
<div class="card-block">
<h4 class="mb-3">SI Enhancment </h4>
<h2>
<span class="span-color"><?= $pendingActionsData['si_enhancement'] ?></span>
</h2>
<h6>
<span class="diff-span-color">Exported : <?= $pendingActionsData['si_export_count'] ?></span>
<span class="text-danger f-right">Not Exported : <?= $pendingActionsData['si_not_export_count'] ?></span>
</h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div data-toggle="modal" data-target="#right-modal" class="card dash-card"
onclick="getPendingActionClientDataForDashboard(this, 'Policy Renewal', 'policy')">
<div class="card-block">
<h4 class="mb-3">Policy</h4>
<h2 >
<span class="span-color"><?= $pendingActionsData['PolicyRenewalData'] ?></span>
</h2>
<h6 >&nbsp;<span class="text-danger">Policy Documents</span></h6>
</div>
</div>
</div>
<div class="endorsement-div">
<div class="card dash-card">
<div class="card-block">
<h4 class="mb-3">Ticket</h4>
<h2 >
<span class="span-color"><?= $pendingActionsData['ticketData'] ?></span>
</h2>
<h6>&nbsp;<span class="text-danger">Support Tickets</span></h6>
</div>
</div>
</div>
</div>
<!-- Right modal content -->
<div id="right-modal" class="modal fade" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg modal-center" style="border-radius: 10px !important;">
<div class="modal-content">
<div class="modal-header border-0 pb-0" style="margin-left:10px;">
<h4 class="modal-title" id="right-modalLabel">Modal Heading</h4>
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div>
<div class="modal-body">
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
</div>
<script>
function getPendingActionClientDataForDashboard(input, headerName, type)
{
$('#right-modal').modal('hide');
$('.loader').fadeIn();
$('.loader-mask').fadeIn();
console.log('hi')
$(".modal-body").empty();
$("#right-modalLabel").html(
`<p style="font-size:25px;font-weight:600;">${headerName}</p>`
);
$.ajax({
url: '<?= base_url("util/featch_dashboard_data/") ?>' + type,
type: "GET",
dataType: 'json',
success: function(res) {
console.log('responce', res)
console.log('responce', res.data)
// var table;
var div;
var actions = 'inception';
var link = '<?=base_url()?>';
if (res.data.length !== 0) {
// table = `<table data-custom-table-css="table" class="table table-striped table-sm table-centered mb-0"><tbody>`;
div = `<div class="row">`;
$.each(res.data, function(index, item) {
var Params = null;
if(type == 'insurer'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
event: 'inception',
insurer_or_tpa: 'insurer',
actions: 'export',
};
}else if(type == 'TPA'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
event: 'inception',
insurer_or_tpa: 'insurer',
actions: 'export',
};
}else if(type == 'I'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
actions: 'inception'
};
}else if(type == 'D'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
event: 'deletion',
actions: 'export',
insurer_or_tpa: 'tpa',
};
}else if(type == 'C'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
event: 'correction',
insurer_or_tpa: 'insurer',
actions: 'export',
};
}else if(type == 'SI'){
Params = {
client_id: item.client_id,
client_policy_id: item.client_policy_id,
client_branch_id: item.branch_id,
event: 'si_enhancement',
actions: 'export',
insurer_or_tpa: 'tpa',
};
}
console.log(Params);
console.log(Params);
if(Params){
var queryString = generateQueryString(Params);
console.log(queryString)
var tabId = type !== 'I' ? '#KYC-DOC-tab' : '';
link += 'employee/upload?' + queryString + tabId;
}else{
link = '';
}
console.log(link)
// table += `<tr><td onclick="linkRedirect('${link}')">${item.client_name} - ${item.branch_name} - ${item.policy_name}</td></tr>`;
div += `<div class="col-md-6 mb-2">
<div class="custom-card" onclick="linkRedirect('${link}')">
<h4 style="margin-bottom:5px;">${item.client_name}</h4>
<h5>${item.branch_name} - ${item.policy_name} </h5>
</div>
</div>
`;
});
div += "</div>";
} else {
// table = '<center>No data available</center>';
div = '<center>No data available</center>';
}
// $(".modal-body").html(table);
$(".modal-body").append(div);
$('#right-modal').modal('show');
},
error: function(xhr, status, error) {
console.error(xhr.responseText);
console.error(status, error);
},
complete:function(){
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
console.log("Ajax call is completed ..!!");
}
});
}
function generateQueryString(queryParams)
{
return Object.keys(queryParams)
.map(key => encodeURIComponent(key) + '=' + encodeURIComponent(queryParams[key]))
.join('&');
}
function linkRedirect(link)
{
console.log(link);
console.log(typeof link);
if(link){
window.location.href = link;
}
}
</script>