mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Clean up models, fixed a bug.
This commit is contained in:
@@ -38,10 +38,10 @@ class CreatePiggybanksTable extends Migration
|
|||||||
$table->date('startdate')->nullable();
|
$table->date('startdate')->nullable();
|
||||||
$table->date('targetdate')->nullable();
|
$table->date('targetdate')->nullable();
|
||||||
$table->boolean('repeats');
|
$table->boolean('repeats');
|
||||||
$table->enum('rep_length', ['day', 'week', 'month', 'year'])->nullable();
|
$table->enum('rep_length', ['day', 'week','quarter', 'month', 'year'])->nullable();
|
||||||
$table->smallInteger('rep_every')->unsigned();
|
$table->smallInteger('rep_every')->unsigned();
|
||||||
$table->smallInteger('rep_times')->unsigned()->nullable();
|
$table->smallInteger('rep_times')->unsigned()->nullable();
|
||||||
$table->enum('reminder', ['day', 'week', 'month', 'year'])->nullable();
|
$table->enum('reminder', ['day', 'week','quarter', 'month', 'year'])->nullable();
|
||||||
$table->smallInteger('reminder_skip')->unsigned();
|
$table->smallInteger('reminder_skip')->unsigned();
|
||||||
$table->boolean('remind_me');
|
$table->boolean('remind_me');
|
||||||
$table->integer('order')->unsigned();
|
$table->integer('order')->unsigned();
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ class Reminders
|
|||||||
}
|
}
|
||||||
$end = \DateKit::endOfPeriod(clone $start, $piggybank->reminder);
|
$end = \DateKit::endOfPeriod(clone $start, $piggybank->reminder);
|
||||||
// should have a reminder for this period:
|
// should have a reminder for this period:
|
||||||
/** @var \Collection $reminders */
|
/** @var Collection $reminders */
|
||||||
$reminders = $piggybank->reminders()->dateIs($start, $end)->get();
|
$reminders = $piggybank->reminders()->dateIs($start, $end)->get();
|
||||||
if ($reminders->count() == 0) {
|
if ($reminders->count() == 0) {
|
||||||
// create new!
|
// create new!
|
||||||
@@ -113,7 +113,8 @@ class Reminders
|
|||||||
$reminder->enddate = $end;
|
$reminder->enddate = $end;
|
||||||
$reminder->active = 1;
|
$reminder->active = 1;
|
||||||
$reminder->user()->associate($repository->getUser());
|
$reminder->user()->associate($repository->getUser());
|
||||||
$reminder->remindersable()->associate($piggybank);
|
$reminder->remindersable_id= $piggybank->id;
|
||||||
|
$reminder->remindersable_type = 'Piggybank';
|
||||||
$reminder->save();
|
$reminder->save();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,14 +17,14 @@ use LaravelBook\Ardent\Builder;
|
|||||||
* @property-read \Illuminate\Database\Eloquent\Collection|\Transaction[] $transactions
|
* @property-read \Illuminate\Database\Eloquent\Collection|\Transaction[] $transactions
|
||||||
* @property-read \Illuminate\Database\Eloquent\Collection|\Piggybank[] $piggybanks
|
* @property-read \Illuminate\Database\Eloquent\Collection|\Piggybank[] $piggybanks
|
||||||
* @property-read \User $user
|
* @property-read \User $user
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereId($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereId($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereCreatedAt($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereCreatedAt($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereUpdatedAt($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereUpdatedAt($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereUserId($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereUserId($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereAccountTypeId($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereAccountTypeId($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereName($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereName($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Account whereActive($value)
|
* @method static \Illuminate\Database\Query\Builder|\Account whereActive($value)
|
||||||
* @method static \Account accountTypeIn($types)
|
* @method static \Account accountTypeIn($types)
|
||||||
*/
|
*/
|
||||||
class Account extends Ardent
|
class Account extends Ardent
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -21,6 +21,8 @@ use LaravelBook\Ardent\Builder;
|
|||||||
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereStartdate($value)
|
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereStartdate($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereTargetdate($value)
|
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereTargetdate($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereCurrentamount($value)
|
* @method static \Illuminate\Database\Query\Builder|\PiggybankRepetition whereCurrentamount($value)
|
||||||
|
* @method static \PiggybankRepetition starts($date)
|
||||||
|
* @method static \PiggybankRepetition targets($date)
|
||||||
*/
|
*/
|
||||||
class PiggybankRepetition extends Ardent
|
class PiggybankRepetition extends Ardent
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use LaravelBook\Ardent\Ardent;
|
use LaravelBook\Ardent\Ardent;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reminder
|
* Reminder
|
||||||
*
|
*
|
||||||
@@ -14,25 +15,22 @@ use LaravelBook\Ardent\Ardent;
|
|||||||
* @property \Carbon\Carbon $enddate
|
* @property \Carbon\Carbon $enddate
|
||||||
* @property boolean $active
|
* @property boolean $active
|
||||||
* @property boolean $notnow
|
* @property boolean $notnow
|
||||||
* @property integer $remembersable_id
|
|
||||||
* @property string $remembersable_type
|
|
||||||
* @property-read \Piggybank $remindersable
|
|
||||||
* @property-read \User $user
|
|
||||||
* @property mixed $data
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereId($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereCreatedAt($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereUpdatedAt($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereUserId($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereStartdate($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereEnddate($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereActive($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemembersableId($value)
|
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemembersableType($value)
|
|
||||||
* @method static \Reminder dateIs($start, $end)
|
|
||||||
* @property integer $remindersable_id
|
* @property integer $remindersable_id
|
||||||
* @property string $remindersable_type
|
* @property string $remindersable_type
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemindersableId($value)
|
* @property-read \ $remindersable
|
||||||
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemindersableType($value)
|
* @property-read \User $user
|
||||||
|
* @property mixed $data
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereId($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereCreatedAt($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereUpdatedAt($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereUserId($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereStartdate($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereEnddate($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereActive($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereNotnow($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemindersableId($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\Reminder whereRemindersableType($value)
|
||||||
|
* @method static \Reminder dateIs($start, $end)
|
||||||
*/
|
*/
|
||||||
class Reminder extends Ardent
|
class Reminder extends Ardent
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,6 +1,22 @@
|
|||||||
<?php
|
<?php
|
||||||
use LaravelBook\Ardent\Ardent;
|
use LaravelBook\Ardent\Ardent;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TransactionGroup
|
||||||
|
*
|
||||||
|
* @property integer $id
|
||||||
|
* @property \Carbon\Carbon $created_at
|
||||||
|
* @property \Carbon\Carbon $updated_at
|
||||||
|
* @property integer $user_id
|
||||||
|
* @property string $relation
|
||||||
|
* @property-read \Illuminate\Database\Eloquent\Collection|\TransactionJournal[] $transactionjournals
|
||||||
|
* @property-read \User $user
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\TransactionGroup whereId($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\TransactionGroup whereCreatedAt($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\TransactionGroup whereUpdatedAt($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\TransactionGroup whereUserId($value)
|
||||||
|
* @method static \Illuminate\Database\Query\Builder|\TransactionGroup whereRelation($value)
|
||||||
|
*/
|
||||||
class TransactionGroup extends Ardent
|
class TransactionGroup extends Ardent
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
@@ -60,6 +60,11 @@ use LaravelBook\Ardent\Builder;
|
|||||||
* 'Budget[] $budgets
|
* 'Budget[] $budgets
|
||||||
* @property-read \Illuminate\Database\Eloquent\Collection|\
|
* @property-read \Illuminate\Database\Eloquent\Collection|\
|
||||||
* 'Category[] $categories
|
* 'Category[] $categories
|
||||||
|
* @property-read \Illuminate\Database\Eloquent\Collection|\
|
||||||
|
* 'Budget[] $budgets
|
||||||
|
* @property-read \Illuminate\Database\Eloquent\Collection|\
|
||||||
|
* 'Category[] $categories
|
||||||
|
* @property-read \Illuminate\Database\Eloquent\Collection|\TransactionGroup[] $transactiongroups
|
||||||
*/
|
*/
|
||||||
class TransactionJournal extends Ardent
|
class TransactionJournal extends Ardent
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,6 +2,10 @@
|
|||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use LaravelBook\Ardent\Ardent;
|
use LaravelBook\Ardent\Ardent;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TransactionRelation
|
||||||
|
*
|
||||||
|
*/
|
||||||
class TransactionRelation extends Ardent {
|
class TransactionRelation extends Ardent {
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -32,7 +32,7 @@ use LaravelBook\Ardent\Ardent;
|
|||||||
* @method static \Illuminate\Database\Query\Builder|\User whereReset($value)
|
* @method static \Illuminate\Database\Query\Builder|\User whereReset($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\User whereRememberToken($value)
|
* @method static \Illuminate\Database\Query\Builder|\User whereRememberToken($value)
|
||||||
* @method static \Illuminate\Database\Query\Builder|\User whereMigrated($value)
|
* @method static \Illuminate\Database\Query\Builder|\User whereMigrated($value)
|
||||||
* @property-read \Illuminate\Database\Eloquent\Collection|\Reminder[] $reminders
|
* @property-read \Illuminate\Database\Eloquent\Collection|\Reminder[] $reminders
|
||||||
*/
|
*/
|
||||||
class User extends Ardent implements UserInterface, RemindableInterface
|
class User extends Ardent implements UserInterface, RemindableInterface
|
||||||
{
|
{
|
||||||
@@ -97,10 +97,6 @@ class User extends Ardent implements UserInterface, RemindableInterface
|
|||||||
{
|
{
|
||||||
return $this->hasManyThrough('Piggybank', 'Account');
|
return $this->hasManyThrough('Piggybank', 'Account');
|
||||||
}
|
}
|
||||||
public function transactions()
|
|
||||||
{
|
|
||||||
return $this->hasManyThrough('TransactionJournal', 'Transaction');
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
* @return \Illuminate\Database\Eloquent\Relations\HasMany
|
||||||
@@ -126,7 +122,6 @@ class User extends Ardent implements UserInterface, RemindableInterface
|
|||||||
return $this->hasMany('Reminder');
|
return $this->hasMany('Reminder');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $value
|
* @param $value
|
||||||
*/
|
*/
|
||||||
@@ -143,4 +138,9 @@ class User extends Ardent implements UserInterface, RemindableInterface
|
|||||||
return $this->hasMany('TransactionJournal');
|
return $this->hasMany('TransactionJournal');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function transactions()
|
||||||
|
{
|
||||||
|
return $this->hasManyThrough('TransactionJournal', 'Transaction');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user