update penjagaan limit level plan
This commit is contained in:
@@ -34,7 +34,7 @@ class RequestLogShowResource extends JsonResource
|
|||||||
$planMember = MemberPlan::where('member_id', $member_id)->get('plan_id');
|
$planMember = MemberPlan::where('member_id', $member_id)->get('plan_id');
|
||||||
|
|
||||||
$planId = Plan::whereIn('id', $planMember)->where('service_code', $requestLog['service_code'])->first();
|
$planId = Plan::whereIn('id', $planMember)->where('service_code', $requestLog['service_code'])->first();
|
||||||
$benefit = CorporateBenefit::with('benefit')->where('plan_id', $planId->id)->get()->toArray();
|
$benefit = CorporateBenefit::with(['benefit', 'plan'])->where('plan_id', $planId->id)->get()->toArray();
|
||||||
$benefitDetailLog = RequestLogBenefit::with('benefit')->where('request_log_id', $requestLog['id'])->get()->toArray();
|
$benefitDetailLog = RequestLogBenefit::with('benefit')->where('request_log_id', $requestLog['id'])->get()->toArray();
|
||||||
$medicineDetailLog = RequestLogMedicine::where('request_log_id', $requestLog['id'])->get()->toArray();
|
$medicineDetailLog = RequestLogMedicine::where('request_log_id', $requestLog['id'])->get()->toArray();
|
||||||
$provider = Organization::where('id', $requestLog['organization_id'])->first();
|
$provider = Organization::where('id', $requestLog['organization_id'])->first();
|
||||||
@@ -66,8 +66,12 @@ class RequestLogShowResource extends JsonResource
|
|||||||
$benefitData = [];
|
$benefitData = [];
|
||||||
if (count($benefit)){
|
if (count($benefit)){
|
||||||
foreach($benefit as $data){
|
foreach($benefit as $data){
|
||||||
|
$data['benefit']['plan_id'] = $data['plan_id'];
|
||||||
$data['benefit']['limit_amount'] = $data['limit_amount'];
|
$data['benefit']['limit_amount'] = $data['limit_amount'];
|
||||||
$data['benefit']['family_plan'] = $planId->family_plan;
|
$data['benefit']['family_plan'] = $planId->family_plan;
|
||||||
|
$data['benefit']['max_frequency_period'] = $data['max_frequency_period'];
|
||||||
|
$data['benefit']['limit_amount_plan'] = $data['plan']['limit_rules'];
|
||||||
|
$data['benefit']['family_plan_plans'] = $data['plan']['family_plan'];
|
||||||
array_push($benefitData, $data['benefit']);
|
array_push($benefitData, $data['benefit']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -111,8 +115,9 @@ class RequestLogShowResource extends JsonResource
|
|||||||
->select('code', 'name')
|
->select('code', 'name')
|
||||||
->get();
|
->get();
|
||||||
}
|
}
|
||||||
|
$memberUsage = Helper::getUsageMember($corporateId, $requestLog['member']['id'], $benefitData);
|
||||||
|
|
||||||
$memberLimit = Helper::getLimitMember($corporateId, $requestLog['member']['id'], $benefitData);
|
// dd($memberLimitUsage);
|
||||||
$data = [
|
$data = [
|
||||||
'id' => $requestLog['id'],
|
'id' => $requestLog['id'],
|
||||||
'code' => $requestLog['code'],
|
'code' => $requestLog['code'],
|
||||||
@@ -128,7 +133,7 @@ class RequestLogShowResource extends JsonResource
|
|||||||
'gender' => $requestLog['member']['gender'],
|
'gender' => $requestLog['member']['gender'],
|
||||||
'marital_status' => $requestLog['member']['status_marital'],
|
'marital_status' => $requestLog['member']['status_marital'],
|
||||||
'member_type' => Helper::memberType($requestLog['member']['record_type']),
|
'member_type' => Helper::memberType($requestLog['member']['record_type']),
|
||||||
'member_usage' => json_decode($memberLimit),
|
'member_usage_benefit' => json_decode($memberUsage),
|
||||||
'principal_id' => $requestLog['member']['principal_id'] ? $requestLog['member']['principal_id'] : '-',
|
'principal_id' => $requestLog['member']['principal_id'] ? $requestLog['member']['principal_id'] : '-',
|
||||||
'principal_name' => $requestLog['member']['principal_id'] ? Helper::principalName($requestLog['member']['principal_id']) : '-',
|
'principal_name' => $requestLog['member']['principal_id'] ? Helper::principalName($requestLog['member']['principal_id']) : '-',
|
||||||
'relation_with_principal' => Helper::relationWithPrincipal($requestLog['member']['relation_with_principal']),
|
'relation_with_principal' => Helper::relationWithPrincipal($requestLog['member']['relation_with_principal']),
|
||||||
|
|||||||
@@ -536,32 +536,106 @@ class Helper
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getLimitMember($corporateId, $id, $benefitData) {
|
public static function getUsageMember($corporateId, $id, $benefitData) {
|
||||||
// Menghitung jumlah total approved dan mengkategorikan berdasarkan benefit_id
|
// Menghitung jumlah total approved dan mengkategorikan berdasarkan benefit_id
|
||||||
$amountApprovedByBenefit = [];
|
$amountApprovedByBenefit = [];
|
||||||
foreach($benefitData as $benefit) {
|
foreach($benefitData as $benefit) {
|
||||||
if ($benefit['family_plan'] == 'S' || $benefit['family_plan'] == 'F'){ // Menghitung usage per family
|
if ($benefit['limit_amount'] != 999999999) {
|
||||||
$memberFamilys = Helper::getMemberFamily($id);
|
if ($benefit['family_plan'] == 'S' || $benefit['family_plan'] == 'F'){ // Menghitung usage per family
|
||||||
$usageLogs = RequestLogBenefit::query()
|
$memberFamilys = Helper::getMemberFamily($id);
|
||||||
->whereHas('requestLog', function ($query) use ($benefit, $memberFamilys) {
|
$usageLogs = 0;
|
||||||
$query->where('benefit_id', $benefit['id'])
|
|
||||||
->whereIn('member_id', $memberFamilys);
|
$today = date('Y-m-d');
|
||||||
})
|
$periods = [
|
||||||
->sum('amount_approved');
|
0 => [
|
||||||
|
'start' => '2024-01-05',
|
||||||
// Mengkategorikan sum berdasarkan benefit_id
|
'end' => '2025-01-05'
|
||||||
$amountApprovedByBenefit[$benefit['id']] = $usageLogs;
|
],
|
||||||
} else { // Menghitung usage permember
|
1 => [
|
||||||
$usageLog = RequestLogBenefit::query()
|
'start' => $today,
|
||||||
->whereHas('requestLog', function ($query) use ($benefit, $id) {
|
'end' => $today
|
||||||
$query->where('benefit_id', $benefit['id'])
|
]
|
||||||
->where('member_id', $id);
|
// Tambahkan kondisi lainnya jika diperlukan
|
||||||
})
|
];
|
||||||
->sum('amount_approved');
|
|
||||||
|
if (array_key_exists($benefit['max_frequency_period'], $periods)) {
|
||||||
// Mengkategorikan sum berdasarkan benefit_id
|
$usageLogs = RequestLogBenefit::query()
|
||||||
$amountApprovedByBenefit[$benefit['id']] = $usageLog;
|
->whereHas('requestLog', function ($query) use ($benefit, $memberFamilys, $periods) {
|
||||||
}
|
$period = $periods[$benefit['max_frequency_period']];
|
||||||
|
$query->where('benefit_id', $benefit['id'])
|
||||||
|
// ->where('submission_date', '>=', $period['start'])
|
||||||
|
// ->where('submission_date', '<=', $period['end'])
|
||||||
|
->whereIn('member_id', $memberFamilys);
|
||||||
|
})
|
||||||
|
->sum('amount_approved');
|
||||||
|
}
|
||||||
|
// Mengkategorikan sum berdasarkan benefit_id
|
||||||
|
$amountApprovedByBenefit[$benefit['id']] = $usageLogs;
|
||||||
|
} else { // Menghitung usage permember
|
||||||
|
$usageLog = RequestLogBenefit::query()
|
||||||
|
->whereHas('requestLog', function ($query) use ($benefit, $id) {
|
||||||
|
$query->where('benefit_id', $benefit['id'])
|
||||||
|
->where('member_id', $id);
|
||||||
|
})
|
||||||
|
->sum('amount_approved');
|
||||||
|
|
||||||
|
// Mengkategorikan sum berdasarkan benefit_id
|
||||||
|
$amountApprovedByBenefit[$benefit['id']] = $usageLog;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return json_encode($amountApprovedByBenefit);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function getLimitMemberService($corporateId, $id, $benefitData) {
|
||||||
|
// Menghitung jumlah total approved dan mengkategorikan berdasarkan benefit_id
|
||||||
|
$amountApprovedByBenefit = [];
|
||||||
|
foreach($benefitData as $benefit) {
|
||||||
|
if ($benefit['limit_amount'] != 999999999) {
|
||||||
|
if ($benefit['family_plan'] == 'S' || $benefit['family_plan'] == 'F'){ // Menghitung usage per family
|
||||||
|
$memberFamilys = Helper::getMemberFamily($id);
|
||||||
|
$usageLogs = 0;
|
||||||
|
|
||||||
|
$today = date('Y-m-d');
|
||||||
|
$periods = [
|
||||||
|
0 => [
|
||||||
|
'start' => '2024-01-05',
|
||||||
|
'end' => '2025-01-05'
|
||||||
|
],
|
||||||
|
1 => [
|
||||||
|
'start' => $today,
|
||||||
|
'end' => $today
|
||||||
|
]
|
||||||
|
// Tambahkan kondisi lainnya jika diperlukan
|
||||||
|
];
|
||||||
|
|
||||||
|
if (array_key_exists($benefit['max_frequency_period'], $periods)) {
|
||||||
|
$usageLogs = RequestLogBenefit::query()
|
||||||
|
->whereHas('requestLog', function ($query) use ($benefit, $memberFamilys, $periods) {
|
||||||
|
$period = $periods[$benefit['max_frequency_period']];
|
||||||
|
$query->where('benefit_id', $benefit['id'])
|
||||||
|
// ->where('submission_date', '>=', $period['start'])
|
||||||
|
// ->where('submission_date', '<=', $period['end'])
|
||||||
|
->whereIn('member_id', $memberFamilys);
|
||||||
|
})
|
||||||
|
->sum('amount_approved');
|
||||||
|
}
|
||||||
|
// Mengkategorikan sum berdasarkan benefit_id
|
||||||
|
$amountApprovedByBenefit[$benefit['id']] = $usageLogs;
|
||||||
|
} else { // Menghitung usage permember
|
||||||
|
$usageLog = RequestLogBenefit::query()
|
||||||
|
->whereHas('requestLog', function ($query) use ($benefit, $id) {
|
||||||
|
$query->where('benefit_id', $benefit['id'])
|
||||||
|
->where('member_id', $id);
|
||||||
|
})
|
||||||
|
->sum('amount_approved');
|
||||||
|
|
||||||
|
// Mengkategorikan sum berdasarkan benefit_id
|
||||||
|
$amountApprovedByBenefit[$benefit['id']] = $usageLog;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return json_encode($amountApprovedByBenefit);
|
return json_encode($amountApprovedByBenefit);
|
||||||
|
|||||||
@@ -41,7 +41,10 @@ type BenefitSelected = {
|
|||||||
description: string,
|
description: string,
|
||||||
benefit_id: number,
|
benefit_id: number,
|
||||||
family_plan: string,
|
family_plan: string,
|
||||||
|
family_plan_plans: string,
|
||||||
limit_amount: number,
|
limit_amount: number,
|
||||||
|
limit_amount_plan: number,
|
||||||
|
max_frequency_period: number,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -189,30 +192,52 @@ export default function DialogBenefit({requestLog, setOpenDialog, openDialog, cl
|
|||||||
}
|
}
|
||||||
|
|
||||||
const handleOnChangeNominal = (key) => {
|
const handleOnChangeNominal = (key) => {
|
||||||
|
|
||||||
if (benefitSelected[key].family_plan == 'S' || benefitSelected[key].family_plan == 'F'){
|
if (benefitSelected[key].family_plan == 'S' || benefitSelected[key].family_plan == 'F'){
|
||||||
if (requestLog?.member_usage && benefitSelected[key] && benefitData[key]) {
|
if (requestLog?.member_usage_benefit && benefitSelected[key] && benefitData[key]) {
|
||||||
// Konversi nilai ke angka dengan aman
|
|
||||||
let memberUsage = Number(requestLog.member_usage[benefitSelected[key].id]) || 0;
|
|
||||||
let amountApproved = Number(benefitData[key].amount_approved) || 0;
|
|
||||||
let limitAmount = Number(benefitSelected[key].limit_amount) || 0;
|
let limitAmount = Number(benefitSelected[key].limit_amount) || 0;
|
||||||
|
let limitAmountPlan = Number(benefitSelected[key].limit_amount_plan) || 0;
|
||||||
// Hitung penggunaan waktu nyata
|
// Periksa apakah limitAmount Benefit lebih besar dari realTimeUsage
|
||||||
let realTimeUsage = memberUsage + amountApproved;
|
if (limitAmountPlan != 999999999){
|
||||||
|
let realTimeUsage = 0;
|
||||||
// Periksa apakah limitAmount lebih besar dari realTimeUsage
|
for (let key in requestLog?.member_usage_benefit) {
|
||||||
if (limitAmount < realTimeUsage) {
|
if (requestLog?.member_usage_benefit.hasOwnProperty(key)) {
|
||||||
setError(`benefit_data.${key}.amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmount) } , silakan isikan di Amount Excess` });
|
realTimeUsage += requestLog?.member_usage_benefit[key];
|
||||||
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
}
|
||||||
setError(`benefit_data.${key}.amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
}
|
||||||
|
let amountApproved = Number(benefitData[key].amount_approved) || 0;
|
||||||
|
// Hitung penggunaan waktu nyata
|
||||||
|
realTimeUsage += amountApproved;
|
||||||
|
if (limitAmountPlan < realTimeUsage) {
|
||||||
|
setError(`benefit_data.${key}.amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmountPlan) } , silakan isikan di Amount Excess` });
|
||||||
|
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
||||||
|
setError(`benefit_data.${key}.amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
||||||
|
} else {
|
||||||
|
clearErrors(`benefit_data.${key}.amount_approved`);
|
||||||
|
}
|
||||||
|
} else if (limitAmount != 999999999) { // Periksa apakah limitAmount Benefit lebih besar dari realTimeUsage
|
||||||
|
// Konversi nilai ke angka dengan aman
|
||||||
|
let memberUsage = Number(requestLog.member_usage_benefit[benefitSelected[key].id]) || 0;
|
||||||
|
let amountApproved = Number(benefitData[key].amount_approved) || 0;
|
||||||
|
// Hitung penggunaan waktu nyata
|
||||||
|
let realTimeUsage = memberUsage + amountApproved;
|
||||||
|
|
||||||
|
if (limitAmount < realTimeUsage) {
|
||||||
|
setError(`benefit_data.${key}.amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmount) } , silakan isikan di Amount Excess` });
|
||||||
|
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
||||||
|
setError(`benefit_data.${key}.amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
||||||
|
} else {
|
||||||
|
clearErrors(`benefit_data.${key}.amount_approved`);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
clearErrors(`benefit_data.${key}.amount_approved`);
|
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
||||||
|
setError(`benefit_data.${key}.amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
||||||
|
} else {
|
||||||
|
clearErrors(`benefit_data.${key}.amount_approved`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
||||||
// setValue(`benefit_data.${key}.amount_approved`, 0);
|
|
||||||
setError(`benefit_data.${key}.amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
setError(`benefit_data.${key}.amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
||||||
} else {
|
} else {
|
||||||
clearErrors(`benefit_data.${key}.amount_approved`);
|
clearErrors(`benefit_data.${key}.amount_approved`);
|
||||||
@@ -220,6 +245,13 @@ export default function DialogBenefit({requestLog, setOpenDialog, openDialog, cl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleOnChangeNotApprove = (key, value) => {
|
||||||
|
setValue(`benefit_data.${key}.excess_paid`, value);
|
||||||
|
if (totalAll().totalAmountApproved + totalAll().totalAmountNotApproved === totalAll().totalAmountIncurred) {
|
||||||
|
clearErrors(`benefit_data.${key}.amount_approved`);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// Submit Form
|
// Submit Form
|
||||||
// =====================================
|
// =====================================
|
||||||
const submitHandler = async (data: BenefitConfigurationListType) => {
|
const submitHandler = async (data: BenefitConfigurationListType) => {
|
||||||
@@ -363,6 +395,10 @@ export default function DialogBenefit({requestLog, setOpenDialog, openDialog, cl
|
|||||||
name={`benefit_data.${index}.amount_not_approved`}
|
name={`benefit_data.${index}.amount_not_approved`}
|
||||||
placeholder='Amount Not Approved'
|
placeholder='Amount Not Approved'
|
||||||
required
|
required
|
||||||
|
onChange={(event) => {
|
||||||
|
setValue(`benefit_data.${index}.amount_not_approved`, event.target.value)
|
||||||
|
handleOnChangeNotApprove(index, event.target.value)}
|
||||||
|
}
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|||||||
@@ -102,25 +102,42 @@ export default function DialogEditBenefit({id, data, setOpenDialog, openDialog,
|
|||||||
let benefitData = findItemById(data?.benefit_id)
|
let benefitData = findItemById(data?.benefit_id)
|
||||||
if (benefitData.family_plan == 'S' || benefitData.family_plan == 'F'){
|
if (benefitData.family_plan == 'S' || benefitData.family_plan == 'F'){
|
||||||
// Konversi nilai ke angka dengan aman
|
// Konversi nilai ke angka dengan aman
|
||||||
let memberUsage = Number(total.totalLimit[benefitData.id]) || 0;
|
|
||||||
let amountApproved = Number(parseFloat(watch('amount_approved'))) || 0;
|
|
||||||
let limitAmount = Number(benefitData.limit_amount) || 0;
|
let limitAmount = Number(benefitData.limit_amount) || 0;
|
||||||
// Hitung penggunaan waktu nyata
|
let limitAmountPlan = Number(benefitData.limit_amount_plan) || 0;
|
||||||
let realTimeUsage = memberUsage + amountApproved;
|
|
||||||
console.log(limitAmount, realTimeUsage)
|
if (limitAmountPlan != 999999999){
|
||||||
// Periksa apakah limitAmount lebih besar dari realTimeUsage
|
let realTimeUsage = totalAll().totalAmountApproved;
|
||||||
if (limitAmount < realTimeUsage) {
|
console.log(limitAmountPlan, 'test')
|
||||||
setError(`amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmount) } , silakan isikan di Amount Excess` });
|
if (limitAmountPlan < realTimeUsage) {
|
||||||
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
setError(`amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmountPlan) } , silakan isikan di Amount Excess` });
|
||||||
// setValue(`benefit_data.${key}.amount_approved`, 0);
|
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
||||||
setError(`amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
setError(`amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
||||||
|
} else {
|
||||||
|
clearErrors(`amount_approved`);
|
||||||
|
}
|
||||||
|
} else if (limitAmount != 999999999) {
|
||||||
|
let memberUsage = Number(total.totalLimit[benefitData.id]) || 0;
|
||||||
|
let amountApproved = Number(parseFloat(watch('amount_approved'))) || 0;
|
||||||
|
// Hitung penggunaan waktu nyata
|
||||||
|
let realTimeUsage = memberUsage + amountApproved;
|
||||||
|
// Periksa apakah limitAmount lebih besar dari realTimeUsage
|
||||||
|
if (limitAmount < realTimeUsage) {
|
||||||
|
setError(`amount_approved`, { message: `Total Amount Approve sudah melebihi limit ${ fNumber(limitAmount) } , silakan isikan di Amount Excess` });
|
||||||
|
} else if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
||||||
|
// setValue(`benefit_data.${key}.amount_approved`, 0);
|
||||||
|
setError(`amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
||||||
|
} else {
|
||||||
|
clearErrors(`amount_approved`);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
clearErrors(`amount_approved`);
|
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred) {
|
||||||
|
setError(`amount_approved`, { message: 'Total Amount Approve tidak boleh lebih dari Total Amount Incurred' });
|
||||||
|
} else {
|
||||||
|
clearErrors(`amount_approved`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
if (totalAll().totalAmountApproved > totalAll().totalAmountIncurred){
|
||||||
// setValue(`benefit_data.${key}.amount_approved`, 0);
|
|
||||||
setError(`amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
setError(`amount_approved`, {message: 'Amount Approve tidak boleh lebih dari Amount Incurred'});
|
||||||
} else {
|
} else {
|
||||||
clearErrors(`amount_approved`);
|
clearErrors(`amount_approved`);
|
||||||
@@ -128,6 +145,19 @@ export default function DialogEditBenefit({id, data, setOpenDialog, openDialog,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const handleOnChangeNotApprove = (key, value) => {
|
||||||
|
let amountApproved = Number(parseFloat(watch('amount_approved'))) || 0;
|
||||||
|
let amountNotApproved = Number(parseFloat(watch('amount_not_approved'))) || 0;
|
||||||
|
let amountIncurred = Number(parseFloat(watch('amount_incurred'))) || 0;
|
||||||
|
setValue(`excess_paid`, value);
|
||||||
|
console.log(amountApproved + amountNotApproved, amountIncurred, 'test')
|
||||||
|
if ((amountApproved + amountNotApproved) !== amountIncurred) {
|
||||||
|
setError(`amount_not_approved`, {message: 'Amount Not Approve tidak sama dengan total Amount Incurred'});
|
||||||
|
} else {
|
||||||
|
clearErrors(`amount_not_approved`);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// if (totalAmountIncurred !== (totalAmountApproved+totalAmountNotApproved)){
|
// if (totalAmountIncurred !== (totalAmountApproved+totalAmountNotApproved)){
|
||||||
// // alert('Total Incurred tidak sama dengan Total Approve + Total Not Approve')
|
// // alert('Total Incurred tidak sama dengan Total Approve + Total Not Approve')
|
||||||
// // setValue('amount_approved', data?.amount_approved)
|
// // setValue('amount_approved', data?.amount_approved)
|
||||||
@@ -237,6 +267,10 @@ export default function DialogEditBenefit({id, data, setOpenDialog, openDialog,
|
|||||||
name={`amount_not_approved`}
|
name={`amount_not_approved`}
|
||||||
placeholder='Amount Not Approved'
|
placeholder='Amount Not Approved'
|
||||||
required
|
required
|
||||||
|
onChange={(event) => {
|
||||||
|
setValue(`amount_not_approved`, event.target.value)
|
||||||
|
handleOnChangeNotApprove(id, event.target.value)}
|
||||||
|
}
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ export default function Detail() {
|
|||||||
totalAmountApproved : totalAmountApprove,
|
totalAmountApproved : totalAmountApprove,
|
||||||
totalAmountNotApproved : totalAmountNotApprove,
|
totalAmountNotApproved : totalAmountNotApprove,
|
||||||
totalExcessPaid : totalExcessPaid,
|
totalExcessPaid : totalExcessPaid,
|
||||||
totalLimit : requestLog?.member_usage,
|
totalLimit : requestLog?.member_usage_benefit,
|
||||||
benefit : requestLog?.benefit,
|
benefit : requestLog?.benefit,
|
||||||
}
|
}
|
||||||
// Handle Delete File LOG
|
// Handle Delete File LOG
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ export type DetailFinalLogType = {
|
|||||||
exclusion : Exclusion[],
|
exclusion : Exclusion[],
|
||||||
medicine : Medicine[],
|
medicine : Medicine[],
|
||||||
files : file[],
|
files : file[],
|
||||||
member_usage : number
|
member_usage_benefit : number
|
||||||
}
|
}
|
||||||
|
|
||||||
export type Diagnosis = {
|
export type Diagnosis = {
|
||||||
|
|||||||
Reference in New Issue
Block a user