MERGE_UAT_BUG_FIXES

This commit is contained in:
Ubuntu 2026-07-02 12:56:53 +05:30
commit d4fe43b48d

View File

@ -215,31 +215,14 @@ SQL;
public function claims_experience_summary(int $policyId): array public function claims_experience_summary(int $policyId): array
{ {
$sql = <<<'SQL' $sql = <<<'SQL'
SELECT SELECT
/* run days */ /* run days */
/*
DATEDIFF(
MAX(COALESCE(tm.claim_dump_date, cp.policy_end_date)),
cp.policy_start_date
) + 1 AS run_days,
/* earned premium */
FORMAT(
(prem.premium_as_on_date / 365)
* (DATEDIFF(
MAX(COALESCE(tm.claim_dump_date, cp.policy_end_date)),
cp.policy_start_date
) + 1)
, 0) AS earned_premium,
*/
prem.premium_as_on_date,
DATEDIFF( DATEDIFF(
LEAST(CURDATE(), cp.policy_end_date), LEAST(CURDATE(), cp.policy_end_date),
cp.policy_start_date cp.policy_start_date
) + 1 AS run_days, ) + 1 AS run_days,
/* earned premium */
FORMAT( FORMAT(
(prem.premium_as_on_date / 365) * (prem.premium_as_on_date / 365) *
( (
@ -251,22 +234,18 @@ SQL;
2 2
) AS earned_premium, ) AS earned_premium,
/* claims reported */ /* claims reported */
FORMAT(COUNT(tm.id), 0) AS claims_reported, FORMAT(COUNT(tm.id), 0) AS claims_reported,
\t\t/* incurred claims count */ \t\t/* incurred claims count */
\tFORMAT( \tFORMAT(
\t SUM( \t SUM(
\t CASE \t CASE
\t WHEN tcs.claim_status IN ('Settled', 'Paid') THEN 1 \t WHEN tcs.claim_status IN ('Settled', 'Paid') THEN 1
\t WHEN tcs.claim_status NOT IN ('Settled', 'Paid', 'Rejected', 'Denied') THEN 1 \t WHEN tcs.claim_status NOT IN ('Settled', 'Paid', 'Rejected', 'Denied') THEN 1
\t ELSE 0 \t ELSE 0
\t END \t END
\t ) \t )
, 0) AS incurred_claims, , 0) AS incurred_claims,
/* incurred amount */ /* incurred amount */
FORMAT( FORMAT(
@ -360,9 +339,9 @@ SQL;
, 2) , 2)
, '%') AS projected_ratio , '%') AS projected_ratio
FROM client_policy cp FROM client_policy cp
JOIN ( JOIN (
SELECT SELECT
ep2.client_policy_id, ep2.client_policy_id,
COALESCE(SUM( COALESCE(SUM(
@ -384,19 +363,19 @@ SQL;
WHERE ep2.client_policy_id = :policy_id: WHERE ep2.client_policy_id = :policy_id:
AND ep2.is_active = 1 AND ep2.is_active = 1
GROUP BY ep2.client_policy_id GROUP BY ep2.client_policy_id
) prem ON prem.client_policy_id = cp.id ) prem ON prem.client_policy_id = cp.id
JOIN ticket_master tm JOIN ticket_master tm
ON tm.client_policy_id = cp.id ON tm.client_policy_id = cp.id
AND tm.is_active = 1 AND tm.is_active = 1
JOIN ticket_claim_status tcs JOIN ticket_claim_status tcs
ON tcs.id = tm.claim_status_id ON tcs.id = tm.claim_status_id
WHERE cp.id = :policy_id: WHERE cp.id = :policy_id:
GROUP BY cp.id, cp.policy_start_date, prem.premium_as_on_date; GROUP BY cp.id, cp.policy_start_date, prem.premium_as_on_date;
SQL; SQL;
return $this->runKpiQuery($sql, $policyId); return $this->runKpiQuery($sql, $policyId);
} }