Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
eaf703a1c3
@ -52,7 +52,9 @@ class BillReminder extends Command
|
||||
$days = explode(',', $company->schedule_bill_days);
|
||||
|
||||
foreach ($days as $day) {
|
||||
$this->remind(trim($day), $company);
|
||||
$day = (int) trim($day);
|
||||
|
||||
$this->remind($day, $company);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -52,7 +52,9 @@ class InvoiceReminder extends Command
|
||||
$days = explode(',', $company->schedule_invoice_days);
|
||||
|
||||
foreach ($days as $day) {
|
||||
$this->remind(trim($day), $company);
|
||||
$day = (int) trim($day);
|
||||
|
||||
$this->remind($day, $company);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -102,14 +102,10 @@ class Transfers extends Controller
|
||||
|
||||
$request['account_id'] = $request['from_account_id'];
|
||||
$request['paid_at'] = $request['transferred_at'];
|
||||
// amount
|
||||
$request['currency_code'] = $payment_currency_code;
|
||||
$request['currency_rate'] = $currencies[$payment_currency_code];
|
||||
$request['vendor_id'] = '0';
|
||||
// description
|
||||
$request['category_id'] = Category::enabled()->type('other')->pluck('id')->first(); // Transfer Category ID
|
||||
// payment_method
|
||||
// reference
|
||||
$request['category_id'] = Category::transfer(); // Transfer Category ID
|
||||
$request['attachment'] = '';
|
||||
|
||||
$payment = Payment::create($request->all());
|
||||
@ -195,14 +191,10 @@ class Transfers extends Controller
|
||||
|
||||
$request['account_id'] = $request['from_account_id'];
|
||||
$request['paid_at'] = $request['transferred_at'];
|
||||
// amount
|
||||
$request['currency_code'] = $payment_currency_code;
|
||||
$request['currency_rate'] = $currencies[$payment_currency_code];
|
||||
$request['vendor_id'] = '0';
|
||||
// description
|
||||
$request['category_id'] = Category::enabled()->type('other')->pluck('id')->first(); // Transfer Category ID
|
||||
// payment_method
|
||||
// reference
|
||||
$request['category_id'] = Category::transfer(); // Transfer Category ID
|
||||
$request['attachment'] = '';
|
||||
|
||||
$payment->update($request->all());
|
||||
|
@ -35,7 +35,9 @@ class Payments extends Controller
|
||||
$accounts = collect(Account::enabled()->pluck('name', 'id'))
|
||||
->prepend(trans('general.all_type', ['type' => trans_choice('general.accounts', 2)]), '');
|
||||
|
||||
return view('expenses.payments.index', compact('payments', 'vendors', 'categories', 'accounts'));
|
||||
$transfer_cat_id = Category::transfer();
|
||||
|
||||
return view('expenses.payments.index', compact('payments', 'vendors', 'categories', 'accounts', 'transfer_cat_id'));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -197,6 +199,11 @@ class Payments extends Controller
|
||||
*/
|
||||
public function destroy(Payment $payment)
|
||||
{
|
||||
// Can't delete transfer payment
|
||||
if ($payment->category->id == Category::transfer()) {
|
||||
return redirect('expenses/payments');
|
||||
}
|
||||
|
||||
$payment->delete();
|
||||
|
||||
$message = trans('messages.success.deleted', ['type' => trans_choice('general.payments', 1)]);
|
||||
|
@ -581,7 +581,7 @@ class Invoices extends Controller
|
||||
$request['company_id'] = $invoice->company_id;
|
||||
$request['invoice_id'] = $invoice->id;
|
||||
$request['account_id'] = setting('general.default_account');
|
||||
$request['payment_method'] = setting('general.default_payment_method');
|
||||
$request['payment_method'] = setting('general.default_payment_method', 'offlinepayment.cash.1');
|
||||
$request['currency_code'] = $invoice->currency_code;
|
||||
$request['amount'] = $amount;
|
||||
$request['paid_at'] = Date::now();
|
||||
|
@ -37,7 +37,9 @@ class Revenues extends Controller
|
||||
$accounts = collect(Account::enabled()->pluck('name', 'id'))
|
||||
->prepend(trans('general.all_type', ['type' => trans_choice('general.accounts', 2)]), '');
|
||||
|
||||
return view('incomes.revenues.index', compact('revenues', 'customers', 'categories', 'accounts'));
|
||||
$transfer_cat_id = Category::transfer();
|
||||
|
||||
return view('incomes.revenues.index', compact('revenues', 'customers', 'categories', 'accounts', 'transfer_cat_id'));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -199,6 +201,11 @@ class Revenues extends Controller
|
||||
*/
|
||||
public function destroy(Revenue $revenue)
|
||||
{
|
||||
// Can't delete transfer revenue
|
||||
if ($revenue->category->id == Category::transfer()) {
|
||||
return redirect('incomes/revenues');
|
||||
}
|
||||
|
||||
$revenue->delete();
|
||||
|
||||
$message = trans('messages.success.deleted', ['type' => trans_choice('general.revenues', 1)]);
|
||||
|
@ -247,13 +247,16 @@ class Items extends Controller
|
||||
|
||||
if ($input_items) {
|
||||
foreach ($input_items as $key => $item) {
|
||||
$price = (double) $item['price'];
|
||||
$quantity = (int) $item['quantity'];
|
||||
|
||||
$item_tax_total= 0;
|
||||
$item_sub_total = ($item['price'] * $item['quantity']);
|
||||
$item_sub_total = ($price * $quantity);
|
||||
|
||||
if (!empty($item['tax_id'])) {
|
||||
$tax = Tax::find($item['tax_id']);
|
||||
|
||||
$item_tax_total = (($item['price'] * $item['quantity']) / 100) * $tax->rate;
|
||||
$item_tax_total = (($price * $quantity) / 100) * $tax->rate;
|
||||
}
|
||||
|
||||
$sub_total += $item_sub_total;
|
||||
|
@ -18,10 +18,12 @@ class Categories extends Controller
|
||||
{
|
||||
$categories = Category::collect();
|
||||
|
||||
$transfer_id = Category::transfer();
|
||||
|
||||
$types = collect(['expense' => 'Expense', 'income' => 'Income', 'item' => 'Item', 'other' => 'Other'])
|
||||
->prepend(trans('general.all_type', ['type' => trans_choice('general.types', 2)]), '');
|
||||
|
||||
return view('settings.categories.index', compact('categories', 'types'));
|
||||
return view('settings.categories.index', compact('categories', 'types', 'transfer_id'));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -112,6 +114,11 @@ class Categories extends Controller
|
||||
'payments' => 'payments',
|
||||
]);
|
||||
|
||||
// Can't delete transfer category
|
||||
if ($category->id == Category::transfer()) {
|
||||
return redirect('settings/categories');
|
||||
}
|
||||
|
||||
if (empty($relationships)) {
|
||||
$category->delete();
|
||||
|
||||
|
@ -48,4 +48,15 @@ class Category extends Model
|
||||
{
|
||||
return $query->where('type', $type);
|
||||
}
|
||||
|
||||
/**
|
||||
* Scope transfer category.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\Builder $query
|
||||
* @return \Illuminate\Database\Eloquent\Builder
|
||||
*/
|
||||
public function scopeTransfer($query)
|
||||
{
|
||||
return $query->where('type', 'other')->pluck('id')->first();
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ class ImportFile extends ExcelFile
|
||||
$folder = session('company_id') . '/imports';
|
||||
|
||||
// Upload file
|
||||
$path = Storage::path($request->import->store($folder));
|
||||
$path = Storage::path($request->file('import')->store($folder));
|
||||
|
||||
return $path;
|
||||
}
|
||||
|
@ -6,7 +6,6 @@ use Artisan;
|
||||
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Routing\Controller;
|
||||
|
||||
use Modules\OfflinePayment\Http\Requests\Setting as Request;
|
||||
use Modules\OfflinePayment\Http\Requests\SettingGet as GRequest;
|
||||
use Modules\OfflinePayment\Http\Requests\SettingDelete as DRequest;
|
||||
@ -15,6 +14,7 @@ class Settings extends Controller
|
||||
{
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function edit()
|
||||
@ -26,28 +26,32 @@ class Settings extends Controller
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function update(Request $request)
|
||||
{
|
||||
$offlinepayment = json_decode(setting('offlinepayment.methods'), true);
|
||||
$methods = json_decode(setting('offlinepayment.methods'), true);
|
||||
|
||||
if (isset($request['method'])) {
|
||||
foreach ($offlinepayment as $key => $method) {
|
||||
if ($method['code'] == $request['method']) {
|
||||
$method = explode('.', $request['method']);
|
||||
|
||||
$offlinepayment[$key]['code'] = 'offlinepayment.' . $request['code'] . '.' . $method[2];
|
||||
$offlinepayment[$key]['name'] = $request['name'];
|
||||
$offlinepayment[$key]['customer'] = $request['customer'];
|
||||
$offlinepayment[$key]['order'] = $request['order'];
|
||||
$offlinepayment[$key]['description'] = $request['description'];
|
||||
foreach ($methods as $key => $method) {
|
||||
if ($method['code'] != $request['method']) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$method = explode('.', $request['method']);
|
||||
|
||||
$methods[$key]['code'] = 'offlinepayment.' . $request['code'] . '.' . $method[2];
|
||||
$methods[$key]['name'] = $request['name'];
|
||||
$methods[$key]['customer'] = $request['customer'];
|
||||
$methods[$key]['order'] = $request['order'];
|
||||
$methods[$key]['description'] = $request['description'];
|
||||
}
|
||||
} else {
|
||||
$offlinepayment[] = array(
|
||||
'code' => 'offlinepayment.' . $request['code'] . '.' . (count($offlinepayment) + 1),
|
||||
$methods[] = array(
|
||||
'code' => 'offlinepayment.' . $request['code'] . '.' . (count($methods) + 1),
|
||||
'name' => $request['name'],
|
||||
'customer' => $request['customer'],
|
||||
'order' => $request['order'],
|
||||
@ -56,7 +60,7 @@ class Settings extends Controller
|
||||
}
|
||||
|
||||
// Set Api Token
|
||||
setting()->set('offlinepayment.methods', json_encode($offlinepayment));
|
||||
setting()->set('offlinepayment.methods', json_encode($methods));
|
||||
|
||||
setting()->save();
|
||||
|
||||
@ -67,27 +71,34 @@ class Settings extends Controller
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param GRequest $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function get(GRequest $request)
|
||||
{
|
||||
$data = [];
|
||||
|
||||
$code = $request['code'];
|
||||
|
||||
$offlinepayment = json_decode(setting('offlinepayment.methods'), true);
|
||||
$methods = json_decode(setting('offlinepayment.methods'), true);
|
||||
|
||||
foreach ($offlinepayment as $key => $method) {
|
||||
if ($method['code'] == $code) {
|
||||
$method['title'] = trans('offlinepayment::offlinepayment.edit', ['method' => $method['name']]);
|
||||
$method['method'] = $code;
|
||||
|
||||
$code = explode('.', $method['code']);
|
||||
|
||||
$method['code'] = $code[1];
|
||||
|
||||
$data = $method;
|
||||
|
||||
break;
|
||||
foreach ($methods as $key => $method) {
|
||||
if ($method['code'] != $code) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$method['title'] = trans('offlinepayment::offlinepayment.edit', ['method' => $method['name']]);
|
||||
$method['method'] = $code;
|
||||
|
||||
$code = explode('.', $method['code']);
|
||||
|
||||
$method['code'] = $code[1];
|
||||
|
||||
$data = $method;
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
@ -99,22 +110,27 @@ class Settings extends Controller
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
* @param DRequest $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function delete(DRequest $request)
|
||||
{
|
||||
$code = $request['code'];
|
||||
|
||||
$offlinepayment = json_decode(setting('offlinepayment.methods'), true);
|
||||
$methods = json_decode(setting('offlinepayment.methods'), true);
|
||||
|
||||
foreach ($offlinepayment as $key => $method) {
|
||||
if ($method['code'] == $code) {
|
||||
unset($offlinepayment[$key]);
|
||||
foreach ($methods as $key => $method) {
|
||||
if ($method['code'] != $code) {
|
||||
continue;
|
||||
}
|
||||
|
||||
unset($methods[$key]);
|
||||
}
|
||||
|
||||
// Set Api Token
|
||||
setting()->set('offlinepayment.methods', json_encode($offlinepayment));
|
||||
setting()->set('offlinepayment.methods', json_encode($methods));
|
||||
|
||||
setting()->save();
|
||||
|
||||
|
@ -51,22 +51,24 @@
|
||||
<td class="hidden-xs">{{ $item->category->name }}</td>
|
||||
<td class="hidden-xs">{{ $item->account->name }}</td>
|
||||
<td class="text-center">
|
||||
@if ($item->category->id != $transfer_cat_id)
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" data-toggle-position="left" aria-expanded="false">
|
||||
<i class="fa fa-ellipsis-h"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<li><a href="{{ url('expenses/payments/' . $item->id . '/edit') }}">{{ trans('general.edit') }}</a></li>
|
||||
<li class="divider"></li>
|
||||
@permission('create-expenses-payments')
|
||||
<li><a href="{{ url('expenses/payments/' . $item->id . '/duplicate') }}">{{ trans('general.duplicate') }}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="{{ url('expenses/payments/' . $item->id . '/duplicate') }}">{{ trans('general.duplicate') }}</a></li>
|
||||
@endpermission
|
||||
@permission('delete-expenses-payments')
|
||||
<li class="divider"></li>
|
||||
<li>{!! Form::deleteLink($item, 'expenses/payments') !!}</li>
|
||||
@endpermission
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
@ -51,22 +51,24 @@
|
||||
<td class="hidden-xs">{{ $item->category->name }}</td>
|
||||
<td class="hidden-xs">{{ $item->account->name }}</td>
|
||||
<td class="text-center">
|
||||
@if ($item->category->id != $transfer_cat_id)
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" data-toggle-position="left" aria-expanded="false">
|
||||
<i class="fa fa-ellipsis-h"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<li><a href="{{ url('incomes/revenues/' . $item->id . '/edit') }}">{{ trans('general.edit') }}</a></li>
|
||||
<li class="divider"></li>
|
||||
@permission('create-incomes-revenues')
|
||||
<li><a href="{{ url('incomes/revenues/' . $item->id . '/duplicate') }}">{{ trans('general.duplicate') }}</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="{{ url('incomes/revenues/' . $item->id . '/duplicate') }}">{{ trans('general.duplicate') }}</a></li>
|
||||
@endpermission
|
||||
@permission('delete-incomes-revenues')
|
||||
<li class="divider"></li>
|
||||
<li>{!! Form::deleteLink($item, 'incomes/revenues') !!}</li>
|
||||
@endpermission
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
@ -59,9 +59,12 @@
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<li><a href="{{ url('settings/categories/' . $item->id . '/edit') }}">{{ trans('general.edit') }}</a></li>
|
||||
@if ($item->id != $transfer_id)
|
||||
@permission('delete-settings-categories')
|
||||
<li class="divider"></li>
|
||||
<li>{!! Form::deleteLink($item, 'settings/categories') !!}</li>
|
||||
@endpermission
|
||||
@endif
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
Loading…
x
Reference in New Issue
Block a user