@extends('layouts.app') @section('title', __('lang_v1.approve_order')) @section('content')

@lang('lang_v1.approve_order') {{ $so->invoice_no }} — {{ optional($so->contact)->name }}

@if(!empty($so->additional_notes))
{!! nl2br(e($so->additional_notes)) !!}
@endif

@lang('lang_v1.sales_order'): {{ $so->invoice_no }} @lang('lang_v1.so_stage_' . $stage)

@lang('report.customer'):
{{ optional($so->contact)->name }}
@lang('lang_v1.order_date'):
{{ @format_date($so->transaction_date) }}
@lang('lang_v1.purchase_order'):
{{ $store_po ? $store_po->ref_no : '-' }}
@lang('sale.status'):
{{ $so->status }} / {{ $so->shipping_status ?: '-' }}
@if($can_approve) {!! Form::open(['route' => ['supplier.incoming-order.approve', $so->id], 'method' => 'post', 'id' => 'approve_order_form']) !!} @endif

@lang('sale.products')

@lang('lang_v1.so_approval_help')

@foreach($lines as $i => $line) @php $requested = $line->so_quantity_requested ?? $line->quantity; // Below available-to-promise means the warehouse cannot // fully honour this line today. $short = (float) $line->quantity > (float) $line->available_to_promise + 0.0001; @endphp @endforeach
# @lang('business.product') @lang('lang_v1.requested_qty') @lang('lang_v1.available_to_promise') @lang('lang_v1.approved_qty') @lang('sale.unit_price')
{{ $i + 1 }} {{ optional($line->product)->name }} @if(optional($line->variations)->name && optional($line->variations)->name !== 'DUMMY')
{{ $line->variations->name }} @endif
{{ @num_format($requested) }} {{ @num_format(max(0, $line->available_to_promise)) }} @if($can_approve) {!! Form::text('approved_qty['.$line->id.']', @num_format($line->quantity), [ 'class' => 'form-control input-sm input_number text-right', 'required', ]) !!} @else {{ @num_format($line->quantity) }} @endif {{ @num_format($line->unit_price) }}
@if($can_approve) @endif
@if($can_approve) {!! Form::close() !!} @endif {{-- Cancelling is a separate, destructive action: kept out of the approval form so a stray Enter key cannot trigger it. --}} @if(app(\App\Utils\SalesOrderFulfilmentUtil::class)->canTransitionTo($so, \App\Utils\SalesOrderFulfilmentUtil::STAGE_CANCELLED))

@lang('restaurant.cancelled')

{!! Form::open(['route' => ['supplier.incoming-order.cancel', $so->id], 'method' => 'post', 'class' => 'form-inline']) !!} {!! Form::text('reason', null, ['class' => 'form-control', 'placeholder' => __('lang_v1.reason')]) !!} {!! Form::close() !!}
@endif
@endsection