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

This commit is contained in:
2024-07-09 09:24:55 +07:00
3 changed files with 47 additions and 16 deletions

View File

@@ -24,6 +24,7 @@ use Modules\Internal\Services\MemberEnrollmentService;
use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\DB;
use Dompdf\Dompdf; use Dompdf\Dompdf;
use Dompdf\Options; use Dompdf\Options;
use PDF;
class CorporateMemberController extends Controller class CorporateMemberController extends Controller
{ {
@@ -403,4 +404,22 @@ class CorporateMemberController extends Controller
return response($pdf->output(), 200, $headers); return response($pdf->output(), 200, $headers);
} }
public function viewECard($corporate_id, $member_id){
$member = Member::with([
'currentPlan',
'currentPolicy',
'currentCorporate',
'currentCorporate.files',
// 'currentPlan.corporateBenefits.benefit'
])->find($member_id);
if ($member->currentCorporate->id == 5){ // Vale
$pdf = PDF::loadView('pdf.ecard', compact('member'))->setPaper('A5', 'portrait');
} else {
$pdf = PDF::loadView('pdf.ecard-lms', compact('member'))->setPaper('A5', 'portrait');
}
return $pdf->download('Ecard - '.$member->full_name.'.pdf');
}
} }

View File

@@ -78,6 +78,7 @@ Route::prefix('client')->group(function () {
Route::get('get-limits/{member_id}', [CorporateMemberController::class, 'getLimits']); Route::get('get-limits/{member_id}', [CorporateMemberController::class, 'getLimits']);
Route::get('download-ecard/{member_id}', [CorporateMemberController::class, 'downloadEcard']); Route::get('download-ecard/{member_id}', [CorporateMemberController::class, 'downloadEcard']);
Route::get('view_card/{member_id}', [CorporateMemberController::class, 'viewECard']);
}); });
Route::get('claims/{id}', [ClaimController::class, 'show']); Route::get('claims/{id}', [ClaimController::class, 'show']);

View File

@@ -171,23 +171,34 @@ export default function List() {
/* -------------------------------------------------------------------------- */ /* -------------------------------------------------------------------------- */
// Download E-Card // Download E-Card
async function handleDownloadEcard(member_id: any, fullName:any) { async function handleDownloadEcard(member_id: any, fullName:any) {
return axios axios
.get(corporateValue+`/download-ecard/${member_id}`, { .get(corporateValue+`/view_card/${member_id}`, {
responseType: 'blob', responseType: 'blob',
}) })
.then((response) => { .then((response) => {
const namaFile = 'Ecard - '+fullName+".pdf"; window.open(URL.createObjectURL(response.data));
const url = URL.createObjectURL(response.data); })
const link = document.createElement('a'); .catch((response) => {
link.href = url; enqueueSnackbar(response.message, { variant: 'error' });
link.setAttribute('download', namaFile); });
document.body.appendChild(link);
link.click(); // return axios
document.body.removeChild(link); // .get(corporateValue+`/download-ecard/${member_id}`, {
}) // responseType: 'blob',
.catch((error) => { // })
enqueueSnackbar(error.message, { variant: 'error' }); // .then((response) => {
}); // const namaFile = 'Ecard - '+fullName+".pdf";
// const url = URL.createObjectURL(response.data);
// const link = document.createElement('a');
// link.href = url;
// link.setAttribute('download', namaFile);
// document.body.appendChild(link);
// link.click();
// document.body.removeChild(link);
// })
// .catch((error) => {
// enqueueSnackbar(error.message, { variant: 'error' });
// });
} }
useEffect(() => { useEffect(() => {