decimal quantity

This commit is contained in:
denisdulici 2018-04-30 11:49:47 +03:00
parent 1b47c33b54
commit 1c8bcd8cb2
15 changed files with 84 additions and 45 deletions

View File

@ -178,7 +178,7 @@ class Bills extends Controller
$tax_id = $item['tax_id'];
$tax = (($item['price'] * $item['quantity']) / 100) * $tax_object->rate;
$tax = (((double) $item['price'] * (double) $item['quantity']) / 100) * $tax_object->rate;
// Apply discount to tax
if ($discount) {
@ -189,11 +189,11 @@ class Bills extends Controller
$bill_item['item_id'] = $item['item_id'];
$bill_item['name'] = str_limit($item['name'], 180, '');
$bill_item['sku'] = $item_sku;
$bill_item['quantity'] = $item['quantity'];
$bill_item['quantity'] = (double) $item['quantity'];
$bill_item['price'] = (double) $item['price'];
$bill_item['tax'] = $tax;
$bill_item['tax_id'] = $tax_id;
$bill_item['total'] = (double) $item['price'] * $item['quantity'];
$bill_item['total'] = (double) $item['price'] * (double) $item['quantity'];
BillItem::create($bill_item);
@ -385,7 +385,7 @@ class Bills extends Controller
$tax_id = $item['tax_id'];
$tax = (($item['price'] * $item['quantity']) / 100) * $tax_object->rate;
$tax = (((double) $item['price'] * (double) $item['quantity']) / 100) * $tax_object->rate;
// Apply discount to tax
if ($discount) {
@ -396,11 +396,11 @@ class Bills extends Controller
$bill_item['item_id'] = $item['item_id'];
$bill_item['name'] = str_limit($item['name'], 180, '');
$bill_item['sku'] = $item_sku;
$bill_item['quantity'] = $item['quantity'];
$bill_item['quantity'] = (double) $item['quantity'];
$bill_item['price'] = (double) $item['price'];
$bill_item['tax'] = $tax;
$bill_item['tax_id'] = $tax_id;
$bill_item['total'] = (double) $item['price'] * $item['quantity'];
$bill_item['total'] = (double) $item['price'] * (double) $item['quantity'];
if (isset($tax_object)) {
if (array_key_exists($tax_object->id, $taxes)) {

View File

@ -193,7 +193,7 @@ class Invoices extends Controller
$tax_id = $item['tax_id'];
$tax = (($item['price'] * $item['quantity']) / 100) * $tax_object->rate;
$tax = (((double) $item['price'] * (double) $item['quantity']) / 100) * $tax_object->rate;
// Apply discount to tax
if ($discount) {
@ -204,11 +204,11 @@ class Invoices extends Controller
$invoice_item['item_id'] = $item['item_id'];
$invoice_item['name'] = str_limit($item['name'], 180, '');
$invoice_item['sku'] = $item_sku;
$invoice_item['quantity'] = $item['quantity'];
$invoice_item['quantity'] = (double) $item['quantity'];
$invoice_item['price'] = (double) $item['price'];
$invoice_item['tax'] = $tax;
$invoice_item['tax_id'] = $tax_id;
$invoice_item['total'] = (double) $item['price'] * $item['quantity'];
$invoice_item['total'] = (double) $item['price'] * (double) $item['quantity'];
InvoiceItem::create($invoice_item);
@ -406,7 +406,7 @@ class Invoices extends Controller
$tax_id = $item['tax_id'];
$tax = (($item['price'] * $item['quantity']) / 100) * $tax_object->rate;
$tax = (((double) $item['price'] * (double) $item['quantity']) / 100) * $tax_object->rate;
// Apply discount to tax
if ($discount) {
@ -417,11 +417,11 @@ class Invoices extends Controller
$invoice_item['item_id'] = $item['item_id'];
$invoice_item['name'] = str_limit($item['name'], 180, '');
$invoice_item['sku'] = $item_sku;
$invoice_item['quantity'] = $item['quantity'];
$invoice_item['quantity'] = (double) $item['quantity'];
$invoice_item['price'] = (double) $item['price'];
$invoice_item['tax'] = $tax;
$invoice_item['tax_id'] = $tax_id;
$invoice_item['total'] = (double) $item['price'] * $item['quantity'];
$invoice_item['total'] = (double) $item['price'] * (double) $item['quantity'];
if (isset($tax_object)) {
if (array_key_exists($tax_object->id, $taxes)) {

View File

@ -262,7 +262,7 @@ class Items extends Controller
if ($input_items) {
foreach ($input_items as $key => $item) {
$price = (double) $item['price'];
$quantity = (int) $item['quantity'];
$quantity = (double) $item['quantity'];
$item_tax_total= 0;
$item_sub_total = ($price * $quantity);

View File

@ -18,6 +18,7 @@
"bkwld/cloner": "3.2.*",
"consoletvs/charts": "4.6.*",
"dingo/api": "1.0.0-beta8",
"doctrine/dbal": "2.5.*",
"fideloper/proxy": "3.3.*",
"guzzlehttp/guzzle": "6.3.*",
"intervention/image": "2.3.*",

View File

@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Migrations\Migration;
class ChangeQuantityColumnInvoiceBillItems extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('invoice_items', function ($table) {
$table->double('quantity', 7, 2)->change();
});
Schema::table('bill_items', function ($table) {
$table->double('quantity', 7, 2)->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('invoice_items', function ($table) {
$table->integer('quantity')->change();
});
Schema::table('bill_items', function ($table) {
$table->integer('quantity')->change();
});
}
}

View File

@ -31,7 +31,7 @@
{{ Form::textGroup('order_number', trans('bills.order_number'), 'shopping-cart',[]) }}
<div class="form-group col-md-12">
{!! Form::label('items', trans_choice('general.items', 1), ['class' => 'control-label']) !!}
{!! Form::label('items', trans_choice('general.items', 2), ['class' => 'control-label']) !!}
<div class="table-responsive">
<table class="table table-bordered" id="items">
<thead>
@ -55,10 +55,10 @@
<input name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, setting('general.default_tax'), ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control tax-select2', 'placeholder' => trans('general.form.select.field', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -153,10 +153,10 @@
html += ' <input name="item[' + item_row + '][item_id]" type="hidden" id="item-id-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="number" id="item-quantity-' + item_row + '">';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="text" id="item-quantity-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="number" id="item-price-' + item_row + '">';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="text" id="item-price-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <select class="form-control select2" name="item[' + item_row + '][tax_id]" id="item-tax-' + item_row + '">';

View File

@ -21,7 +21,7 @@
{{ Form::textGroup('order_number', trans('bills.order_number'), 'shopping-cart',[]) }}
<div class="form-group col-md-12">
{!! Form::label('items', trans_choice('general.items', 1), ['class' => 'control-label']) !!}
{!! Form::label('items', trans_choice('general.items', 2), ['class' => 'control-label']) !!}
<div class="table-responsive">
<table class="table table-bordered" id="items">
<thead>
@ -46,10 +46,10 @@
<input value="{{ $item->item_id }}" name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input value="{{ $item->quantity }}" class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input value="{{ $item->quantity }}" class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input value="{{ $item->price }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input value="{{ $item->price }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, $item->tax_id, ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control select2', 'placeholder' => trans('general.form.enter', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -70,10 +70,10 @@
<input name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, null, ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control tax-select2', 'placeholder' => trans('general.form.select.field', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -159,10 +159,10 @@
html += ' <input name="item[' + item_row + '][item_id]" type="hidden" id="item-id-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="number" id="item-quantity-' + item_row + '">';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="text" id="item-quantity-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="number" id="item-price-' + item_row + '">';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="text" id="item-price-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <select class="form-control select2" name="item[' + item_row + '][tax_id]" id="item-tax-' + item_row + '">';

View File

@ -10,7 +10,7 @@
<div class="box-body">
{{ Form::textGroup('paid_at', trans('general.date'), 'calendar',['id' => 'paid_at', 'class' => 'form-control', 'required' => 'required', 'data-inputmask' => '\'alias\': \'yyyy-mm-dd\'', 'data-mask' => ''], Date::now()->toDateString()) }}
{{ Form::numberGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
{{ Form::textGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
<div class="form-group col-md-6 form-small">
{!! Form::label('account_id', trans_choice('general.accounts', 1), ['class' => 'control-label']) !!}

View File

@ -27,7 +27,7 @@
<div class="box-body">
{{ Form::textGroup('paid_at', trans('general.date'), 'calendar', ['id' => 'paid_at', 'class' => 'form-control', 'required' => 'required', 'data-inputmask' => '\'alias\': \'yyyy-mm-dd\'', 'data-mask' => ''], Date::parse($payment->paid_at)->toDateString()) }}
{{ Form::numberGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
{{ Form::textGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
<div class="form-group col-md-6 form-small">
{!! Form::label('account_id', trans_choice('general.accounts', 1), ['class' => 'control-label']) !!}

View File

@ -31,7 +31,7 @@
{{ Form::textGroup('order_number', trans('invoices.order_number'), 'shopping-cart', []) }}
<div class="form-group col-md-12">
{!! Form::label('items', 'Items', ['class' => 'control-label']) !!}
{!! Form::label('items', trans_choice('general.items', 2), ['class' => 'control-label']) !!}
<div class="table-responsive">
<table class="table table-bordered" id="items">
<thead>
@ -55,10 +55,10 @@
<input name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, setting('general.default_tax'), ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control tax-select2', 'placeholder' => trans('general.form.select.field', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -154,10 +154,10 @@
html += ' <input name="item[' + item_row + '][item_id]" type="hidden" id="item-id-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="number" id="item-quantity-' + item_row + '">';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="text" id="item-quantity-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="number" id="item-price-' + item_row + '">';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="text" id="item-price-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <select class="form-control select2" name="item[' + item_row + '][tax_id]" id="item-tax-' + item_row + '">';

View File

@ -20,7 +20,7 @@
{{ Form::textGroup('order_number', trans('invoices.order_number'), 'shopping-cart',[]) }}
<div class="form-group col-md-12">
{!! Form::label('items', 'Items', ['class' => 'control-label']) !!}
{!! Form::label('items', trans_choice('general.items', 2), ['class' => 'control-label']) !!}
<div class="table-responsive">
<table class="table table-bordered" id="items">
<thead>
@ -45,10 +45,10 @@
<input value="{{ $item->item_id }}" name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input value="{{ $item->quantity }}" class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input value="{{ $item->quantity }}" class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input value="{{ $item->price }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input value="{{ $item->price }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, $item->tax_id, ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control tax-select2', 'placeholder' => trans('general.form.enter', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -69,10 +69,10 @@
<input name="item[{{ $item_row }}][item_id]" type="hidden" id="item-id-{{ $item_row }}">
</td>
<td>
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="number" id="item-quantity-{{ $item_row }}">
<input class="form-control text-center" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="number" id="item-price-{{ $item_row }}">
<input class="form-control text-right" required="required" name="item[{{ $item_row }}][price]" type="text" id="item-price-{{ $item_row }}">
</td>
<td>
{!! Form::select('item[' . $item_row . '][tax_id]', $taxes, null, ['id'=> 'item-tax-'. $item_row, 'class' => 'form-control select2', 'placeholder' => trans('general.form.select.field', ['field' => trans_choice('general.taxes', 1)])]) !!}
@ -158,10 +158,10 @@
html += ' <input name="item[' + item_row + '][item_id]" type="hidden" id="item-id-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="number" id="item-quantity-' + item_row + '">';
html += ' <input class="form-control text-center" required="required" name="item[' + item_row + '][quantity]" type="text" id="item-quantity-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="number" id="item-price-' + item_row + '">';
html += ' <input class="form-control text-right" required="required" name="item[' + item_row + '][price]" type="text" id="item-price-' + item_row + '">';
html += ' </td>';
html += ' <td>';
html += ' <select class="form-control select2" name="item[' + item_row + '][tax_id]" id="item-tax-' + item_row + '">';

View File

@ -10,7 +10,7 @@
<div class="box-body">
{{ Form::textGroup('paid_at', trans('general.date'), 'calendar',['id' => 'paid_at', 'class' => 'form-control', 'required' => 'required', 'data-inputmask' => '\'alias\': \'yyyy-mm-dd\'', 'data-mask' => ''], Date::now()->toDateString()) }}
{{ Form::numberGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
{{ Form::textGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
<div class="form-group col-md-6 form-small">
{!! Form::label('account_id', trans_choice('general.accounts', 1), ['class' => 'control-label']) !!}

View File

@ -27,7 +27,7 @@
<div class="box-body">
{{ Form::textGroup('paid_at', trans('general.date'), 'calendar', ['id' => 'paid_at', 'class' => 'form-control', 'required' => 'required', 'data-inputmask' => '\'alias\': \'yyyy-mm-dd\'', 'data-mask' => ''], Date::parse($revenue->paid_at)->toDateString()) }}
{{ Form::numberGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
{{ Form::textGroup('amount', trans('general.amount'), 'money', ['required' => 'required', 'autofocus' => 'autofocus']) }}
<div class="form-group col-md-6 form-small">
{!! Form::label('account_id', trans_choice('general.accounts', 1), ['class' => 'control-label']) !!}

View File

@ -14,9 +14,9 @@
{{ Form::textareaGroup('description', trans('general.description')) }}
{{ Form::numberGroup('sale_price', trans('items.sales_price'), 'money') }}
{{ Form::textGroup('sale_price', trans('items.sales_price'), 'money') }}
{{ Form::numberGroup('purchase_price', trans('items.purchase_price'), 'money') }}
{{ Form::textGroup('purchase_price', trans('items.purchase_price'), 'money') }}
{{ Form::textGroup('quantity', trans_choice('items.quantities', 1), 'cubes', ['required' => 'required'], '1') }}

View File

@ -19,9 +19,9 @@
{{ Form::textareaGroup('description', trans('general.description')) }}
{{ Form::numberGroup('sale_price', trans('items.sales_price'), 'money') }}
{{ Form::textGroup('sale_price', trans('items.sales_price'), 'money') }}
{{ Form::numberGroup('purchase_price', trans('items.purchase_price'), 'money') }}
{{ Form::textGroup('purchase_price', trans('items.purchase_price'), 'money') }}
{{ Form::textGroup('quantity', trans_choice('items.quantities', 1), 'cubes') }}