mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Removed some todo's.
This commit is contained in:
parent
9b7835c9ed
commit
a845cb9af9
@ -309,6 +309,7 @@ class RuleController extends Controller
|
|||||||
public function update(RuleRequest $request, Rule $rule): JsonResponse
|
public function update(RuleRequest $request, Rule $rule): JsonResponse
|
||||||
{
|
{
|
||||||
$rule = $this->ruleRepository->update($rule, $request->getAll());
|
$rule = $this->ruleRepository->update($rule, $request->getAll());
|
||||||
|
|
||||||
$manager = new Manager();
|
$manager = new Manager();
|
||||||
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
||||||
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
||||||
@ -322,5 +323,49 @@ class RuleController extends Controller
|
|||||||
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO move rule up, move rule down.
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @param Rule $rule
|
||||||
|
* @return JsonResponse
|
||||||
|
*/
|
||||||
|
public function down(Request $request, Rule $rule): JsonResponse
|
||||||
|
{
|
||||||
|
$this->ruleRepository->moveDown($rule);
|
||||||
|
$rule = $this->ruleRepository->find($rule->id);
|
||||||
|
$manager = new Manager();
|
||||||
|
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
||||||
|
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
||||||
|
|
||||||
|
/** @var RuleTransformer $transformer */
|
||||||
|
$transformer = app(RuleTransformer::class);
|
||||||
|
$transformer->setParameters($this->parameters);
|
||||||
|
|
||||||
|
$resource = new Item($rule, $transformer, 'rules');
|
||||||
|
|
||||||
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @param Rule $rule
|
||||||
|
* @return JsonResponse
|
||||||
|
*/
|
||||||
|
public function up(Request $request, Rule $rule): JsonResponse
|
||||||
|
{
|
||||||
|
$this->ruleRepository->moveUp($rule);
|
||||||
|
$rule = $this->ruleRepository->find($rule->id);
|
||||||
|
$manager = new Manager();
|
||||||
|
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
||||||
|
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
||||||
|
|
||||||
|
/** @var RuleTransformer $transformer */
|
||||||
|
$transformer = app(RuleTransformer::class);
|
||||||
|
$transformer->setParameters($this->parameters);
|
||||||
|
|
||||||
|
$resource = new Item($rule, $transformer, 'rules');
|
||||||
|
|
||||||
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -284,51 +284,6 @@ class RuleGroupController extends Controller
|
|||||||
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @param Request $request
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
private function getTestParameters(Request $request): array
|
|
||||||
{
|
|
||||||
return [
|
|
||||||
'page_size' => (int)app('preferences')->getForUser(auth()->user(), 'listPageSize', 50)->data,
|
|
||||||
'page' => 0 === (int)$request->query('page') ? 1 : (int)$request->query('page'),
|
|
||||||
'start_date' => null === $request->query('start_date') ? null : Carbon::createFromFormat('Y-m-d', $request->query('start_date')),
|
|
||||||
'end_date' => null === $request->query('end_date') ? null : Carbon::createFromFormat('Y-m-d', $request->query('end_date')),
|
|
||||||
'search_limit' => 0 === (int)$request->query('search_limit') ? (int)config('firefly.test-triggers.limit') : (int)$request->query('search_limit'),
|
|
||||||
'trigger_limit' => 0 === (int)$request->query('triggered_limit')
|
|
||||||
? (int)config('firefly.test-triggers.range')
|
|
||||||
: (int)$request->query(
|
|
||||||
'triggered_limit'
|
|
||||||
),
|
|
||||||
'account_list' => '' === (string)$request->query('accounts') ? [] : explode(',', $request->query('accounts')),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param array $accounts
|
|
||||||
*
|
|
||||||
* @return Collection
|
|
||||||
*/
|
|
||||||
private function getAccountParameter(array $accounts): Collection
|
|
||||||
{
|
|
||||||
$return = new Collection;
|
|
||||||
foreach ($accounts as $accountId) {
|
|
||||||
Log::debug(sprintf('Searching for asset account with id "%s"', $accountId));
|
|
||||||
$account = $this->accountRepository->findNull((int)$accountId);
|
|
||||||
if (null !== $account && AccountType::ASSET === $account->accountType->type) {
|
|
||||||
Log::debug(sprintf('Found account #%d ("%s") and its an asset account', $account->id, $account->name));
|
|
||||||
$return->push($account);
|
|
||||||
}
|
|
||||||
if (null === $account) {
|
|
||||||
Log::debug(sprintf('No asset account with id "%s"', $accountId));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute the given rule group on a set of existing transactions.
|
* Execute the given rule group on a set of existing transactions.
|
||||||
*
|
*
|
||||||
@ -381,7 +336,6 @@ class RuleGroupController extends Controller
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Update a rule group.
|
* Update a rule group.
|
||||||
* TODO update order of rule group
|
|
||||||
*
|
*
|
||||||
* @param RuleGroupRequest $request
|
* @param RuleGroupRequest $request
|
||||||
* @param RuleGroup $ruleGroup
|
* @param RuleGroup $ruleGroup
|
||||||
@ -402,6 +356,94 @@ class RuleGroupController extends Controller
|
|||||||
$resource = new Item($ruleGroup, $transformer, 'rule_groups');
|
$resource = new Item($ruleGroup, $transformer, 'rule_groups');
|
||||||
|
|
||||||
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @param RuleGroup $ruleGroup
|
||||||
|
* @return JsonResponse
|
||||||
|
*/
|
||||||
|
public function down(Request $request, RuleGroup $ruleGroup): JsonResponse
|
||||||
|
{
|
||||||
|
$this->ruleGroupRepository->moveDown($ruleGroup);
|
||||||
|
$ruleGroup = $this->ruleGroupRepository->find($ruleGroup->id);
|
||||||
|
$manager = new Manager();
|
||||||
|
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
||||||
|
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
||||||
|
|
||||||
|
/** @var RuleGroupTransformer $transformer */
|
||||||
|
$transformer = app(RuleGroupTransformer::class);
|
||||||
|
$transformer->setParameters($this->parameters);
|
||||||
|
|
||||||
|
$resource = new Item($ruleGroup, $transformer, 'rule_groups');
|
||||||
|
|
||||||
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
* @param RuleGroup $ruleGroup
|
||||||
|
* @return JsonResponse
|
||||||
|
*/
|
||||||
|
public function up(Request $request, RuleGroup $ruleGroup): JsonResponse
|
||||||
|
{
|
||||||
|
$this->ruleGroupRepository->moveUp($ruleGroup);
|
||||||
|
$ruleGroup = $this->ruleGroupRepository->find($ruleGroup->id);
|
||||||
|
$manager = new Manager();
|
||||||
|
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
|
||||||
|
$manager->setSerializer(new JsonApiSerializer($baseUrl));
|
||||||
|
|
||||||
|
/** @var RuleGroupTransformer $transformer */
|
||||||
|
$transformer = app(RuleGroupTransformer::class);
|
||||||
|
$transformer->setParameters($this->parameters);
|
||||||
|
|
||||||
|
$resource = new Item($ruleGroup, $transformer, 'rule_groups');
|
||||||
|
|
||||||
|
return response()->json($manager->createData($resource)->toArray())->header('Content-Type', 'application/vnd.api+json');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Request $request
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function getTestParameters(Request $request): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'page_size' => (int)app('preferences')->getForUser(auth()->user(), 'listPageSize', 50)->data,
|
||||||
|
'page' => 0 === (int)$request->query('page') ? 1 : (int)$request->query('page'),
|
||||||
|
'start_date' => null === $request->query('start_date') ? null : Carbon::createFromFormat('Y-m-d', $request->query('start_date')),
|
||||||
|
'end_date' => null === $request->query('end_date') ? null : Carbon::createFromFormat('Y-m-d', $request->query('end_date')),
|
||||||
|
'search_limit' => 0 === (int)$request->query('search_limit') ? (int)config('firefly.test-triggers.limit') : (int)$request->query('search_limit'),
|
||||||
|
'trigger_limit' => 0 === (int)$request->query('triggered_limit')
|
||||||
|
? (int)config('firefly.test-triggers.range')
|
||||||
|
: (int)$request->query(
|
||||||
|
'triggered_limit'
|
||||||
|
),
|
||||||
|
'account_list' => '' === (string)$request->query('accounts') ? [] : explode(',', $request->query('accounts')),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $accounts
|
||||||
|
*
|
||||||
|
* @return Collection
|
||||||
|
*/
|
||||||
|
private function getAccountParameter(array $accounts): Collection
|
||||||
|
{
|
||||||
|
$return = new Collection;
|
||||||
|
foreach ($accounts as $accountId) {
|
||||||
|
Log::debug(sprintf('Searching for asset account with id "%s"', $accountId));
|
||||||
|
$account = $this->accountRepository->findNull((int)$accountId);
|
||||||
|
if (null !== $account && AccountType::ASSET === $account->accountType->type) {
|
||||||
|
Log::debug(sprintf('Found account #%d ("%s") and its an asset account', $account->id, $account->name));
|
||||||
|
$return->push($account);
|
||||||
|
}
|
||||||
|
if (null === $account) {
|
||||||
|
Log::debug(sprintf('No asset account with id "%s"', $accountId));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -90,7 +90,6 @@ class BillRequest extends Request
|
|||||||
'date' => 'required|date',
|
'date' => 'required|date',
|
||||||
'repeat_freq' => 'required|in:weekly,monthly,quarterly,half-year,yearly',
|
'repeat_freq' => 'required|in:weekly,monthly,quarterly,half-year,yearly',
|
||||||
'skip' => 'between:0,31',
|
'skip' => 'between:0,31',
|
||||||
'automatch' => [new IsBoolean], // TODO isn't automatch deprecated?
|
|
||||||
'active' => [new IsBoolean],
|
'active' => [new IsBoolean],
|
||||||
'notes' => 'between:1,65536',
|
'notes' => 'between:1,65536',
|
||||||
];
|
];
|
||||||
|
@ -277,8 +277,6 @@ class TransactionStoreRequest extends Request
|
|||||||
// the group must have a description if > 1 journal.
|
// the group must have a description if > 1 journal.
|
||||||
$this->validateGroupDescription($validator);
|
$this->validateGroupDescription($validator);
|
||||||
|
|
||||||
// TODO the currency info must match the accounts involved.
|
|
||||||
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -311,6 +311,8 @@ Route::group(
|
|||||||
Route::delete('{rule}', ['uses' => 'RuleController@delete', 'as' => 'delete']);
|
Route::delete('{rule}', ['uses' => 'RuleController@delete', 'as' => 'delete']);
|
||||||
Route::get('{rule}/test', ['uses' => 'RuleController@testRule', 'as' => 'test']);
|
Route::get('{rule}/test', ['uses' => 'RuleController@testRule', 'as' => 'test']);
|
||||||
Route::post('{rule}/trigger', ['uses' => 'RuleController@triggerRule', 'as' => 'trigger']);
|
Route::post('{rule}/trigger', ['uses' => 'RuleController@triggerRule', 'as' => 'trigger']);
|
||||||
|
Route::post('{rule}/up', ['uses' => 'RuleController@up', 'as' => 'up']);
|
||||||
|
Route::post('{rule}/down', ['uses' => 'RuleController@down', 'as' => 'down']);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -327,6 +329,9 @@ Route::group(
|
|||||||
Route::get('{ruleGroup}/test', ['uses' => 'RuleGroupController@testGroup', 'as' => 'test']);
|
Route::get('{ruleGroup}/test', ['uses' => 'RuleGroupController@testGroup', 'as' => 'test']);
|
||||||
Route::get('{ruleGroup}/rules', ['uses' => 'RuleGroupController@rules', 'as' => 'rules']);
|
Route::get('{ruleGroup}/rules', ['uses' => 'RuleGroupController@rules', 'as' => 'rules']);
|
||||||
Route::post('{ruleGroup}/trigger', ['uses' => 'RuleGroupController@triggerGroup', 'as' => 'trigger']);
|
Route::post('{ruleGroup}/trigger', ['uses' => 'RuleGroupController@triggerGroup', 'as' => 'trigger']);
|
||||||
|
|
||||||
|
Route::post('{ruleGroup}/up', ['uses' => 'RuleGroupController@up', 'as' => 'up']);
|
||||||
|
Route::post('{ruleGroup}/down', ['uses' => 'RuleGroupController@down', 'as' => 'down']);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user