. */ declare(strict_types=1); namespace FireflyIII\Http\Requests; use FireflyIII\Rules\ValidJournals; use Log; /** * Class ReconciliationStoreRequest */ class ReconciliationStoreRequest extends Request { /** * Verify the request. * * @return bool */ public function authorize(): bool { // Only allow logged in users return auth()->check(); } /** * Returns the data required by the controller. * * @return array */ public function getAll(): array { $transactions = $this->get('journals'); if (!is_array($transactions)) { $transactions = []; // @codeCoverageIgnore } $data = [ 'start' => $this->date('start'), 'end' => $this->date('end'), 'start_balance' => $this->string('startBalance'), 'end_balance' => $this->string('endBalance'), 'difference' => $this->string('difference'), 'journals' => $transactions, 'reconcile' => $this->string('reconcile'), ]; Log::debug('In ReconciliationStoreRequest::getAll(). Will now return data.'); return $data; } /** * Rules for this request. * * @return array */ public function rules(): array { return [ 'start' => 'required|date', 'end' => 'required|date', 'startBalance' => 'numeric|max:1000000000', 'endBalance' => 'numeric|max:1000000000', 'difference' => 'required|numeric|max:1000000000', 'journals' => [new ValidJournals], 'reconcile' => 'required|in:create,nothing', ]; } }