mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-06-01 04:04:47 -04:00
More activities
This commit is contained in:
parent
152e9b88f6
commit
941e790a95
37
app/Events/Credit/CreditWasViewed.php
Normal file
37
app/Events/Credit/CreditWasViewed.php
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Invoice Ninja (https://invoiceninja.com)
|
||||||
|
*
|
||||||
|
* @link https://github.com/invoiceninja/invoiceninja source repository
|
||||||
|
*
|
||||||
|
* @copyright Copyright (c) 2020. Invoice Ninja LLC (https://invoiceninja.com)
|
||||||
|
*
|
||||||
|
* @license https://opensource.org/licenses/AAL
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace App\Events\Credit;
|
||||||
|
|
||||||
|
use App\Models\Company;
|
||||||
|
use App\Models\CreditWasViewed;
|
||||||
|
use Illuminate\Queue\SerializesModels;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class CreditWasViewed.
|
||||||
|
*/
|
||||||
|
class CreditWasViewed
|
||||||
|
{
|
||||||
|
use SerializesModels;
|
||||||
|
|
||||||
|
public $invitation;
|
||||||
|
|
||||||
|
public $company;
|
||||||
|
|
||||||
|
public $event_vars;
|
||||||
|
|
||||||
|
public function __construct(CreditInvitation $invitation, Company $company, array $event_vars)
|
||||||
|
{
|
||||||
|
$this->invitation = $invitation;
|
||||||
|
$this->company = $company;
|
||||||
|
$this->event_vars = $event_vars;
|
||||||
|
}
|
||||||
|
}
|
@ -11,8 +11,10 @@
|
|||||||
|
|
||||||
namespace App\Http\Controllers\ClientPortal;
|
namespace App\Http\Controllers\ClientPortal;
|
||||||
|
|
||||||
|
use App\Events\Credit\CreditWasViewed;
|
||||||
use App\Events\Invoice\InvoiceWasViewed;
|
use App\Events\Invoice\InvoiceWasViewed;
|
||||||
use App\Events\Misc\InvitationWasViewed;
|
use App\Events\Misc\InvitationWasViewed;
|
||||||
|
use App\Events\Quote\QuoteWasViewed;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Models\InvoiceInvitation;
|
use App\Models\InvoiceInvitation;
|
||||||
use App\Utils\Ninja;
|
use App\Utils\Ninja;
|
||||||
@ -70,7 +72,12 @@ class InvitationController extends Controller
|
|||||||
case 'invoice':
|
case 'invoice':
|
||||||
event(new InvoiceWasViewed($invitation, $invitation->company, Ninja::eventVars()));
|
event(new InvoiceWasViewed($invitation, $invitation->company, Ninja::eventVars()));
|
||||||
break;
|
break;
|
||||||
|
case 'quote':
|
||||||
|
event(new QuoteWasViewed($invitation, $invitation->company, Ninja::eventVars()));
|
||||||
|
break;
|
||||||
|
case 'credit':
|
||||||
|
event(new CreditWasViewed($invitation, $invitation->company, Ninja::eventVars()));
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
# code...
|
# code...
|
||||||
break;
|
break;
|
||||||
|
59
app/Listeners/Credit/CreditViewedActivity.php
Normal file
59
app/Listeners/Credit/CreditViewedActivity.php
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Credit Ninja (https://creditninja.com)
|
||||||
|
*
|
||||||
|
* @link https://github.com/creditninja/creditninja source repository
|
||||||
|
*
|
||||||
|
* @copyright Copyright (c) 2020. Credit Ninja LLC (https://creditninja.com)
|
||||||
|
*
|
||||||
|
* @license https://opensource.org/licenses/AAL
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace App\Listeners\Credit;
|
||||||
|
|
||||||
|
use App\Libraries\MultiDB;
|
||||||
|
use App\Models\Activity;
|
||||||
|
use App\Models\ClientContact;
|
||||||
|
use App\Models\CreditInvitation;
|
||||||
|
use App\Repositories\ActivityRepository;
|
||||||
|
use App\Utils\Traits\MakesHash;
|
||||||
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||||
|
use Illuminate\Queue\InteractsWithQueue;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
|
||||||
|
class CreditViewedActivity implements ShouldQueue
|
||||||
|
{
|
||||||
|
protected $activity_repo;
|
||||||
|
/**
|
||||||
|
* Create the event listener.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct(ActivityRepository $activity_repo)
|
||||||
|
{
|
||||||
|
$this->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->user_id = $event->invitation->user_id;
|
||||||
|
$fields->company_id = $event->invitation->company_id;
|
||||||
|
$fields->activity_type_id = Activity::VIEW_CREDIT;
|
||||||
|
$fields->client_id = $event->invitation->credit->client_id;
|
||||||
|
$fields->client_contact_id = $event->invitation->client_contact_id;
|
||||||
|
$fields->invitation_id = $event->invitation->id;
|
||||||
|
$fields->credit_id = $event->invitation->credit_id;
|
||||||
|
|
||||||
|
$this->activity_repo->save($fields, $event->invitation->credit, $event->event_vars);
|
||||||
|
}
|
||||||
|
}
|
@ -73,11 +73,12 @@ class Activity extends StaticModel
|
|||||||
const DELETE_USER=51; // not needed?
|
const DELETE_USER=51; // not needed?
|
||||||
const RESTORE_USER=52; // not needed?
|
const RESTORE_USER=52; // not needed?
|
||||||
const MARK_SENT_INVOICE=53; // not needed?
|
const MARK_SENT_INVOICE=53; // not needed?
|
||||||
const PAID_INVOICE=54;
|
const PAID_INVOICE=54; //
|
||||||
const EMAIL_INVOICE_FAILED=57;
|
const EMAIL_INVOICE_FAILED=57;
|
||||||
const REVERSED_INVOICE=58;
|
const REVERSED_INVOICE=58; //
|
||||||
const CANCELLED_INVOICE=59;
|
const CANCELLED_INVOICE=59;
|
||||||
|
const VIEW_CREDIT=60; //
|
||||||
|
|
||||||
protected $casts = [
|
protected $casts = [
|
||||||
'is_system' => 'boolean',
|
'is_system' => 'boolean',
|
||||||
'updated_at' => 'timestamp',
|
'updated_at' => 'timestamp',
|
||||||
|
@ -12,12 +12,14 @@
|
|||||||
|
|
||||||
namespace App\PaymentDrivers;
|
namespace App\PaymentDrivers;
|
||||||
|
|
||||||
|
use App\Events\Invoice\InvoiceWasPaid;
|
||||||
use App\Models\Client;
|
use App\Models\Client;
|
||||||
use App\Models\ClientGatewayToken;
|
use App\Models\ClientGatewayToken;
|
||||||
use App\Models\CompanyGateway;
|
use App\Models\CompanyGateway;
|
||||||
use App\Models\Invoice;
|
use App\Models\Invoice;
|
||||||
use App\Models\Payment;
|
use App\Models\Payment;
|
||||||
use App\PaymentDrivers\AbstractPaymentDriver;
|
use App\PaymentDrivers\AbstractPaymentDriver;
|
||||||
|
use App\Utils\Ninja;
|
||||||
use App\Utils\Traits\MakesHash;
|
use App\Utils\Traits\MakesHash;
|
||||||
use App\Utils\Traits\SystemLogTrait;
|
use App\Utils\Traits\SystemLogTrait;
|
||||||
|
|
||||||
@ -119,6 +121,10 @@ class BaseDriver extends AbstractPaymentDriver
|
|||||||
|
|
||||||
$payment->service()->applyNumber()->save();
|
$payment->service()->applyNumber()->save();
|
||||||
|
|
||||||
|
$invoices->each(function ($invoice) use($payment){
|
||||||
|
event(new InvoiceWasPaid($invoice, $payment->company, Ninja::eventVars()));
|
||||||
|
});
|
||||||
|
|
||||||
return $payment;
|
return $payment;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,6 +28,7 @@ use App\Events\Credit\CreditWasEmailedAndFailed;
|
|||||||
use App\Events\Credit\CreditWasMarkedSent;
|
use App\Events\Credit\CreditWasMarkedSent;
|
||||||
use App\Events\Credit\CreditWasRestored;
|
use App\Events\Credit\CreditWasRestored;
|
||||||
use App\Events\Credit\CreditWasUpdated;
|
use App\Events\Credit\CreditWasUpdated;
|
||||||
|
use App\Events\Credit\CreditWasViewed;
|
||||||
use App\Events\Design\DesignWasArchived;
|
use App\Events\Design\DesignWasArchived;
|
||||||
use App\Events\Invoice\InvoiceWasArchived;
|
use App\Events\Invoice\InvoiceWasArchived;
|
||||||
use App\Events\Invoice\InvoiceWasCancelled;
|
use App\Events\Invoice\InvoiceWasCancelled;
|
||||||
@ -76,18 +77,21 @@ use App\Listeners\Activity\RestoreClientActivity;
|
|||||||
use App\Listeners\Activity\UpdatedCreditActivity;
|
use App\Listeners\Activity\UpdatedCreditActivity;
|
||||||
use App\Listeners\Contact\UpdateContactLastLogin;
|
use App\Listeners\Contact\UpdateContactLastLogin;
|
||||||
use App\Listeners\Credit\CreditRestoredActivity;
|
use App\Listeners\Credit\CreditRestoredActivity;
|
||||||
|
use App\Listeners\Credit\CreditViewedActivity;
|
||||||
use App\Listeners\Document\DeleteCompanyDocuments;
|
use App\Listeners\Document\DeleteCompanyDocuments;
|
||||||
use App\Listeners\Invoice\CreateInvoiceActivity;
|
use App\Listeners\Invoice\CreateInvoiceActivity;
|
||||||
use App\Listeners\Invoice\CreateInvoiceHtmlBackup;
|
use App\Listeners\Invoice\CreateInvoiceHtmlBackup;
|
||||||
use App\Listeners\Invoice\CreateInvoiceInvitation;
|
use App\Listeners\Invoice\CreateInvoiceInvitation;
|
||||||
use App\Listeners\Invoice\CreateInvoicePdf;
|
use App\Listeners\Invoice\CreateInvoicePdf;
|
||||||
use App\Listeners\Invoice\InvoiceArchivedActivity;
|
use App\Listeners\Invoice\InvoiceArchivedActivity;
|
||||||
|
use App\Listeners\Invoice\InvoiceCancelledActivity;
|
||||||
use App\Listeners\Invoice\InvoiceDeletedActivity;
|
use App\Listeners\Invoice\InvoiceDeletedActivity;
|
||||||
use App\Listeners\Invoice\InvoiceEmailActivity;
|
use App\Listeners\Invoice\InvoiceEmailActivity;
|
||||||
use App\Listeners\Invoice\InvoiceEmailFailedActivity;
|
use App\Listeners\Invoice\InvoiceEmailFailedActivity;
|
||||||
use App\Listeners\Invoice\InvoiceEmailedNotification;
|
use App\Listeners\Invoice\InvoiceEmailedNotification;
|
||||||
use App\Listeners\Invoice\InvoicePaidActivity;
|
use App\Listeners\Invoice\InvoicePaidActivity;
|
||||||
use App\Listeners\Invoice\InvoiceRestoredActivity;
|
use App\Listeners\Invoice\InvoiceRestoredActivity;
|
||||||
|
use App\Listeners\Invoice\InvoiceReversedActivity;
|
||||||
use App\Listeners\Invoice\InvoiceViewedActivity;
|
use App\Listeners\Invoice\InvoiceViewedActivity;
|
||||||
use App\Listeners\Invoice\UpdateInvoiceActivity;
|
use App\Listeners\Invoice\UpdateInvoiceActivity;
|
||||||
use App\Listeners\Invoice\UpdateInvoiceInvitations;
|
use App\Listeners\Invoice\UpdateInvoiceInvitations;
|
||||||
@ -195,6 +199,9 @@ class EventServiceProvider extends ServiceProvider
|
|||||||
CreditWasRestored::class => [
|
CreditWasRestored::class => [
|
||||||
CreditRestoredActivity::class,
|
CreditRestoredActivity::class,
|
||||||
],
|
],
|
||||||
|
CreditWasViewed::class => [
|
||||||
|
CreditViewedActivity::class
|
||||||
|
],
|
||||||
//Designs
|
//Designs
|
||||||
DesignWasArchived::class => [
|
DesignWasArchived::class => [
|
||||||
],
|
],
|
||||||
@ -239,8 +246,10 @@ class EventServiceProvider extends ServiceProvider
|
|||||||
InvoiceRestoredActivity::class,
|
InvoiceRestoredActivity::class,
|
||||||
],
|
],
|
||||||
InvoiceWasReversed::class => [
|
InvoiceWasReversed::class => [
|
||||||
|
InvoiceReversedActivity::class,
|
||||||
],
|
],
|
||||||
InvoiceWasCancelled::class => [
|
InvoiceWasCancelled::class => [
|
||||||
|
InvoiceCancelledActivity::class,
|
||||||
],
|
],
|
||||||
InvitationWasViewed::class => [
|
InvitationWasViewed::class => [
|
||||||
InvitationViewedListener::class
|
InvitationViewedListener::class
|
||||||
|
Loading…
x
Reference in New Issue
Block a user