2021-10-29 21:44:23 +02:00
< ? php
2023-04-18 22:08:45 +02:00
namespace App\Invoice ;
2021-10-29 21:44:23 +02:00
use App\Payment\Payment ;
2022-11-07 16:18:11 +01:00
use Illuminate\Database\Eloquent\Relations\HasMany ;
2021-10-29 21:44:23 +02:00
2023-04-18 22:08:45 +02:00
class RememberDocument extends Invoice
2021-10-29 21:44:23 +02:00
{
public function linkLabel () : string
{
return 'Erinnerung erstellen' ;
}
public function getSubject () : string
{
return 'Zahlungserinnerung' ;
}
2022-11-07 16:18:11 +01:00
public function view () : string
2021-10-29 21:44:23 +02:00
{
return 'tex.remember' ;
}
2022-12-13 23:11:32 +01:00
public static function sendAllLabel () : string
2021-10-29 21:44:23 +02:00
{
2022-12-13 23:11:32 +01:00
return 'Erinnerungen versenden' ;
2021-10-29 21:44:23 +02:00
}
public function afterSingle ( Payment $payment ) : void
{
$payment -> update ([ 'last_remembered_at' => now ()]);
}
2021-10-29 22:02:21 +02:00
public function getMailSubject () : string
{
return 'Zahlungserinnerung' ;
}
2022-11-07 16:18:11 +01:00
/**
* @ param HasMany < Payment > $query
*
* @ return HasMany < Payment >
*/
public static function paymentsQuery ( HasMany $query ) : HasMany
{
return $query -> whereNeedsRemember ();
}
2022-12-07 00:40:53 +01:00
/**
* Get Descriptions for sendpayment page .
*
* @ return array < int , string >
*/
public static function getDescription () : array
{
return [
'Diese Funktion erstellt Erinnerungs-PDFs mit allen versendeten aber noch nich bezahlten Rechnungen bei den Mitgliedern die Post als Versandweg haben.' ,
'Das zuletzt erinnerte Datum wird auf heute gesetzt.' ,
];
}
2021-10-29 21:44:23 +02:00
}