diff --git a/app/Listeners/Activity/ArchivedClientActivity.php b/app/Listeners/Activity/ArchivedClientActivity.php new file mode 100644 index 0000000000..e847b90d62 --- /dev/null +++ b/app/Listeners/Activity/ArchivedClientActivity.php @@ -0,0 +1,53 @@ +activity_repo = $activity_repo; + } + + /** + * Handle the event. + * + * @param object $event + * @return void + */ + public function handle($event) + { + MultiDB::setDb($event->company->db); + + $fields = new \stdClass; + + $fields->client_id = $event->client->id; + $fields->user_id = $event->client->user_id; + $fields->company_id = $event->client->company_id; + $fields->activity_type_id = Activity::ARCHIVE_CLIENT; + + $this->activity_repo->save($fields, $event->client, $event->event_vars); + } +} diff --git a/app/Listeners/Activity/DeleteClientActivity.php b/app/Listeners/Activity/DeleteClientActivity.php new file mode 100644 index 0000000000..bc8bfd9ba3 --- /dev/null +++ b/app/Listeners/Activity/DeleteClientActivity.php @@ -0,0 +1,53 @@ +activity_repo = $activity_repo; + } + + /** + * Handle the event. + * + * @param object $event + * @return void + */ + public function handle($event) + { + MultiDB::setDb($event->company->db); + + $fields = new \stdClass; + + $fields->client_id = $event->client->id; + $fields->user_id = $event->client->user_id; + $fields->company_id = $event->client->company_id; + $fields->activity_type_id = Activity::DELETE_CLIENT; + + $this->activity_repo->save($fields, $event->client, $event->event_vars); + } +} diff --git a/app/Listeners/Activity/RestoreClientActivity.php b/app/Listeners/Activity/RestoreClientActivity.php new file mode 100644 index 0000000000..35e4cd4bc5 --- /dev/null +++ b/app/Listeners/Activity/RestoreClientActivity.php @@ -0,0 +1,53 @@ +activity_repo = $activity_repo; + } + + /** + * Handle the event. + * + * @param object $event + * @return void + */ + public function handle($event) + { + MultiDB::setDb($event->company->db); + + $fields = new \stdClass; + + $fields->client_id = $event->client->id; + $fields->user_id = $event->client->user_id; + $fields->company_id = $event->client->company_id; + $fields->activity_type_id = Activity::RESTORE_CLIENT; + + $this->activity_repo->save($fields, $event->client, $event->event_vars); + } +} diff --git a/app/Models/Activity.php b/app/Models/Activity.php index a2f6487cb6..d31e92194d 100644 --- a/app/Models/Activity.php +++ b/app/Models/Activity.php @@ -15,12 +15,12 @@ use Illuminate\Database\Eloquent\Model; class Activity extends StaticModel { - const CREATE_CLIENT=1; - const ARCHIVE_CLIENT=2; - const DELETE_CLIENT=3; - const CREATE_INVOICE=4; - const UPDATE_INVOICE=5; - const EMAIL_INVOICE=6; + const CREATE_CLIENT=1; // + const ARCHIVE_CLIENT=2; // + const DELETE_CLIENT=3; // + const CREATE_INVOICE=4; // + const UPDATE_INVOICE=5; // + const EMAIL_INVOICE=6; // const VIEW_INVOICE=7; const ARCHIVE_INVOICE=8; const DELETE_INVOICE=9; diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index 9b8a3348f1..86e13b6662 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -41,11 +41,14 @@ use App\Events\Quote\QuoteWasApproved; use App\Events\User\UserLoggedIn; use App\Events\User\UserWasCreated; use App\Events\User\UserWasDeleted; +use App\Listeners\Activity\ArchivedClientActivity; use App\Listeners\Activity\CreatedClientActivity; +use App\Listeners\Activity\DeleteClientActivity; use App\Listeners\Activity\PaymentCreatedActivity; use App\Listeners\Activity\PaymentDeletedActivity; use App\Listeners\Activity\PaymentRefundedActivity; use App\Listeners\Activity\PaymentVoidedActivity; +use App\Listeners\Activity\RestoreClientActivity; use App\Listeners\Contact\UpdateContactLastLogin; use App\Listeners\Document\DeleteCompanyDocuments; use App\Listeners\Invoice\CreateInvoiceActivity; @@ -105,12 +108,15 @@ class EventServiceProvider extends ServiceProvider CreatedClientActivity::class, ], ClientWasArchived::class =>[ + ArchivedClientActivity::class, ], ClientWasUpdated::class =>[ ], ClientWasDeleted::class =>[ + DeleteClientActivity::class, ], ClientWasRestored::class =>[ + RestoreClientActivity::class, ], // Documents DocumentWasCreated::class =>[