@php
$common_settings = session()->get('business.common_settings');
$multiplier = 1;
$action = !empty($action) ? $action : '';
@endphp
@php
$business = \App\Business::where('id',request()->session()->get('user.business_id'))->first();
@endphp
@foreach($sub_units as $key => $value)
@if(!empty($product->sub_unit_id) && $product->sub_unit_id == $key)
@php
$multiplier = $value['multiplier'];
@endphp
@endif
@endforeach
@if(!empty($so_line))
@endif
@php
$product_name = $product->product_name . ' (' . number_format($product->qty_available) . ' ' . $product->unit . ') ' . $product->sub_sku;
if (!empty($product->brand)) {
$product_name .= ' ' . $product->brand;
}
@endphp
@php
$price = (float) $product->stock_price;
$qty = (float) $product->total_stock_all_locations;
$ac_per_unit = $qty > 0 ? $price / $qty : 0;
@endphp
@if( ($edit_price || $edit_discount) && empty($is_direct_sell) )
{!! $product_name !!}
@if (isset($pos_settings['calcualte_ac']) && $pos_settings['calcualte_ac'] == 1 && auth()->user()->can('view_ac_price_on_pos'))
(@lang('lang_v1.ac')=@format_currency($ac_per_unit))
@endif
@else
{!! $product_name !!}
@if (isset($pos_settings['calcualte_ac']) && $pos_settings['calcualte_ac'] == 1 && auth()->user()->can('view_ac_price_on_pos'))
(@lang('lang_v1.ac')=@format_currency($ac_per_unit))
@endif
@endif
@php
$hide_tax = 'hide';
if(session()->get('business.enable_inline_tax') == 1){
$hide_tax = '';
}
$tax_id = $product->tax_id;
$item_tax = !empty($product->item_tax) ? $product->item_tax : 0;
$unit_price_inc_tax = $product->sell_price_inc_tax;
if($hide_tax == 'hide'){
$tax_id = null;
$unit_price_inc_tax = $product->default_sell_price;
}
if(!empty($so_line) && $action !== 'edit') {
$tax_id = $so_line->tax_id;
$item_tax = $so_line->item_tax;
$unit_price_inc_tax = $so_line->unit_price_inc_tax;
}
$discount_type = !empty($product->line_discount_type) ? $product->line_discount_type : 'fixed';
$discount_amount = !empty($product->line_discount_amount) ? $product->line_discount_amount : 0;
if(!empty($discount)) {
$discount_type = $discount->discount_type;
$discount_amount = $discount->discount_amount;
}
if(!empty($so_line) && $action !== 'edit') {
$discount_type = $so_line->line_discount_type;
$discount_amount = $so_line->line_discount_amount;
}
$sell_line_note = '';
if(!empty($product->sell_line_note)){
$sell_line_note = $product->sell_line_note;
}
$sl_custom_field_1 = '';
if(!empty($product->sl_custom_field_1)){
$sl_custom_field_1 = $product->sl_custom_field_1;
}
$sl_custom_field_2 = '';
if(!empty($product->sl_custom_field_2)){
$sl_custom_field_2 = $product->sl_custom_field_2;
}
$sl_custom_field_3 = '';
if(!empty($product->sl_custom_field_3)){
$sl_custom_field_3 = $product->sl_custom_field_3;
}
$sl_custom_field_4 = '';
if(!empty($product->sl_custom_field_4)){
$sl_custom_field_4 = $product->sl_custom_field_4;
}
@endphp
@if(!empty($discount))
{!! Form::hidden("products[$row_count][discount_id]", $discount->id); !!}
@endif
@php
$warranty_id = !empty($action) && $action == 'edit' && !empty($product->warranties->first()) ? $product->warranties->first()->id : $product->warranty_id;
if($discount_type == 'fixed') {
$discount_amount = $discount_amount * $multiplier;
}
@endphp
@if(empty($is_direct_sell))
@include('sale_pos.partials.row_edit_product_price_modal')
@endif
@if(in_array('modifiers' , $enabled_modules))
@if(!empty($product->product_ms))
@include('restaurant.product_modifier_set.modifier_for_product', array('edit_modifiers' => true, 'row_count' => $loop->index, 'product_ms' => $product->product_ms ) )
@endif
@endif
@php
$max_quantity = $product->qty_available;
$formatted_max_quantity = $product->formatted_qty_available;
if(!empty($action) && $action == 'edit') {
if(!empty($so_line)) {
$qty_available = $so_line->quantity - $so_line->so_quantity_invoiced + $product->quantity_ordered;
$max_quantity = $qty_available;
$formatted_max_quantity = number_format($qty_available, session('business.quantity_precision', 2), session('currency')['decimal_separator'], session('currency')['thousand_separator']);
}
} else {
if(!empty($so_line) && $so_line->qty_available <= $max_quantity) {
$max_quantity = $so_line->qty_available;
$formatted_max_quantity = $so_line->formatted_qty_available;
}
}
$max_qty_rule = $max_quantity;
$max_qty_msg = __('validation.custom-messages.quantity_not_available', ['qty'=> $formatted_max_quantity, 'unit' => $product->unit ]);
@endphp
@if( session()->get('business.enable_lot_number') == 1 || session()->get('business.enable_product_expiry') == 1)
@php
$lot_enabled = session()->get('business.enable_lot_number');
$exp_enabled = session()->get('business.enable_product_expiry');
$lot_no_line_id = '';
if(!empty($product->lot_no_line_id)){
$lot_no_line_id = $product->lot_no_line_id;
}
@endphp
@if(!empty($product->lot_numbers) && empty($is_sales_order))
@endif
@endif
{{-- IMEI dropdown - independent of lot number setting --}}
@if(request()->session()->get('business.enable_mobile_selling_by_imei') == 1)
@if(!empty($product->imeis) && count($product->imeis))
@php
$selected_imei_id = is_object($found_imei) ? $found_imei->id : $found_imei;
@endphp
@endif
@endif
@php
$custom_labels = json_decode(session('business.custom_labels'), true);
$common_settings = session()->get('business.common_settings');
@endphp
@php
$custom_field_1_label = !empty($custom_labels['product_sl']['product_sl_custom_field1']) ? $custom_labels['product_sl']['product_sl_custom_field1'] : '';
$is_custom_field_1_required = !empty($custom_labels['product_sl']['is_product_sl_custom_field_1_required']) && $custom_labels['product_sl']['is_product_sl_custom_field_1_required'] == 1 ? true : false;
$custom_field_2_label = !empty($custom_labels['product_sl']['product_sl_custom_field2']) ? $custom_labels['product_sl']['product_sl_custom_field2'] : '';
$is_custom_field_2_required = !empty($custom_labels['product_sl']['is_product_sl_custom_field_2_required']) && $custom_labels['product_sl']['is_product_sl_custom_field_2_required'] == 1 ? true : false;
$custom_field_3_label = !empty($custom_labels['product_sl']['product_sl_custom_field3']) ? $custom_labels['product_sl']['product_sl_custom_field3'] : '';
$is_custom_field_3_required = !empty($custom_labels['product_sl']['is_product_sl_custom_field_3_required']) && $custom_labels['sell']['is_product_sl_custom_field_3_required'] == 1 ? true : false;
$custom_field_4_label = !empty($custom_labels['product_sl']['product_sl_custom_field4']) ? $custom_labels['product_sl']['product_sl_custom_field4'] : '';
$is_custom_field_4_required = !empty($custom_labels['product_sl']['is_product_sl_custom_field_4_required']) && $custom_labels['product_sl']['is_product_sl_custom_field_4_required'] == 1 ? true : false;
$custom_fields_products_ids = $custom_labels['product_sl']['product_id'] ?? [];
$allow_multiplication = isset($custom_labels['product_sl']['allow_multiplication'])
? $custom_labels['product_sl']['allow_multiplication']
: false;
@endphp
@if(!empty($product))
{{-- @dd($product) --}}
@if($product->enable_sr_no == 1)
@lang('lang_v1.sell_line_description_help')
@endif
@if(empty($custom_fields_products_ids) || in_array($product->variation_id, $custom_fields_products_ids))
@php
$custom_fields_exist = 0;
if(!empty($custom_field_1_label)) {
$custom_fields_exist++;
}
if(!empty($custom_field_2_label)) {
$custom_fields_exist++;
}
if(!empty($custom_field_3_label)) {
$custom_fields_exist++;
}
if(!empty($custom_field_4_label)) {
$custom_fields_exist++;
}
@endphp
@if($custom_fields_exist == 3)
@php $column_class = 'col-md-3'; @endphp
@else
@php $column_class = 'col-md-6'; @endphp
@endif
@if(!empty($custom_field_1_label))
@php
$label_1 = $custom_field_1_label . ':';
if($is_custom_field_1_required) {
$label_1 .= '*';
}
@endphp
{!! Form::label('sl_custom_field_1', $label_1 ) !!}
{!! Form::text('products[' . $row_count . '][sl_custom_field_1]', $sl_custom_field_1, [
'class' => 'form-control input-to-multiply',
'placeholder' => $custom_field_1_label,
'required' => $is_custom_field_1_required
]) !!}
@endif
@if(!empty($custom_field_2_label))
@php
$label_2 = $custom_field_2_label . ':';
if($is_custom_field_2_required) {
$label_2 .= '*';
}
@endphp
{!! Form::label('sl_custom_field_2', $label_2 ) !!}
{!! Form::text('products[' . $row_count . '][sl_custom_field_2]', $sl_custom_field_2, [
'class' => 'form-control input-to-multiply',
'placeholder' => $custom_field_2_label,
'required' => $is_custom_field_2_required
]) !!}
@endif
@if(!empty($custom_field_3_label))
@php
$label_3 = $custom_field_3_label . ':';
if($is_custom_field_3_required) {
$label_3 .= '*';
}
@endphp
{!! Form::label('sl_custom_field_3', $label_3 ) !!}
{!! Form::text('products[' . $row_count . '][sl_custom_field_3]', $sl_custom_field_3, [
'class' => 'form-control input-to-multiply',
'placeholder' => $custom_field_3_label,
'required' => $is_custom_field_3_required
]) !!}
@endif
@if(!empty($custom_field_4_label))
@php
$label_4 = $custom_field_4_label . ':';
if($is_custom_field_4_required) {
$label_4 .= '*';
}
@endphp
{!! Form::label('sl_custom_field_4', $label_4 ) !!}
{!! Form::text('products[' . $row_count . '][sl_custom_field_4]', $sl_custom_field_4, [
'class' => 'form-control input-to-multiply',
'placeholder' => $custom_field_4_label,
'required' => $is_custom_field_4_required
]) !!}
{!! Form::hidden('products[' . $row_count . '][product_quantity]', '', ['class' => 'product_quantity']) !!}
@endif
@endif
@if (isset($pos_settings['enable_product_time']) && $pos_settings['enable_product_time'] == 1)
@endif
@endif
|
{{-- If edit then transaction sell lines will be present --}}
@if(!empty($product->transaction_sell_lines_id))
@endif
@if(empty($product->quantity_ordered))
@php
$product->quantity_ordered = 1;
@endphp
@endif
@php
$allow_decimal = true;
if($product->unit_allow_decimal != 1) {
$allow_decimal = false;
}
@endphp
@foreach($sub_units as $key => $value)
@if(!empty($product->sub_unit_id) && $product->sub_unit_id == $key)
@php
$max_qty_rule = $max_qty_rule / $multiplier;
$unit_name = $value['name'];
$max_qty_msg = __('validation.custom-messages.quantity_not_available', ['qty'=> $max_qty_rule, 'unit' => $unit_name ]);
if(!empty($product->lot_no_line_id)){
$max_qty_msg = __('lang_v1.quantity_error_msg_in_lot', ['qty'=> $max_qty_rule, 'unit' => $unit_name ]);
}
if($value['allow_decimal']) {
$allow_decimal = true;
}
@endphp
@endif
@endforeach
enable_stock && empty($pos_settings['allow_overselling']) && empty($is_sales_order) )
data-rule-max-value="{{$max_qty_rule}}" data-qty_available="{{$product->qty_available}}" data-msg-max-value="{{$max_qty_msg}}"
data-msg_max_default="@lang('validation.custom-messages.quantity_not_available', ['qty'=> $product->formatted_qty_available, 'unit' => $product->unit ])"
@endif
>
@if(count($sub_units) > 0)
@if($business && $business->unit_selection_on_pos_screen)
@else
{{$product->unit}}
@endif
@else
{{$product->unit}}
@endif
@if(!empty($product->second_unit))
@lang('lang_v1.quantity_in_second_unit', ['unit' => $product->second_unit])*:
@endif
{{-- Hidden fields for combo products --}}
@if($product->product_type == 'combo'&& !empty($product->combo_products))
@foreach($product->combo_products as $k => $combo_product)
@if(isset($action) && $action == 'edit')
@php
$combo_product['qty_required'] = $combo_product['quantity'] / $product->quantity_ordered;
$qty_total = $combo_product['quantity'];
@endphp
@else
@php
$qty_total = $combo_product['qty_required'];
@endphp
@endif
@if(isset($action) && $action == 'edit')
@endif
@endforeach
@endif
|
@if(!empty($is_direct_sell))
@if(!empty($pos_settings['inline_service_staff']))
|
@endif
@php
$pos_unit_price = !empty($product->unit_price_before_discount) ? $product->unit_price_before_discount : $product->default_sell_price;
if(!empty($so_line) && $action !== 'edit') {
$pos_unit_price = $so_line->unit_price_before_discount;
}
@endphp
@if(!empty($last_sell_line))
@lang('lang_v1.prev_unit_price'): @format_currency($last_sell_line->unit_price_before_discount)
@endif
|
{!! Form::text("products[$row_count][line_discount_amount]", @num_format($discount_amount), ['class' => 'form-control input_number row_discount_amount']); !!}
{!! Form::select("products[$row_count][line_discount_type]", ['fixed' => __('lang_v1.fixed'), 'percentage' => __('lang_v1.percentage')], $discount_type , ['class' => 'form-control row_discount_type']); !!}
@if(!empty($discount))
{!! __('lang_v1.applied_discount_text', ['discount_name' => $discount->name, 'starts_at' => $discount->formated_starts_at, 'ends_at' => $discount->formated_ends_at]) !!}
@endif
@if(!empty($last_sell_line))
@lang('lang_v1.prev_discount'):
@if($last_sell_line->line_discount_type == 'percentage')
{{@num_format($last_sell_line->line_discount_amount)}}%
@else
@format_currency($last_sell_line->line_discount_amount)
@endif
@endif
|
{!! Form::hidden("products[$row_count][item_tax]", @num_format($item_tax), ['class' => 'item_tax']); !!}
{!! Form::select("products[$row_count][tax_id]", $tax_dropdown['tax_rates'], $tax_id, ['placeholder' => 'Select', 'class' => 'form-control tax_id'], $tax_dropdown['attributes']); !!}
|
@else
@if(!empty($pos_settings['inline_service_staff']))
|
@endif
@endif
@if(!empty($last_sell_lineone) && isset($last_sell_lineone->unit_price_before_discount))
@lang('lang_v1.prev_unit_price'):
@format_currency($last_sell_lineone->unit_price_inc_tax)
@endif
|
@if(!empty($common_settings['enable_product_warranty']) && !empty($is_direct_sell))
{!! Form::select("products[$row_count][warranty_id]", $warranties, $warranty_id, ['placeholder' => __('messages.please_select'), 'class' => 'form-control']); !!}
|
@endif
@if (!isMobile())
@php
$subtotal_type = !empty($pos_settings['is_pos_subtotal_editable']) ? 'text' : 'hidden';
@endphp
@if($weight_scale && $weight_scale != 0 ){{ @num_format((float) $weight_scale * $unit_price_inc_tax) }} @else {{@num_format($product->quantity_ordered*$unit_price_inc_tax )}}@endif
|
@endif
@if (isMobile())
@endif
|