Skip to content

Commit

Permalink
Multible Tax files for Items
Browse files Browse the repository at this point in the history
  • Loading branch information
cuneytsenturk committed Oct 19, 2018
1 parent 42d5690 commit 9830155
Show file tree
Hide file tree
Showing 13 changed files with 165 additions and 864 deletions.
38 changes: 0 additions & 38 deletions app/Http/Controllers/Common/Items.php
Original file line number Diff line number Diff line change
Expand Up @@ -345,22 +345,6 @@ public function totalItem(TRequest $request)
}
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $tax_row => $multiple_tax) {
if ($multiple_tax['position'] != 'GST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($sub_total / 100) * $multible_tax_object->rate;

$sub_total += $multiple_tax_amount;

$taxes['multiple-tax-' . $tax_row . '-total'] = money($multiple_tax_amount, $currency_code, true)->format();
}
}

$json->items = $items;

$json->sub_total = money($sub_total, $currency_code, true)->format();
Expand All @@ -378,32 +362,10 @@ public function totalItem(TRequest $request)
$sub_total = $sub_total - ($sub_total * ($discount / 100));
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $tax_row => $multiple_tax) {
if ($multiple_tax['position'] != 'PST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($sub_total / 100) * $multible_tax_object->rate;

$tax_total += $multiple_tax_amount;

$taxes['multiple-tax-' . $tax_row . '-total'] = money($multiple_tax_amount, $currency_code, true)->format();
}
}

$grand_total = $sub_total + $tax_total;

$json->grand_total = money($grand_total, $currency_code, true)->format();

$json->multible_taxes = false;

if (!empty($taxes)) {
$json->multible_taxes = $taxes;
}

// Get currency object
$currency = Currency::where('code', $currency_code)->first();

Expand Down
143 changes: 9 additions & 134 deletions app/Http/Controllers/Expenses/Bills.php
Original file line number Diff line number Diff line change
Expand Up @@ -211,10 +211,10 @@ public function store(Request $request)

// Set taxes
if (isset($tax_object)) {
if (isset($taxes['VAT']) && array_key_exists($tax_object->id, $taxes['VAT'])) {
$taxes['VAT'][$tax_object->id]['amount'] += $tax;
if (isset($taxes) && array_key_exists($tax_object->id, $taxes)) {
$taxes[$tax_object->id]['amount'] += $tax;
} else {
$taxes['VAT'][$tax_object->id] = [
$taxes[$tax_object->id] = [
'name' => $tax_object->name,
'amount' => $tax
];
Expand All @@ -229,30 +229,6 @@ public function store(Request $request)
}
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $multiple_tax) {
if ($multiple_tax['position'] != 'GST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($sub_total / 100) * $multible_tax_object->rate;

if (isset($taxes['GST']) && array_key_exists($multible_tax_object->id, $taxes['GST'])) {
$taxes['GST'][$multible_tax_object->id]['amount'] += $multiple_tax_amount;
} else {
$taxes['GST'][$multible_tax_object->id] = [
'id' => $multible_tax_object->id,
'name' => $multible_tax_object->name,
'amount' => $multiple_tax_amount
];
}

$sub_total += $multiple_tax_amount;
}
}

$s_total = $sub_total;

// Apply discount to total
Expand All @@ -262,30 +238,6 @@ public function store(Request $request)
$s_total = $s_total - $s_discount;
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $multiple_tax) {
if ($multiple_tax['position'] != 'PST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($s_total / 100) * $multible_tax_object->rate;

if (isset($taxes['PST']) && array_key_exists($multible_tax_object->id, $taxes['PST'])) {
$taxes['PST'][$multible_tax_object->id]['amount'] += $multiple_tax_amount;
} else {
$taxes['PST'][$multible_tax_object->id] = [
'id' => $multible_tax_object->id,
'name' => $multible_tax_object->name,
'amount' => $multiple_tax_amount
];
}

$tax_total += $multiple_tax_amount;
}
}

$amount = $s_total + $tax_total;

$request['amount'] = money($amount, $request['currency_code'])->getAmount();
Expand Down Expand Up @@ -422,6 +374,7 @@ public function edit(Bill $bill)
public function update(Bill $bill, Request $request)
{
$taxes = [];

$tax_total = 0;
$sub_total = 0;
$discount_total = 0;
Expand Down Expand Up @@ -470,10 +423,10 @@ public function update(Bill $bill, Request $request)
$bill_item['total'] = (double) $item['price'] * (double) $item['quantity'];

if (isset($tax_object)) {
if (isset($taxes['VAT']) && array_key_exists($tax_object->id, $taxes['VAT'])) {
$taxes['VAT'][$tax_object->id]['amount'] += $tax;
if (isset($taxes) && array_key_exists($tax_object->id, $taxes)) {
$taxes[$tax_object->id]['amount'] += $tax;
} else {
$taxes['VAT'][$tax_object->id] = [
$taxes[$tax_object->id] = [
'name' => $tax_object->name,
'amount' => $tax
];
Expand All @@ -487,30 +440,6 @@ public function update(Bill $bill, Request $request)
}
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $multiple_tax) {
if ($multiple_tax['position'] != 'GST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($sub_total / 100) * $multible_tax_object->rate;

if (isset($taxes['GST']) && array_key_exists($multible_tax_object->id, $taxes['GST'])) {
$taxes['GST'][$multible_tax_object->id]['amount'] += $multiple_tax_amount;
} else {
$taxes['GST'][$multible_tax_object->id] = [
'id' => $multible_tax_object->id,
'name' => $multible_tax_object->name,
'amount' => $multiple_tax_amount
];
}

$sub_total += $multiple_tax_amount;
}
}

$s_total = $sub_total;

// Apply discount to total
Expand All @@ -520,30 +449,6 @@ public function update(Bill $bill, Request $request)
$s_total = $s_total - $s_discount;
}

if ($request['multiple_tax']) {
foreach ($request['multiple_tax'] as $multiple_tax) {
if ($multiple_tax['position'] != 'PST') {
continue;
}

$multible_tax_object = Tax::find($multiple_tax['tax_id']);

$multiple_tax_amount = ($s_total / 100) * $multible_tax_object->rate;

if (isset($taxes['PST']) && array_key_exists($multible_tax_object->id, $taxes['PST'])) {
$taxes['PST'][$multible_tax_object->id]['amount'] += $multiple_tax_amount;
} else {
$taxes['PST'][$multible_tax_object->id] = [
'id' => $multible_tax_object->id,
'name' => $multible_tax_object->name,
'amount' => $multiple_tax_amount
];
}

$tax_total += $multiple_tax_amount;
}
}

$amount = $s_total + $tax_total;

$request['amount'] = money($amount, $request['currency_code'])->getAmount();
Expand Down Expand Up @@ -892,21 +797,6 @@ protected function addTotals($bill, $request, $taxes, $sub_total, $discount_tota
{
$sort_order = 1;

if (isset($taxes['GST'])) {
foreach ($taxes['GST'] as $tax) {
InvoiceTotal::create([
'company_id' => $request['company_id'],
'invoice_id' => $invoice->id,
'code' => 'gst-' . $tax['id'],
'name' => $tax['name'],
'amount' => $tax['amount'],
'sort_order' => $sort_order,
]);

$sort_order++;
}
}

// Added bill sub total
BillTotal::create([
'company_id' => $request['company_id'],
Expand Down Expand Up @@ -936,24 +826,9 @@ protected function addTotals($bill, $request, $taxes, $sub_total, $discount_tota
$sort_order++;
}

if (isset($taxes['PST'])) {
foreach ($taxes['PST'] as $tax) {
InvoiceTotal::create([
'company_id' => $request['company_id'],
'invoice_id' => $invoice->id,
'code' => 'pst-' . $tax['id'],
'name' => $tax['name'],
'amount' => $tax['amount'],
'sort_order' => $sort_order,
]);

$sort_order++;
}
}

// Added bill taxes
if (isset($taxes['VAT'])) {
foreach ($taxes['VAT'] as $tax) {
if (isset($taxes)) {
foreach ($taxes as $tax) {
BillTotal::create([
'company_id' => $request['company_id'],
'bill_id' => $bill->id,
Expand Down

0 comments on commit 9830155

Please sign in to comment.