diff --git a/app/Livewire/Datatable/Studio/Manage/OrdersTable.php b/app/Livewire/Datatable/Studio/Manage/OrdersTable.php index 6e4cd9e..e63c3bb 100644 --- a/app/Livewire/Datatable/Studio/Manage/OrdersTable.php +++ b/app/Livewire/Datatable/Studio/Manage/OrdersTable.php @@ -42,7 +42,7 @@ public function columns(): array }) ->html(), - Column::make('Tanggal', 'order_at') + Column::make('Tanggal', 'ordered_at') ->format(fn ($value) => formatDate($value)) ->searchable(), @@ -136,7 +136,7 @@ public function columns(): array public function builder(): Builder { - return Order::select('orders.id', 'orders.user_id', 'invoice_number', 'customer_id', 'orders.order_at', 'cogs', 'subtotal', 'discount', 'total', 'orders.status', 'channel', 'orders.voucher_id', 'orders.created_at') + return Order::select('orders.id', 'orders.user_id', 'invoice_number', 'customer_id', 'orders.ordered_at', 'cogs', 'subtotal', 'discount', 'total', 'orders.status', 'channel', 'orders.voucher_id', 'orders.created_at') ->with(['user', 'user.employee', 'customer', 'voucher']); } } diff --git a/app/Livewire/Forms/Studio/Manage/OrderForm.php b/app/Livewire/Forms/Studio/Manage/OrderForm.php index 91be13e..1a37612 100644 --- a/app/Livewire/Forms/Studio/Manage/OrderForm.php +++ b/app/Livewire/Forms/Studio/Manage/OrderForm.php @@ -129,6 +129,7 @@ public function store() 'channel' => $this->channel, 'status' => $this->status, 'payment_method' => $this->payment_method, + 'ordered_at' => now(), ]); // Attach all order items to the newly created order @@ -149,6 +150,7 @@ public function store() 'status' => PaymentStatus::PAID->value, ]); + // Deduct voucher quantity if ($this->voucher_id) { $userVoucher = DB::table('user_voucher') ->where('user_id', $member->id) @@ -171,6 +173,7 @@ public function store() } } } + }); return [ diff --git a/app/Traits/Order/WithMember.php b/app/Traits/Order/WithMember.php index 2c77b58..27f4fec 100644 --- a/app/Traits/Order/WithMember.php +++ b/app/Traits/Order/WithMember.php @@ -29,9 +29,13 @@ public function members() ->toArray(); } - public function updatedFormMemberId(Customer $customer) + public function updatedFormMemberId(?string $member_id = null) { - $customer->load('user'); + $customer = Customer::with('user')->find($member_id); + + if (! $customer) { + return; + } $memberId = $customer->user?->id; diff --git a/resources/views/livewire/studio/manage/order/form.blade.php b/resources/views/livewire/studio/manage/order/form.blade.php index 644edea..76da8d9 100644 --- a/resources/views/livewire/studio/manage/order/form.blade.php +++ b/resources/views/livewire/studio/manage/order/form.blade.php @@ -278,9 +278,9 @@ class="text-xs text-gray-400">{{ currency($item->quantity, '') }} Member Silakan ketikkan nomor telepon. + wire:model.live.debounce.500ms="form.member_id" clear> - + @foreach ($this->members as $member)