feat: fix start date and end date timezone issue
This commit is contained in:
parent
80638ddf9b
commit
027f7845b3
@ -6,6 +6,7 @@
|
|||||||
use App\Models\ClientInvoice;
|
use App\Models\ClientInvoice;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Illuminate\Support\Facades\DB;
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Carbon\Carbon;
|
||||||
|
|
||||||
class ClientInvoicePaymentSyncService
|
class ClientInvoicePaymentSyncService
|
||||||
{
|
{
|
||||||
@ -50,6 +51,7 @@ public function sync(ClientInvoice $invoice, array $payments): ClientInvoice
|
|||||||
$totals['payment_no'] ??= $payment->payment_no;
|
$totals['payment_no'] ??= $payment->payment_no;
|
||||||
|
|
||||||
foreach ($paymentPayload['items'] ?? [] as $itemPayload) {
|
foreach ($paymentPayload['items'] ?? [] as $itemPayload) {
|
||||||
|
// dd($itemPayload);
|
||||||
$billingItemType = $billingItemTypes->get((int) ($itemPayload['billing_item_types_id'] ?? 0));
|
$billingItemType = $billingItemTypes->get((int) ($itemPayload['billing_item_types_id'] ?? 0));
|
||||||
$grossAmount = $this->amount($itemPayload['payment_item_amount'] ?? 0);
|
$grossAmount = $this->amount($itemPayload['payment_item_amount'] ?? 0);
|
||||||
$netAmount = $this->amount($itemPayload['net_amount'] ?? 0);
|
$netAmount = $this->amount($itemPayload['net_amount'] ?? 0);
|
||||||
@ -59,8 +61,8 @@ public function sync(ClientInvoice $invoice, array $payments): ClientInvoice
|
|||||||
|
|
||||||
$payment->items()->create([
|
$payment->items()->create([
|
||||||
'billing_item_types_id' => $billingItemType?->id ?? $itemPayload['billing_item_types_id'],
|
'billing_item_types_id' => $billingItemType?->id ?? $itemPayload['billing_item_types_id'],
|
||||||
'start_date' => $itemPayload['start_date'] ?? null,
|
'start_date' => !empty($itemPayload['start_date'])?Carbon::parse($itemPayload['start_date'])->timezone('Asia/Kuala_Lumpur')->format('Y-m-d'):null,
|
||||||
'end_date' => $itemPayload['end_date'] ?? null,
|
'end_date' => !empty($itemPayload['end_date'])?Carbon::parse($itemPayload['end_date'])->timezone('Asia/Kuala_Lumpur')->format('Y-m-d'):null,
|
||||||
'payment_item_amount' => $grossAmount,
|
'payment_item_amount' => $grossAmount,
|
||||||
'tax_percentage' => $this->amount($itemPayload['tax_percentage'] ?? 0),
|
'tax_percentage' => $this->amount($itemPayload['tax_percentage'] ?? 0),
|
||||||
'net_amount' => $netAmount,
|
'net_amount' => $netAmount,
|
||||||
@ -76,8 +78,8 @@ public function sync(ClientInvoice $invoice, array $payments): ClientInvoice
|
|||||||
'final_net_amount' => $finalNetAmount,
|
'final_net_amount' => $finalNetAmount,
|
||||||
'spending' => $spending,
|
'spending' => $spending,
|
||||||
'is_creditcard' => $isCreditCard,
|
'is_creditcard' => $isCreditCard,
|
||||||
'start_date' => $itemPayload['start_date'] ?? null,
|
'start_date' => !empty($itemPayload['start_date'])?Carbon::parse($itemPayload['start_date'])->timezone('Asia/Kuala_Lumpur')->format('Y-m-d'):null,
|
||||||
'end_date' => $itemPayload['end_date'] ?? null,
|
'end_date' => !empty($itemPayload['end_date'])?Carbon::parse($itemPayload['end_date'])->timezone('Asia/Kuala_Lumpur')->format('Y-m-d') :null,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user