FIX_Changes and Additional Requirements 2
This commit is contained in:
parent
ce7033654a
commit
48a76a54ea
@ -461,7 +461,7 @@ class AgentController extends ResourceController
|
|||||||
} elseif ($normalizedHeader === 'rto') {
|
} elseif ($normalizedHeader === 'rto') {
|
||||||
$headerMap['rto_id'] = $colIndex;
|
$headerMap['rto_id'] = $colIndex;
|
||||||
} elseif ($normalizedHeader === 'segment') {
|
} elseif ($normalizedHeader === 'segment') {
|
||||||
$headerMap['segment_id'] = $colIndex;
|
$headerMap['segment'] = $colIndex;
|
||||||
} elseif ($normalizedHeader === 'comp') {
|
} elseif ($normalizedHeader === 'comp') {
|
||||||
$headerMap['comp'] = $colIndex;
|
$headerMap['comp'] = $colIndex;
|
||||||
} elseif ($normalizedHeader === 'tp') {
|
} elseif ($normalizedHeader === 'tp') {
|
||||||
@ -473,7 +473,7 @@ class AgentController extends ResourceController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!isset($headerMap['insurer_id'], $headerMap['rto_id'], $headerMap['segment_id'], $headerMap['vehicle_type_id'])) {
|
if (!isset($headerMap['insurer_id'], $headerMap['rto_id'], $headerMap['segment'], $headerMap['vehicle_type_id'])) {
|
||||||
throw new \RuntimeException('Invalid grid header. Required: TYPE, INSURER, RTO, SEGMENT');
|
throw new \RuntimeException('Invalid grid header. Required: TYPE, INSURER, RTO, SEGMENT');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -544,7 +544,7 @@ class AgentController extends ResourceController
|
|||||||
|
|
||||||
$insurerRaw = trim((string) ($row[$headerMap['insurer_id']] ?? ''));
|
$insurerRaw = trim((string) ($row[$headerMap['insurer_id']] ?? ''));
|
||||||
$rtoRaw = trim((string) ($row[$headerMap['rto_id']] ?? ''));
|
$rtoRaw = trim((string) ($row[$headerMap['rto_id']] ?? ''));
|
||||||
$segmentRaw = trim((string) ($row[$headerMap['segment_id']] ?? ''));
|
$segmentRaw = trim((string) ($row[$headerMap['segment']] ?? ''));
|
||||||
$vehicleTypeRaw = trim((string) ($row[$headerMap['vehicle_type_id']] ?? $segmentRaw));
|
$vehicleTypeRaw = trim((string) ($row[$headerMap['vehicle_type_id']] ?? $segmentRaw));
|
||||||
|
|
||||||
if ($insurerRaw === '' || $rtoRaw === '' || $segmentRaw === '' || $vehicleTypeRaw === '') {
|
if ($insurerRaw === '' || $rtoRaw === '' || $segmentRaw === '' || $vehicleTypeRaw === '') {
|
||||||
@ -629,7 +629,7 @@ class AgentController extends ResourceController
|
|||||||
'vehicle_type_id' => $vehicleTypeRaw,
|
'vehicle_type_id' => $vehicleTypeRaw,
|
||||||
'insurer_id' => (string) $insurerId,
|
'insurer_id' => (string) $insurerId,
|
||||||
'rto_id' => (string) $rtoId,
|
'rto_id' => (string) $rtoId,
|
||||||
'segment_id' => $segmentRaw,
|
'segment' => $segmentRaw,
|
||||||
'comp' => $compSanitized,
|
'comp' => $compSanitized,
|
||||||
'tp' => $tpSanitized,
|
'tp' => $tpSanitized,
|
||||||
'fuel' => $fuel,
|
'fuel' => $fuel,
|
||||||
@ -643,7 +643,7 @@ class AgentController extends ResourceController
|
|||||||
->where('vehicle_type_id', $vehicleTypeRaw)
|
->where('vehicle_type_id', $vehicleTypeRaw)
|
||||||
->where('insurer_id', (string) $insurerId)
|
->where('insurer_id', (string) $insurerId)
|
||||||
->where('rto_id', (string) $rtoId)
|
->where('rto_id', (string) $rtoId)
|
||||||
->where('segment_id', $segmentRaw)
|
->where('segment', $segmentRaw)
|
||||||
->where('partner_id', (string) $partnerId)
|
->where('partner_id', (string) $partnerId)
|
||||||
->first();
|
->first();
|
||||||
|
|
||||||
@ -792,7 +792,7 @@ class AgentController extends ResourceController
|
|||||||
->get()
|
->get()
|
||||||
->getResultArray();
|
->getResultArray();
|
||||||
|
|
||||||
$segmentMaster = $db->table('vehicle_type')
|
$vehicleTypeMaster = $db->table('vehicle_type')
|
||||||
->select('id, vehicle_type')
|
->select('id, vehicle_type')
|
||||||
->where('is_active', 1)
|
->where('is_active', 1)
|
||||||
->orderBy('vehicle_type', 'ASC')
|
->orderBy('vehicle_type', 'ASC')
|
||||||
@ -832,7 +832,7 @@ class AgentController extends ResourceController
|
|||||||
'code' => 200,
|
'code' => 200,
|
||||||
'data' => [
|
'data' => [
|
||||||
'rto_master' => $rtoMaster,
|
'rto_master' => $rtoMaster,
|
||||||
'segment_master' => $segmentMaster,
|
'vehicle_type_master' => $vehicleTypeMaster,
|
||||||
'plan_master' => $planMaster,
|
'plan_master' => $planMaster,
|
||||||
'partner_master' => $partnerMaster,
|
'partner_master' => $partnerMaster,
|
||||||
'months' => $months,
|
'months' => $months,
|
||||||
@ -855,15 +855,17 @@ class AgentController extends ResourceController
|
|||||||
|
|
||||||
$partnerId = (int) ($this->request->getGet('partner_id') ?? 0);
|
$partnerId = (int) ($this->request->getGet('partner_id') ?? 0);
|
||||||
$rtoId = (int) ($this->request->getGet('rto_id') ?? 0);
|
$rtoId = (int) ($this->request->getGet('rto_id') ?? 0);
|
||||||
$segmentId = (int) ($this->request->getGet('segment_id') ?? 0);
|
$vehicleTypeId = (int) ($this->request->getGet('vehicle_type_id') ?? 0);
|
||||||
$planType = trim((string) ($this->request->getGet('insurance_plan_type') ?? ''));
|
$planType = trim((string) ($this->request->getGet('insurance_plan_type') ?? ''));
|
||||||
$month = trim((string) ($this->request->getGet('month') ?? ''));
|
$month = trim((string) ($this->request->getGet('month') ?? ''));
|
||||||
|
$segment = trim((string) ($this->request->getGet('segment') ?? ''));
|
||||||
|
|
||||||
if ($partnerId <= 0 || $rtoId <= 0 || $segmentId <= 0 || $planType === '') {
|
|
||||||
|
if ($partnerId <= 0 || $rtoId <= 0 || $vehicleTypeId <= 0 || $planType === '' || $segment === '') {
|
||||||
return $this->respond([
|
return $this->respond([
|
||||||
'status' => 'failed',
|
'status' => 'failed',
|
||||||
'code' => 200,
|
'code' => 200,
|
||||||
'data' => 'partner_id, rto_id, segment_id and insurance_plan_type are required',
|
'data' => 'partner_id, rto_id, vehicle_type_id, segment and insurance_plan_type are required',
|
||||||
], 200);
|
], 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -903,7 +905,8 @@ class AgentController extends ResourceController
|
|||||||
->join('vehicle_type vt', 'vt.id = pgd.vehicle_type_id', 'left')
|
->join('vehicle_type vt', 'vt.id = pgd.vehicle_type_id', 'left')
|
||||||
->where('pgd.partner_id', $partnerId)
|
->where('pgd.partner_id', $partnerId)
|
||||||
->where('pgd.rto_id', $rtoId)
|
->where('pgd.rto_id', $rtoId)
|
||||||
->where('pgd.segment_id', $segmentId)
|
->where('pgd.segment', $segment)
|
||||||
|
->where('pgd.vehicle_type_id', $vehicleTypeId)
|
||||||
->where("DATE_FORMAT(pgd.created_at, '%Y-%m') =", $effectiveMonth)
|
->where("DATE_FORMAT(pgd.created_at, '%Y-%m') =", $effectiveMonth)
|
||||||
->orderBy('pgd.id', 'DESC')
|
->orderBy('pgd.id', 'DESC')
|
||||||
->get()
|
->get()
|
||||||
@ -970,15 +973,16 @@ class AgentController extends ResourceController
|
|||||||
|
|
||||||
$partnerId = (int) ($this->request->getGet('partner_id') ?? 0);
|
$partnerId = (int) ($this->request->getGet('partner_id') ?? 0);
|
||||||
$rtoId = (int) ($this->request->getGet('rto_id') ?? 0);
|
$rtoId = (int) ($this->request->getGet('rto_id') ?? 0);
|
||||||
$segmentId = (int) ($this->request->getGet('segment_id') ?? 0);
|
$segment = (int) ($this->request->getGet('segment') ?? 0);
|
||||||
|
$vehicleTypeId = (int) ($this->request->getGet('vehicle_type_id') ?? 0);
|
||||||
$planType = trim((string) ($this->request->getGet('insurance_plan_type') ?? ''));
|
$planType = trim((string) ($this->request->getGet('insurance_plan_type') ?? ''));
|
||||||
$month = trim((string) ($this->request->getGet('month') ?? ''));
|
$month = trim((string) ($this->request->getGet('month') ?? ''));
|
||||||
|
|
||||||
if ($partnerId <= 0 || $rtoId <= 0 || $segmentId <= 0 || $planType === '') {
|
if ($partnerId <= 0 || $rtoId <= 0 || $vehicleTypeId <= 0 || $planType === '' || $segment === '') {
|
||||||
return $this->respond([
|
return $this->respond([
|
||||||
'status' => 'failed',
|
'status' => 'failed',
|
||||||
'code' => 200,
|
'code' => 200,
|
||||||
'data' => 'partner_id, rto_id, segment_id and insurance_plan_type are required',
|
'data' => 'partner_id, rto_id, vehicle_type_id, segment and insurance_plan_type are required',
|
||||||
], 200);
|
], 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -999,16 +1003,18 @@ class AgentController extends ResourceController
|
|||||||
COALESCE(pa.retention_rate, 0) AS retention_rate,
|
COALESCE(pa.retention_rate, 0) AS retention_rate,
|
||||||
rm.rto_code,
|
rm.rto_code,
|
||||||
rm.rto_name,
|
rm.rto_name,
|
||||||
vt.vehicle_type AS segment_name,
|
vt.vehicle_type AS vehicle_type_name,
|
||||||
|
pdg.segment,
|
||||||
pgd.comp,
|
pgd.comp,
|
||||||
pgd.tp
|
pgd.tp
|
||||||
")
|
")
|
||||||
->join('partner_agent pa', 'pa.id = pgd.partner_id', 'left')
|
->join('partner_agent pa', 'pa.id = pgd.partner_id', 'left')
|
||||||
->join('rto_master rm', 'rm.id = pgd.rto_id', 'left')
|
->join('rto_master rm', 'rm.id = pgd.rto_id', 'left')
|
||||||
->join('vehicle_type vt', 'vt.id = pgd.segment_id', 'left')
|
->join('vehicle_type vt', 'vt.id = pgd.vehicle_type_id', 'left')
|
||||||
->where('pgd.partner_id', $partnerId)
|
->where('pgd.partner_id', $partnerId)
|
||||||
->where('pgd.rto_id', $rtoId)
|
->where('pgd.rto_id', $rtoId)
|
||||||
->where('pgd.segment_id', $segmentId)
|
->where('pgd.segment', $segment)
|
||||||
|
->where('pgd.vehicle_type_id', $vehicleTypeId)
|
||||||
->where("DATE_FORMAT(pgd.created_at, '%Y-%m') =", $effectiveMonth)
|
->where("DATE_FORMAT(pgd.created_at, '%Y-%m') =", $effectiveMonth)
|
||||||
->orderBy('pgd.id', 'DESC')
|
->orderBy('pgd.id', 'DESC')
|
||||||
->get()
|
->get()
|
||||||
@ -1063,6 +1069,7 @@ class AgentController extends ResourceController
|
|||||||
'Partner',
|
'Partner',
|
||||||
'Partner Code',
|
'Partner Code',
|
||||||
'RTO',
|
'RTO',
|
||||||
|
'Type',
|
||||||
'Segment',
|
'Segment',
|
||||||
'Insurance Plan',
|
'Insurance Plan',
|
||||||
'Grid %',
|
'Grid %',
|
||||||
@ -1076,7 +1083,8 @@ class AgentController extends ResourceController
|
|||||||
$row['partner_name'] ?? '',
|
$row['partner_name'] ?? '',
|
||||||
$row['agent_code'] ?? '',
|
$row['agent_code'] ?? '',
|
||||||
trim((string) (($row['rto_code'] ?? '') . ' - ' . ($row['rto_name'] ?? '')), ' -'),
|
trim((string) (($row['rto_code'] ?? '') . ' - ' . ($row['rto_name'] ?? '')), ' -'),
|
||||||
$row['segment_name'] ?? '',
|
$row['vehicle_type_name'] ?? '',
|
||||||
|
$row['segment'] ?? '',
|
||||||
$row['insurance_plan_type'] ?? $planType,
|
$row['insurance_plan_type'] ?? $planType,
|
||||||
$row['grid_rate_percentage'] ?? 0,
|
$row['grid_rate_percentage'] ?? 0,
|
||||||
$row['retention_rate_percentage'] ?? 0,
|
$row['retention_rate_percentage'] ?? 0,
|
||||||
|
|||||||
@ -22,7 +22,7 @@ class PartnerGridDetailsModel extends Model
|
|||||||
'vehicle_type_id',
|
'vehicle_type_id',
|
||||||
'insurer_id',
|
'insurer_id',
|
||||||
'rto_id',
|
'rto_id',
|
||||||
'segment_id',
|
'segment',
|
||||||
'comp',
|
'comp',
|
||||||
'tp',
|
'tp',
|
||||||
'fuel',
|
'fuel',
|
||||||
@ -48,7 +48,7 @@ class PartnerGridDetailsModel extends Model
|
|||||||
'vehicle_type_id' => 'permit_empty|max_length[50]',
|
'vehicle_type_id' => 'permit_empty|max_length[50]',
|
||||||
'insurer_id' => 'required|max_length[50]',
|
'insurer_id' => 'required|max_length[50]',
|
||||||
'rto_id' => 'required|max_length[50]',
|
'rto_id' => 'required|max_length[50]',
|
||||||
'segment_id' => 'required|max_length[100]',
|
'segment' => 'required|max_length[100]',
|
||||||
'comp' => 'permit_empty|max_length[50]',
|
'comp' => 'permit_empty|max_length[50]',
|
||||||
'tp' => 'permit_empty|max_length[50]',
|
'tp' => 'permit_empty|max_length[50]',
|
||||||
'remarks' => 'permit_empty|max_length[255]',
|
'remarks' => 'permit_empty|max_length[255]',
|
||||||
@ -69,7 +69,11 @@ class PartnerGridDetailsModel extends Model
|
|||||||
'required' => 'RTO is required.',
|
'required' => 'RTO is required.',
|
||||||
'max_length' => 'RTO code must not exceed 50 characters.',
|
'max_length' => 'RTO code must not exceed 50 characters.',
|
||||||
],
|
],
|
||||||
'segment_id' => [
|
'vehicle_type_id' => [
|
||||||
|
'required' => 'Type is required.',
|
||||||
|
'max_length' => 'Type must not exceed 50 characters.',
|
||||||
|
],
|
||||||
|
'segment' => [
|
||||||
'required' => 'Segment is required.',
|
'required' => 'Segment is required.',
|
||||||
'max_length' => 'Segment must not exceed 100 characters.',
|
'max_length' => 'Segment must not exceed 100 characters.',
|
||||||
],
|
],
|
||||||
@ -110,11 +114,19 @@ class PartnerGridDetailsModel extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get records by Segment ID
|
* Get records by Segment
|
||||||
*/
|
*/
|
||||||
public function getBySegment(string $segmentId)
|
public function getBySegment(string $segment)
|
||||||
{
|
{
|
||||||
return $this->where('segment_id', $segmentId)->findAll();
|
return $this->where('segment', $segment)->findAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get records by Vehicle Type ID
|
||||||
|
*/
|
||||||
|
public function getByType(string $vehicleTypeId)
|
||||||
|
{
|
||||||
|
return $this->where('vehicle_type_id', $vehicleTypeId)->findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -148,8 +160,11 @@ class PartnerGridDetailsModel extends Model
|
|||||||
if (!empty($filters['rto_id'])) {
|
if (!empty($filters['rto_id'])) {
|
||||||
$builder->where('rto_id', $filters['rto_id']);
|
$builder->where('rto_id', $filters['rto_id']);
|
||||||
}
|
}
|
||||||
if (!empty($filters['segment_id'])) {
|
if (!empty($filters['vehicle_type_id'])) {
|
||||||
$builder->where('segment_id', $filters['segment_id']);
|
$builder->where('vehicle_type_id', $filters['vehicle_type_id']);
|
||||||
|
}
|
||||||
|
if (!empty($filters['segment'])) {
|
||||||
|
$builder->where('segment', $filters['segment']);
|
||||||
}
|
}
|
||||||
if (!empty($filters['partner_id'])) {
|
if (!empty($filters['partner_id'])) {
|
||||||
$builder->where('partner_id', $filters['partner_id']);
|
$builder->where('partner_id', $filters['partner_id']);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user