diff --git a/app/Http/Controllers/Expenses/Bills.php b/app/Http/Controllers/Expenses/Bills.php
index c55c70998..9eda13e4e 100644
--- a/app/Http/Controllers/Expenses/Bills.php
+++ b/app/Http/Controllers/Expenses/Bills.php
@@ -755,7 +755,7 @@ class Bills extends Controller
// it should be integer for amount mask
$currency->precision = (int) $currency->precision;
- $html = view('expenses.bills.item', compact('item_row', 'taxes'))->render();
+ $html = view('expenses.bills.item', compact('item_row', 'taxes', 'currency'))->render();
return response()->json([
'success' => true,
diff --git a/app/Http/Controllers/Incomes/Invoices.php b/app/Http/Controllers/Incomes/Invoices.php
index d8d1d57c3..fe9ab749c 100644
--- a/app/Http/Controllers/Incomes/Invoices.php
+++ b/app/Http/Controllers/Incomes/Invoices.php
@@ -892,7 +892,7 @@ class Invoices extends Controller
// it should be integer for amount mask
$currency->precision = (int) $currency->precision;
- $html = view('incomes.invoices.item', compact('item_row', 'taxes'))->render();
+ $html = view('incomes.invoices.item', compact('item_row', 'taxes', 'currency'))->render();
return response()->json([
'success' => true,
diff --git a/app/Http/Middleware/Money.php b/app/Http/Middleware/Money.php
index 4694b71e2..5766c6934 100644
--- a/app/Http/Middleware/Money.php
+++ b/app/Http/Middleware/Money.php
@@ -38,7 +38,11 @@ class Money
if (isset($bill_number) || isset($invoice_number) || !empty($items)) {
if (!empty($items)) {
foreach ($items as $key => $item) {
- $items[$key]['price'] = money($item['price'], $currency_code)->getAmount();
+ if (isset($item['currency']) && $item['currency'] != $currency_code) {
+ $items[$key]['price'] = money($item['price'], $item['currency'])->getAmount();
+ } else {
+ $items[$key]['price'] = money($item['price'], $currency_code)->getAmount();
+ }
}
$request->request->set('item', $items);
diff --git a/resources/views/expenses/bills/item.blade.php b/resources/views/expenses/bills/item.blade.php
index 1ee34c082..403585fcf 100644
--- a/resources/views/expenses/bills/item.blade.php
+++ b/resources/views/expenses/bills/item.blade.php
@@ -25,6 +25,7 @@
@stack('price_input_start')
+
@stack('price_input_end')
|
@stack('price_td_end')
diff --git a/resources/views/incomes/invoices/create.blade.php b/resources/views/incomes/invoices/create.blade.php
index e0b9d9e28..7391668cb 100644
--- a/resources/views/incomes/invoices/create.blade.php
+++ b/resources/views/incomes/invoices/create.blade.php
@@ -161,11 +161,13 @@
var item_row = '{{ $item_row }}';
$(document).on('click', '#button-add-item', function (e) {
+ var currency_code = $('#currency_code').val();
+
$.ajax({
url: '{{ url("incomes/invoices/addItem") }}',
type: 'GET',
dataType: 'JSON',
- data: {item_row: item_row, currency_code : $('#currency_code').val()},
+ data: {item_row: item_row, currency_code : currency_code},
success: function(json) {
if (json['success']) {
$('#items tbody #addItem').before(json['html']);
@@ -371,6 +373,11 @@
$('#currency_rate').val(data.currency_rate);
$('.input-price').each(function(){
+ input_price_id = $(this).attr('id');
+ input_currency_id = input_price_id.replace('price', 'currency');
+
+ $('#' + input_currency_id).val(data.currency_code);
+
amount = $(this).maskMoney('unmasked')[0];
$(this).maskMoney({
diff --git a/resources/views/incomes/invoices/edit.blade.php b/resources/views/incomes/invoices/edit.blade.php
index 738e9eeb4..d61f1d040 100644
--- a/resources/views/incomes/invoices/edit.blade.php
+++ b/resources/views/incomes/invoices/edit.blade.php
@@ -142,11 +142,13 @@
var item_row = '{{ $item_row }}';
$(document).on('click', '#button-add-item', function (e) {
+ var currency_code = $('#currency_code').val();
+
$.ajax({
url: '{{ url("incomes/invoices/addItem") }}',
type: 'GET',
dataType: 'JSON',
- data: {item_row: item_row},
+ data: {item_row: item_row, currency_code : currency_code},
success: function(json) {
if (json['success']) {
$('#items tbody #addItem').before(json['html']);
@@ -403,12 +405,11 @@
});
function totalItem() {
-
$.ajax({
url: '{{ url("common/items/totalItem") }}',
type: 'POST',
dataType: 'JSON',
- data: $('#currency_code, #discount input[type=\'number\'], #items input[type=\'text\'],#items input[type=\'number\'],#items input[type=\'hidden\'], #items textarea, #items select'),
+ data: $('#currency_code, #discount input[type=\'number\'], #items input[type=\'text\'], #items input[type=\'number\'], #items input[type=\'hidden\'], #items textarea, #items select'),
headers: { 'X-CSRF-TOKEN': '{{ csrf_token() }}' },
success: function(data) {
if (data) {
@@ -424,6 +425,11 @@
$('#grand-total').html(data.grand_total);
$('.input-price').each(function(){
+ input_price_id = $(this).attr('id');
+ input_currency_id = input_price_id.replace('price', 'currency');
+
+ $('#' + input_currency_id).val(data.currency_code);
+
amount = $(this).maskMoney('unmasked')[0];
$(this).maskMoney({
diff --git a/resources/views/incomes/invoices/item.blade.php b/resources/views/incomes/invoices/item.blade.php
index 9efe56e6a..c178be22e 100644
--- a/resources/views/incomes/invoices/item.blade.php
+++ b/resources/views/incomes/invoices/item.blade.php
@@ -25,6 +25,7 @@
@stack('price_input_start')
+
@stack('price_input_end')
|
@stack('price_td_end')