184 lines
8.2 KiB
PHP
184 lines
8.2 KiB
PHP
@extends('layouts.app')
|
|
@section('title', __('purchase.purchases'))
|
|
|
|
@section('content')
|
|
|
|
<!-- Content Header (Page header) -->
|
|
<section class="content-header no-print">
|
|
<h1 class="tw-text-xl md:tw-text-3xl tw-font-bold tw-text-black">@lang('purchase.purchases')
|
|
<small></small>
|
|
</h1>
|
|
<!-- <ol class="breadcrumb">
|
|
<li><a href="#"><i class="fa fa-dashboard"></i> Level</a></li>
|
|
<li class="active">Here</li>
|
|
</ol> -->
|
|
</section>
|
|
|
|
<!-- Main content -->
|
|
<section class="content no-print">
|
|
@component('components.filters', ['title' => __('report.filters')])
|
|
<div class="col-md-3">
|
|
<div class="form-group">
|
|
{!! Form::label('purchase_list_filter_location_id', __('purchase.business_location') . ':') !!}
|
|
{!! Form::select('purchase_list_filter_location_id', $business_locations, null, [
|
|
'class' => 'form-control select2',
|
|
'style' => 'width:100%',
|
|
'placeholder' => __('lang_v1.all'),
|
|
]) !!}
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="form-group">
|
|
{!! Form::label('purchase_list_filter_supplier_id', __('purchase.supplier') . ':') !!}
|
|
{!! Form::select('purchase_list_filter_supplier_id', $suppliers, null, [
|
|
'class' => 'form-control select2',
|
|
'style' => 'width:100%',
|
|
'placeholder' => __('lang_v1.all'),
|
|
]) !!}
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="form-group">
|
|
{!! Form::label('purchase_list_filter_status', __('purchase.purchase_status') . ':') !!}
|
|
{!! Form::select('purchase_list_filter_status', $orderStatuses, null, [
|
|
'class' => 'form-control select2',
|
|
'style' => 'width:100%',
|
|
'placeholder' => __('lang_v1.all'),
|
|
]) !!}
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="form-group">
|
|
{!! Form::label('purchase_list_filter_payment_status', __('purchase.payment_status') . ':') !!}
|
|
{!! Form::select(
|
|
'purchase_list_filter_payment_status',
|
|
[
|
|
'paid' => __('lang_v1.paid'),
|
|
'due' => __('lang_v1.due'),
|
|
'partial' => __('lang_v1.partial'),
|
|
'overdue' => __('lang_v1.overdue'),
|
|
],
|
|
null,
|
|
['class' => 'form-control select2', 'style' => 'width:100%', 'placeholder' => __('lang_v1.all')],
|
|
) !!}
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3">
|
|
<div class="form-group">
|
|
{!! Form::label('purchase_list_filter_date_range', __('report.date_range') . ':') !!}
|
|
{!! Form::text('purchase_list_filter_date_range', null, [
|
|
'placeholder' => __('lang_v1.select_a_date_range'),
|
|
'class' => 'form-control',
|
|
'readonly',
|
|
]) !!}
|
|
</div>
|
|
</div>
|
|
@endcomponent
|
|
|
|
@component('components.widget', ['class' => 'box-primary', 'title' => __('purchase.all_purchases')])
|
|
@can('purchase.create')
|
|
@slot('tool')
|
|
<div class="box-tools">
|
|
{{-- <a class="btn btn-block btn-primary" href="{{action([\App\Http\Controllers\PurchaseController::class, 'create'])}}">
|
|
<i class="fa fa-plus"></i> @lang('messages.add')</a> --}}
|
|
<a class="tw-dw-btn tw-bg-gradient-to-r tw-from-indigo-600 tw-to-blue-500 tw-font-bold tw-text-white tw-border-none tw-rounded-full pull-right"
|
|
href="{{action([\App\Http\Controllers\PurchaseController::class, 'create'])}}">
|
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
|
class="icon icon-tabler icons-tabler-outline icon-tabler-plus">
|
|
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
|
<path d="M12 5l0 14" />
|
|
<path d="M5 12l14 0" />
|
|
</svg> @lang('messages.add')
|
|
</a>
|
|
</div>
|
|
@endslot
|
|
@endcan
|
|
@include('purchase.partials.purchase_table')
|
|
@endcomponent
|
|
|
|
<div class="modal fade product_modal" tabindex="-1" role="dialog" aria-labelledby="gridSystemModalLabel">
|
|
</div>
|
|
|
|
<div class="modal fade payment_modal" tabindex="-1" role="dialog" aria-labelledby="gridSystemModalLabel">
|
|
</div>
|
|
|
|
<div class="modal fade edit_payment_modal" tabindex="-1" role="dialog" aria-labelledby="gridSystemModalLabel">
|
|
</div>
|
|
|
|
@include('purchase.partials.update_purchase_status_modal')
|
|
|
|
</section>
|
|
|
|
<section id="receipt_section" class="print_section"></section>
|
|
|
|
<!-- /.content -->
|
|
@stop
|
|
@section('javascript')
|
|
@php
|
|
$custom_labels = json_decode(session('business.custom_labels'), true);
|
|
@endphp
|
|
<script>
|
|
// Custom field visibility configuration
|
|
var customFieldVisibility = {
|
|
custom_field_1: @json(!empty($custom_labels['purchase']['custom_field_1'])),
|
|
custom_field_2: @json(!empty($custom_labels['purchase']['custom_field_2'])),
|
|
custom_field_3: @json(!empty($custom_labels['purchase']['custom_field_3'])),
|
|
custom_field_4: @json(!empty($custom_labels['purchase']['custom_field_4']))
|
|
};
|
|
</script>
|
|
<script src="{{ asset('js/purchase.js?v=' . $asset_v) }}"></script>
|
|
<script src="{{ asset('js/payment.js?v=' . $asset_v) }}"></script>
|
|
<script>
|
|
//Date range as a button
|
|
$('#purchase_list_filter_date_range').daterangepicker(
|
|
dateRangeSettings,
|
|
function(start, end) {
|
|
$('#purchase_list_filter_date_range').val(start.format(moment_date_format) + ' ~ ' + end.format(
|
|
moment_date_format));
|
|
purchase_table.ajax.reload();
|
|
}
|
|
);
|
|
$('#purchase_list_filter_date_range').on('cancel.daterangepicker', function(ev, picker) {
|
|
$('#purchase_list_filter_date_range').val('');
|
|
purchase_table.ajax.reload();
|
|
});
|
|
|
|
$(document).on('click', '.update_status', function(e) {
|
|
e.preventDefault();
|
|
$('#update_purchase_status_form').find('#status').val($(this).data('status'));
|
|
$('#update_purchase_status_form').find('#purchase_id').val($(this).data('purchase_id'));
|
|
$('#update_purchase_status_modal').modal('show');
|
|
});
|
|
|
|
$(document).on('submit', '#update_purchase_status_form', function(e) {
|
|
e.preventDefault();
|
|
var form = $(this);
|
|
var data = form.serialize();
|
|
|
|
$.ajax({
|
|
method: 'POST',
|
|
url: $(this).attr('action'),
|
|
dataType: 'json',
|
|
data: data,
|
|
beforeSend: function(xhr) {
|
|
__disable_submit_button(form.find('button[type="submit"]'));
|
|
},
|
|
success: function(result) {
|
|
if (result.success == true) {
|
|
$('#update_purchase_status_modal').modal('hide');
|
|
toastr.success(result.msg);
|
|
purchase_table.ajax.reload();
|
|
$('#update_purchase_status_form')
|
|
.find('button[type="submit"]')
|
|
.attr('disabled', false);
|
|
} else {
|
|
toastr.error(result.msg);
|
|
}
|
|
},
|
|
});
|
|
});
|
|
</script>
|
|
|
|
@endsection
|