OPD_CLAIM_HANDLE

This commit is contained in:
VENKATESHWARAN 2025-12-29 15:19:41 +05:30
parent c6bb7d6ac0
commit 3fe796d7ff
5 changed files with 116 additions and 15 deletions

View File

@ -3653,6 +3653,9 @@ class EmployeeRestController extends AdminController
if ($fetchData['ticket_type_id'] == 1 && !empty($fetchData['tpa_no'])) {
$results = $claimStatusQuery->findAll(2);
$fetchData['claim_status_id'] = $results[1]['id'] ?? $results[0]['id'];
} else if ($fetchData['ticket_type_id'] == 72 && !empty($fetchData['tpa_no'])) {
$results = $claimStatusQuery->findAll(2);
$fetchData['claim_status_id'] = $results[1]['id'] ?? $results[0]['id'];
} else {
$fetchData['claim_status_id'] = $claimStatusQuery->first()['id'];
}

View File

@ -76,7 +76,7 @@ class TicketController extends BaseController
$this->ticketMasterModel = new TicketMasterModel();
$this->ticketType = [1 => "Claim-GMC", 2 => "Claim-GPA", 3 => "EDLI", 4 => "GTLI", 8 => "Motor"];
$this->ticketType = [1 => "Claim-GMC", 2 => "Claim-GPA", 3 => "EDLI", 4 => "GTLI", 8 => "Motor", 72 => "OPD"];
$this->priorityType = [
1 => "Low",
2 => "Medium",
@ -287,7 +287,45 @@ class TicketController extends BaseController
13 => ['cancel_remark' => 'Cancel Remark'],
47 => ['cancel_remark' => 'Cancel Remark'],
53 => ['cancel_remark' => 'Cancel Remark'],
58 => ['cancel_remark' => 'Cancel Remark']
58 => ['cancel_remark' => 'Cancel Remark'],
// OPD claim status
67 => ['non_id_reason' => 'Non ID Reason'],
69 => ['raised_date' => 'Raised Date'],
70 => ['raised_date' => 'Raised Date'],
71 => [
'claim_number' => 'Claim Number',
'registration_date' => 'Registration Date'
],
72 => ['query_received_date' => 'Query Received Date'],
73 => [
'denial_reason' => 'Denial Reason',
'denial_date' => 'Denial Date'
],
74 => [
'approved_amount' => 'Approved Amount',
'approved_date' => 'Approved Date',
'approved_letter' => 'Approved Letter',
'approved_description' => 'Approved Description'
],
75 => ['pay_initiate_date' => 'Payment Initiated Date'],
76 => [
'utr_details' => 'UTR Details',
'settled_date' => 'Settled Date',
'settle_letter' => 'Settle Letter'
],
78 => ['cancel_remark' => 'Cancel Remark'],
79 => [
'return_remark' => 'Return Remark',
'awb_no_courier_name' => 'AWB No Courier Name'
],
];
$this->nonIDReason = [
@ -335,7 +373,12 @@ class TicketController extends BaseController
55 => [],
56 => [],
57 => [],
60 => []
60 => [],
68 => [],
77 => [],
80 => [],
81 => [],
];
$this->ticketMasterModel = new TicketMasterModel();
@ -703,7 +746,8 @@ class TicketController extends BaseController
'priorityType' => $this->priorityType,
'relationshipType' => $this->relationshipType,
'modeOFIntimate' => $this->modeOFIntimate,
'nonIDReason' => $this->nonIDReason
'nonIDReason' => $this->nonIDReason,
'claim_ticket_type_id' => $ticket_type
];
switch ($ticket_type) {
@ -719,6 +763,9 @@ class TicketController extends BaseController
case 8:
$data['ticket_form'] = 'Motor';
break;
case 72:
$data['ticket_form'] = 'OPD';
break;
}
// Fetch ACM Users
@ -741,8 +788,9 @@ class TicketController extends BaseController
$claim_status_id = 35;
}else if($ticket_type == 8){
$claim_status_id = 62;
}
else{
}else if($ticket_type == 72){
$claim_status_id = 67;
}else{
$claim_status_id = 1;
}
}
@ -757,7 +805,9 @@ class TicketController extends BaseController
$data['claim_type'] = $this->claimType[2];
}
$data['client_for_motor'] = $this->clientModel->select('id,client_name,phone')->where('client_type', 2)->where('is_active', 1)->findAll();
if($ticket_type == 8){
$data['client_for_motor'] = $this->clientModel->select('id,client_name,phone')->where('client_type', 2)->where('is_active', 1)->findAll();
}
$this->myLogger->logme('error', "Ticket form data fetched successfully for Ticket Type: $ticket_type");
@ -2013,9 +2063,13 @@ class TicketController extends BaseController
}
}
if($lastMatchedStatus == 1){
if($lastMatchedStatus == 1 || $lastMatchedStatus == 67){
if(!empty($incoming_form_values['tpa_no'])){
$lastMatchedStatus = 2;
if($lastMatchedStatus == 1){
$lastMatchedStatus = 2;
}else if($lastMatchedStatus == 67){
$lastMatchedStatus = 68;
}
}
}

View File

@ -38,7 +38,7 @@
<!-- Header Section -->
<div class="row mb-3">
<div class="col-6 d-flex align-items-center">
<h4 class="mb-0">Claim GMC</h4>
<h4 class="mb-0"><?= isset($claim_ticket_type_id) && $claim_ticket_type_id == 72 ? 'Claim OPD' : 'Claim GMC' ?></h4>
</div>
<div class="col-6 text-right">
<a href="<?= base_url('ticket/list'); ?>" aria-label="Back to ticket list">
@ -49,7 +49,7 @@
<?php } ?>
<form role="form" class="parsley-examples" method="post" id="ticket_form_data" onsubmit="submitClaimForm(event, this)" enctype="multipart/form-data">
<input type="hidden" id="ticket_type_id" name="ticket_type_id" value="1">
<input type="hidden" id="ticket_type_id" name="ticket_type_id" value="<?= isset($claim_ticket_type_id) && $claim_ticket_type_id == 72 ? 72 : 1 ?>">
<input type="hidden" id="ticket_master_id" name="ticket_master_id" value="<?= isset($ticket_data['id']) ? $ticket_data['id'] : '' ?>">
<input type="hidden" id="is_head_approved" name="is_head_approved" value="<?= isset($ticket_data['is_head_approved']) ? $ticket_data['is_head_approved'] : '' ?>">
<input type="hidden" id="extra_fields_array_for_validate" name="extra_fields_array_for_validate" value='<?= isset($extra_fields_array_for_validate) && !empty($extra_fields_array_for_validate) ? json_encode($extra_fields_array_for_validate) : "[]" ?>'>
@ -681,6 +681,29 @@
showClass = '.payment';
}
// OPD
if (value == 69 || value == 70) { // CDA & INFORMATION REQUIRED
showClass = '.cda_ir';
} else if (value == 71) { // UNDER PROCESS - CLAIM NO. UPDATION
showClass = '.up_cnu';
} else if (value == 72) { // UNDER PROCESS - QUERY DOCUMENT RECEIVED
showClass = '.up_qdr';
} else if (value == 73) { // REJECTED
showClass = '.rejected';
} else if (value == 74) { // APPROVED
showClass = '.approved';
} else if (value == 76) { // SETTLED
showClass = '.settled';
} else if (value == 78) { // CANCELLED
showClass = '.canceled';
} else if (value == 79) { // RETURNED
showClass = '.returned';
} else if (value == 67) { // NON ID
showClass = '.non_id';
} else if (value == 75) { // PAYMENT INITIATED
showClass = '.payment';
}
// Show the relevant section and enable required attributes
if (showClass) {
// $(showClass).show().find('input, textarea').attr('required', true);
@ -708,7 +731,7 @@
console.log('Selected Value:', selectedVal);
console.log('Element ID:', elementId);
if (selectedVal == 2 || selectedVal == 14) {
if (selectedVal == 2 || selectedVal == 14 || selectedVal == 68 || selectedVal == 79) {
$field = $('#non_id_reason')
$field.prop('required', false);
} else if (selectedVal == 1) {

View File

@ -62,7 +62,7 @@
<?php
if (!isset($view_ticket_page)) {
if ($selected_ticket_type == 1) {
if ($selected_ticket_type == 1 || $selected_ticket_type == 72) {
include('ticket_form_gmc.php');
} else if ($selected_ticket_type == 8) {
include('ticket_form_motor.php');
@ -714,6 +714,17 @@
$('#emp_client_policy_data_list').append(option).select2();
}
} else if (ticket_type == 72) {
if (item.policy_type == 72) {
var option = $('<option>', {
value: item.id,
text: item.policy_type + '-' + item.policy_no,
});
$('#emp_client_policy_data_list').append(option).select2();
}
} else {
// console.log("inside else condition");
}
@ -1119,6 +1130,7 @@
function setMemberData(input) {
var selectedOption = $(input).find(':selected');
var ticket_type_id = $('#ticket_type_id').val();
// Retrieve the data-* attributes
var empId = selectedOption.data('empid');
@ -1140,13 +1152,21 @@
if (tpaNo == "") {
$('#claim_status_id').val(1)
if(ticket_type_id == 1){
$('#claim_status_id').val(1)
}else{
$('#claim_status_id').val(67)
}
$('#non_id_reason').attr('required', true);
var $label = $("#non_id_reason_lable_id");
$label.text('*');
} else {
$('#claim_status_id').val(2)
if(ticket_type_id == 1){
$('#claim_status_id').val(2)
}else{
$('#claim_status_id').val(68)
}
$('#non_id_reason').attr('required', false);
var $label = $("#non_id_reason_lable_id");
$label.text("");

View File

@ -29,6 +29,7 @@
<option value="3">EDLI</option>
<option value="4">GTLI</option>
<option value="8">Motor</option>
<option value="72">OPD</option>
</select>
</div>
</div>