Merge branch 'staging' of https://dev.sismedika.online/febio/aso into staging

This commit is contained in:
2024-02-27 10:32:33 +07:00
4 changed files with 47 additions and 53 deletions

View File

@@ -42,13 +42,15 @@ class ClaimController extends Controller
public function index(Request $request)
{
$limit = $request->has('per_page') ? $request->input('per_page') : 10;
$results = DB::table('claims')
->leftJoin('claim_requests', 'claims.claim_request_id','=', 'claim_requests.id')
$results = DB::table('claim_requests')
->leftJoin('request_logs', 'claim_requests.request_log_id','=', 'request_logs.id')
->leftJoin('members', 'request_logs.member_id', '=', 'members.id')
->leftJoin('member_plans', 'member_plans.member_id', '=', 'members.id')
->when($request->input('search'), function ($query, $search) {
$query->where(function ($query) use ($search) {
$query->orWhere('members.name', 'like', "%" . $search . "%");
$query->orWhere('claim_requests.code', 'like', "%" . $search . "%");
$query->orWhere('members.member_id', 'like', "%" . $search . "%");
});
})
->when($request->has('orderBy'), function ($query) use ($request) {
@@ -59,12 +61,12 @@ class ClaimController extends Controller
})
->when($request->input('start_date') , function ($query, $start_date) {
$query->where(function ($query) use ($start_date) {
$query->where('claims.created_at', '>=', $start_date);
$query->where('claim_requests.created_at', '>=', $start_date);
});
})
->when($request->input('end_date') , function ($query, $end_date) {
$query->where(function ($query) use ($end_date) {
$query->where('claims.created_at', '<=', $end_date);
$query->where('claim_requests.created_at', '<=', $end_date);
});
})
->when($request->input('provider') , function ($query, $provider) {
@@ -72,17 +74,18 @@ class ClaimController extends Controller
$query->where('request_logs.organization_id', '=', $provider);
});
})
->where('claim_management', '=', 1)
->select(
'claims.id',
'claim_requests.id',
'request_logs.id AS id_log',
'claims.code',
'claim_requests.code as code',
'members.name',
DB::raw('
(SELECT members.member_id FROM members WHERE members.id = claims.member_id LIMIT 1) AS member_id
(SELECT members.member_id FROM members WHERE members.id = claim_requests.member_id LIMIT 1) AS member_id
'),
'claims.created_at',
'claim_requests.created_at',
DB::raw('
(SELECT plans.code FROM plans WHERE plans.id = claims.plan_id LIMIT 1) AS plan_code
(SELECT plans.code FROM plans WHERE plans.id = member_plans.plan_id LIMIT 1) AS plan_code
'),
DB::raw('
(SELECT services.description FROM services WHERE services.code = claim_requests.service_code LIMIT 1) AS service_code
@@ -97,7 +100,7 @@ class ClaimController extends Controller
(Select SUM(request_log_benefits.amount_approved) as tot_bill FROM request_log_benefits
WHERE request_log_benefits.request_log_id = request_logs.id LIMIT 1) AS tot_bill
'),
'claims.status',
'claim_requests.status_claim_management as status',
)
->paginate($limit);
@@ -136,13 +139,15 @@ class ClaimController extends Controller
$headerRow = WriterEntityFactory::createRowFromArray($header, $style);
$writer->addRow($headerRow);
// ============================
$results = DB::table('claims')
->leftJoin('claim_requests', 'claims.claim_request_id','=', 'claim_requests.id')
$results = DB::table('claim_requests')
->leftJoin('request_logs', 'claim_requests.request_log_id','=', 'request_logs.id')
->leftJoin('members', 'request_logs.member_id', '=', 'members.id')
->leftJoin('member_plans', 'member_plans.member_id', '=', 'members.id')
->when($request->input('search'), function ($query, $search) {
$query->where(function ($query) use ($search) {
$query->orWhere('members.name', 'like', "%" . $search . "%");
$query->orWhere('claim_requests.code', 'like', "%" . $search . "%");
$query->orWhere('members.member_id', 'like', "%" . $search . "%");
});
})
->when($request->has('orderBy'), function ($query) use ($request) {
@@ -153,12 +158,12 @@ class ClaimController extends Controller
})
->when($request->input('start_date') , function ($query, $start_date) {
$query->where(function ($query) use ($start_date) {
$query->where('claims.created_at', '>=', $start_date);
$query->where('claim_requests.created_at', '>=', $start_date);
});
})
->when($request->input('end_date') , function ($query, $end_date) {
$query->where(function ($query) use ($end_date) {
$query->where('claims.created_at', '<=', $end_date);
$query->where('claim_requests.created_at', '<=', $end_date);
});
})
->when($request->input('provider') , function ($query, $provider) {
@@ -166,17 +171,18 @@ class ClaimController extends Controller
$query->where('request_logs.organization_id', '=', $provider);
});
})
->where('claim_management', '=', 1)
->select(
'claims.id',
'claim_requests.id',
'request_logs.id AS id_log',
'claims.code',
'claim_requests.code as code',
'members.name',
DB::raw('
(SELECT members.member_id FROM members WHERE members.id = claims.member_id LIMIT 1) AS member_id
(SELECT members.member_id FROM members WHERE members.id = claim_requests.member_id LIMIT 1) AS member_id
'),
'claims.created_at',
'claim_requests.created_at',
DB::raw('
(SELECT plans.code FROM plans WHERE plans.id = claims.plan_id LIMIT 1) AS plan_code
(SELECT plans.code FROM plans WHERE plans.id = member_plans.plan_id LIMIT 1) AS plan_code
'),
DB::raw('
(SELECT services.description FROM services WHERE services.code = claim_requests.service_code LIMIT 1) AS service_code
@@ -191,7 +197,7 @@ class ClaimController extends Controller
(Select SUM(request_log_benefits.amount_approved) as tot_bill FROM request_log_benefits
WHERE request_log_benefits.request_log_id = request_logs.id LIMIT 1) AS tot_bill
'),
'claims.status',
'claim_requests.status_claim_management as status',
)
->get();
$no=0;
@@ -271,19 +277,18 @@ class ClaimController extends Controller
public function cekStatus($id)
{
$cek = DB::table('claims')
->where('claims.id', '=', $id)
->select('claims.status')
$cek = DB::table('claim_requests')
->where('claim_requests.id', '=', $id)
->select('claim_requests.status_claim_management as status')
->first();
$data['cek'] = $cek;
$member = DB::table('claims')
->join('claim_requests', 'claims.claim_request_id','=', 'claim_requests.id')
$member = DB::table('claim_requests')
->join('request_logs', 'claim_requests.request_log_id','=', 'request_logs.id')
->join('members', 'request_logs.member_id', '=', 'members.id')
->where('claims.id', '=', $id)
->select('claims.code','members.name','claims.created_at', DB::raw('
->where('claim_requests.id', '=', $id)
->select('claim_requests.code','members.name','claim_requests.created_at', DB::raw('
(SELECT services.name FROM services WHERE services.code = request_logs.service_code LIMIT 1) AS service_type
'),)
->first();
@@ -559,20 +564,15 @@ class ClaimController extends Controller
public function decline(Request $request, $id)
{
//Get claim request id
$data_claim_requests = DB::table('claim_requests')
->leftJoin('claims', 'claim_requests.id', '=', 'claims.claim_request_id')
->where('claims.id', $id)
->select('claim_requests.id')
->first();
$id = $data_claim_requests->id;
DB::table('claims')
->where('claim_request_id', $id)
DB::table('claim_requests')
->where('claim_requests.id', $id)
->update(
[
'status' => 'declined',
'reason_decline' => $request->reasonDecline ? $request->reasonDecline : ''
'status_claim_management' => 'declined',
'reason_decline' => $request->reasonDecline ? $request->reasonDecline : '',
'approval_date_claim_management' => date('Y-m-d H:i:s'),
'approval_by_claim_management' => auth()->user()->id
]
);
@@ -594,19 +594,13 @@ class ClaimController extends Controller
public function approve($id)
{
//Get claim request id
$data_claim_requests = DB::table('claim_requests')
->leftJoin('claims', 'claim_requests.id', '=', 'claims.claim_request_id')
->where('claims.id', $id)
->select('claim_requests.id')
->first();
$id = $data_claim_requests->id;
DB::table('claims')
->where('claim_request_id', $id)
DB::table('claim_requests')
->where('claim_requests.id', $id)
->update(
[
'status' => 'approved'
'status_claim_management' => 'approved',
'approval_date_claim_management' => date('Y-m-d H:i:s'),
'approval_by_claim_management' => auth()->user()->id
]
);

View File

@@ -17,7 +17,7 @@ return new class extends Migration
$table->integer('claim_management')
->default(0)
->after('status')
->comment('untuk flag request masuk ke final, jika 0 masih request dan 1 itu sudah masuk ke finallog');
->comment('0=claim request, 1=claim management');
$table->string('status_claim_management')->after('claim_management')->nullable();
$table->dateTime('submission_date_claim_management')->after('status_claim_management')->nullable();
$table->string('submission_by_claim_management')->after('submission_date_claim_management')->nullable();

View File

@@ -331,7 +331,7 @@ export default function Detail() {
{item.benefit?.description}
</Typography>
</Grid>
<Grid item xs={6} sx={{ display: 'flex', placeContent: 'end' }}>
{/* <Grid item xs={6} sx={{ display: 'flex', placeContent: 'end' }}>
<MoreMenu actions={
<>
<MenuItem onClick={() => {
@@ -353,7 +353,7 @@ export default function Detail() {
</MenuItem>
</>
} />
</Grid>
</Grid> */}
</Grid>
</Grid>
<Grid item xs={12}>

View File

@@ -532,7 +532,7 @@ const dummyServices = [
<TableCell align="left">{row?.service_code}</TableCell>
<TableCell align="left">{row?.corporate_policies}</TableCell>
<TableCell align="left">{row?.provider}</TableCell>
<TableCell align="left">Rp. {row?.tot_bill?.toLocaleString('id-ID')}</TableCell>
<TableCell align="left">Rp. {row?.tot_bill?.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ".")}</TableCell>
<TableCell align="left">
{row.status == 'draft' && (<Label color='secondary' variant='ghost'>{capitalizeFirstLetter(row.status)}</Label>)}
{row.status == 'requested' && (<Label color='primary' variant='ghost'>{capitalizeFirstLetter(row.status)}</Label>)}