mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-09 03:14:30 -04:00
Expense categories
This commit is contained in:
parent
a4b919f188
commit
301032c905
@ -1,6 +1,8 @@
|
|||||||
<?php namespace App\Http\Controllers;
|
<?php namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Http\Requests\Request;
|
||||||
use App\Models\Expense;
|
use App\Models\Expense;
|
||||||
|
use App\Ninja\Repositories\ExpenseCategoryRepository;
|
||||||
use App\Ninja\Repositories\ExpenseRepository;
|
use App\Ninja\Repositories\ExpenseRepository;
|
||||||
use App\Services\ExpenseService;
|
use App\Services\ExpenseService;
|
||||||
use App\Http\Requests\ExpenseRequest;
|
use App\Http\Requests\ExpenseRequest;
|
||||||
@ -12,15 +14,17 @@ class ExpenseApiController extends BaseAPIController
|
|||||||
// Expenses
|
// Expenses
|
||||||
protected $expenseRepo;
|
protected $expenseRepo;
|
||||||
protected $expenseService;
|
protected $expenseService;
|
||||||
|
protected $categoryRepo;
|
||||||
|
|
||||||
protected $entityType = ENTITY_EXPENSE;
|
protected $entityType = ENTITY_EXPENSE;
|
||||||
|
|
||||||
public function __construct(ExpenseRepository $expenseRepo, ExpenseService $expenseService)
|
public function __construct(ExpenseCategoryRepository $categoryRepo, ExpenseRepository $expenseRepo, ExpenseService $expenseService)
|
||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
|
|
||||||
$this->expenseRepo = $expenseRepo;
|
$this->expenseRepo = $expenseRepo;
|
||||||
$this->expenseService = $expenseService;
|
$this->expenseService = $expenseService;
|
||||||
|
$this->categoryRepo = $categoryRepo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -75,8 +79,8 @@ class ExpenseApiController extends BaseAPIController
|
|||||||
$expense = $this->expenseRepo->save($request->input());
|
$expense = $this->expenseRepo->save($request->input());
|
||||||
|
|
||||||
$expense = Expense::scope($expense->public_id)
|
$expense = Expense::scope($expense->public_id)
|
||||||
->with('client', 'invoice', 'vendor')
|
->with('client', 'invoice', 'vendor')
|
||||||
->first();
|
->first();
|
||||||
|
|
||||||
return $this->itemResponse($expense);
|
return $this->itemResponse($expense);
|
||||||
}
|
}
|
||||||
@ -146,4 +150,19 @@ class ExpenseApiController extends BaseAPIController
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function updateCategory(UpdateExpenseCategoryRequest $request)
|
||||||
|
{
|
||||||
|
$category = $this->categoryRepo->save($request->input(), $request->entity());
|
||||||
|
|
||||||
|
return $this->itemResponse($category);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addCategory(CreateExpenseCategoryRequest $request)
|
||||||
|
{
|
||||||
|
$category = $this->categoryRepo->save($request->input());
|
||||||
|
|
||||||
|
return $this->itemResponse($category);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -309,7 +309,8 @@ Route::group(['middleware' => 'api', 'prefix' => 'api/v1'], function()
|
|||||||
Route::get('dashboard', 'DashboardApiController@index');
|
Route::get('dashboard', 'DashboardApiController@index');
|
||||||
Route::resource('documents', 'DocumentAPIController');
|
Route::resource('documents', 'DocumentAPIController');
|
||||||
Route::resource('vendors', 'VendorApiController');
|
Route::resource('vendors', 'VendorApiController');
|
||||||
Route::resource('expenses', 'ExpenseApiController');
|
Route::post('createExpenseCategory', 'ExpenseApiController@addCategory');
|
||||||
|
Route::put('updateExpenseCategory/{expense_category_id}', 'ExpenseApiController@updateCategory');
|
||||||
});
|
});
|
||||||
|
|
||||||
// Redirects for legacy links
|
// Redirects for legacy links
|
||||||
|
Loading…
x
Reference in New Issue
Block a user