FEAT_POLICY_FROM_AND_CLAIM_NUMBER_HANDLE

This commit is contained in:
VENKATESHWARAN 2026-06-01 12:34:52 +05:30
parent bea9f03013
commit 28f6f4b9f8
2 changed files with 18 additions and 12 deletions

View File

@ -145,23 +145,25 @@ class ClaimController extends ResourceController
try {
$reqData = $this->request->getPost();
if (empty($reqData['policy_number']) || empty($reqData['claim_type'])) {
if (empty($reqData['policy_number']) || empty($reqData['claim_type']) || empty($reqData['policy_from'])) {
return $this->respond([
'status' => 'failed',
'code' => 400,
'data' => 'policy_number and claim_type are required',
'data' => 'policy_number, claim_type and policy_from are required',
], 400);
}
$policy = $this->PolicyModel
->select('partner_policy.*, Q.insurer_id, E.mobile as client_mobile, E.email as client_email, E.broker_id')
->join('partner_quotation Q', 'Q.id = partner_policy.quotation_id AND Q.status = "Accepted"', 'left')
->join('partner_enquiry E', 'E.id = partner_policy.enquiry_id', 'left')
->where('partner_policy.policy_number', $reqData['policy_number'])
->first();
if($reqData['policy_from'] === 'Internal') {
$policy = $this->PolicyModel
->select('partner_policy.*, Q.insurer_id, E.mobile as client_mobile, E.email as client_email, E.broker_id')
->join('partner_quotation Q', 'Q.id = partner_policy.quotation_id AND Q.status = "Accepted"', 'left')
->join('partner_enquiry E', 'E.id = partner_policy.enquiry_id', 'left')
->where('partner_policy.policy_number', $reqData['policy_number'])
->first();
if (empty($policy)) {
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => 'Policy not found'], 404);
if (empty($policy)) {
return $this->respond(['status' => 'failed', 'code' => 404, 'data' => 'Policy not found'], 404);
}
}
$status = $this->ClaimStatusModel
@ -176,8 +178,10 @@ class ClaimController extends ResourceController
$claimData = [
'claim_status_id' => $reqData['claim_status_id'] ?? $status['id'],
'policy_id' => $policy['id'],
'policy_no' => $policy['policy_number'],
'policy_id' => $policy['id'] ?? null,
'policy_no' => $policy['policy_number'] ?? null,
'claim_number' => $reqData['claim_number'] ?? null,
'policy_from' => $reqData['policy_from'],
'insurer_id' => $policy['insurer_id'] ?? null,
'broker_id' => $reqData['broker_id'] ?? $policy['broker_id'] ?? null,
'insured_name' => $reqData['insured_name'] ?? $policy['insured_name'] ?? null,

View File

@ -36,6 +36,8 @@ class ClaimModel extends Model
'is_active',
'created_by',
'updated_by',
'claim_number',
'policy_from',
];
// Auto timestamps