53 lines
1.8 KiB
PHP
53 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace Modules\Client\Http\Controllers\Api;
|
|
|
|
use App\Helpers\Helper;
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\ClaimRequest;
|
|
|
|
class ClaimReportController extends Controller
|
|
{
|
|
/**
|
|
* Display a listing of the resource.
|
|
*
|
|
* @return \Illuminate\Http\Response
|
|
*/
|
|
public function claimStatus($corporateId)
|
|
{
|
|
$requesteds = ClaimRequest::query()
|
|
->whereHas('member', function ($query) use ($corporateId) {
|
|
$query->whereHas('employeds', function ($corporateEmployee) use ($corporateId) {
|
|
$corporateEmployee->where('corporate_id', $corporateId);
|
|
});
|
|
})
|
|
->where('status', 'requested')
|
|
->get();
|
|
$approveds = ClaimRequest::query()
|
|
->whereHas('member', function ($query) use ($corporateId) {
|
|
$query->whereHas('employeds', function ($corporateEmployee) use ($corporateId) {
|
|
$corporateEmployee->where('corporate_id', $corporateId);
|
|
});
|
|
})
|
|
->where('status', 'approved')
|
|
->get();
|
|
|
|
$rejecteds = ClaimRequest::query()
|
|
->whereHas('member', function ($query) use ($corporateId) {
|
|
$query->whereHas('employeds', function ($corporateEmployee) use ($corporateId) {
|
|
$corporateEmployee->where('corporate_id', $corporateId);
|
|
});
|
|
})
|
|
->whereHas('claim', fn ($query) => $query->where('status', 'declined'))
|
|
->where('status', 'approved')
|
|
->get();
|
|
|
|
return Helper::responseJson([
|
|
'requesteds' => count($requesteds),
|
|
'approveds' => count($approveds),
|
|
'rejecteds' => count($rejecteds)
|
|
]);
|
|
}
|
|
}
|