200812PX Added account status mail feature

This commit is contained in:
phantomix 2020-08-12 12:12:54 +02:00
parent 94ab379681
commit 5e11b15b7d
3 changed files with 61 additions and 3 deletions

View File

@ -498,16 +498,63 @@ namespace dezentrale.model
+ "Dies ist eine automatisch generierte E-Mail.\n",
};
}
public static FormMail GenerateSingleMemberStatusReport()
{
return new FormMail()
{
To = "{EMailName} <{EMail}>",
Subject = "dezentrale-members - Status",
Body = "Hallo {EMailName}!\n"
+ "\n"
+ "Hier ein Paar Statistiken zu Deinem Account\n"
+ "Mitgliedsnummer: {Number}\n"
+ "Mitgliedstyp (regulär/fördermitglied): {Type}\n"
+ "Mitglied seit: {SpawnDate}\n"
+ "Status der Mitgliedschaft: {Status}\n"
+ "Nutzerrolle: {Role}\n"
+ "Verpasste MV: {MvMissCounter}\n"
+ "Mitgliedsbeitrag pro Monat: {PaymentAmountString}\n"
+ "Mitgliedsbeitrag - Kontostand: {AccountBalanceString}\n"
+ "Mitgliedsbeitrag - Klasse: {PaymentClass}\n"
+ "Mitgliedsbeitrag - letzte Kontoverringerung: {LastBalanceDegrade}\n"
+ "Mitgliedsbeitrag - DebtLevel: {DebtLevel}\n"
//+ "Mitgliedsbeitrag - letzter Eingang: {LastPaymentProcessed}\n"
//+ "Mitgliedsbeitrag - Fälligkeit (Monat): {PaymentDueMonth}\n"
+ "\n"
+ "Hello {EMailName}!\n"
+ "\n"
+ "Here are some stats about your membership account\n"
+ "Membership number: {Number}\n"
+ "Membership type (regulaer/foerdermitglied): {Type}"
+ "Member since: {SpawnDate}\n"
+ "Membership state: {Status}\n"
+ "User role: {Role}\n"
+ "Missed MV: {MvMissCounter}\n"
+ "Membership fee per month: {PaymentAmountString}\n"
+ "Membership fee - account balance: {AccountBalanceString}\n"
+ "Membership fee - class: {PaymentClass}\n"
+ "Membership fee - last balance degrade: {LastBalanceDegrade}\n"
+ "Membership fee - debt level: {DebtLevel}\n"
//+ "Membership fee - last reception: {LastPaymentProcessed}\n"
//+ "Membership fee - due (month): {PaymentDueMonth}\n"
+ "\n"
+ "\n"
+ "--\n"
+ "Dies ist eine automatisch generierte E-Mail.\n"
+ "This is an auto-generated E-Mail.\n",
};
}
public static FormMail GenerateReducedFeeReminder()
{
return new FormMail()
{
To = "{EMailName} <{EMail}>",
Subject = "dezentrale-members - Testmail",
Subject = "dezentrale-members - Ermäßigte Mitgliedschaft (Reduced membership fee)",
Body = "Hallo {EMailName}!\n"
+ "\n"
+ "In der Datenbank ist erfasst, dass dein Nachweis für ermäßigte Mitgliedschaft bis {ReducedFeeValid} gilt.\n"
+ "In der Datenbank ist erfasst, dass Dein Nachweis für ermäßigte Mitgliedschaft bis {ReducedFeeValid} gilt.\n"
+ "Bitte reiche einen gültigen Nachweis ein, um weiter ermäßigt zu bleiben.\n"
+ "\n"
+ "\n"

View File

@ -244,6 +244,11 @@ namespace dezentrale.model
FormMail testMail = FormMail.GenerateTestmail();
testMail.Send(this);
}
public void AccountStatusMail()
{
FormMail accountStatusMail = FormMail.GenerateSingleMemberStatusReport();
accountStatusMail.Send(this);
}
public void ApplyMoneyTransfer(MoneyTransfer t, string user = null)
{

View File

@ -76,7 +76,8 @@ namespace dezentrale.view
//lstMembers.AddMenuItem("Cronjob checked ones", lstMembers_CronjobChecked);
lstMembers.AddMenuItem("Cronjob all", lstMembers_CronjobAll);
lstMembers.AddMenuItem("-", null);
lstMembers.AddMenuItem("Send Testmail to member", lstMembers_TestMail);
lstMembers.AddMenuItem("Send test mail to member", lstMembers_TestMail);
lstMembers.AddMenuItem("Send account status mail to member", lstMembers_AccountStatusMail);
//TBD: "Selected users missed an MV"
//lstMembers.AddMenuItem("Main Settings", null);
@ -275,6 +276,11 @@ namespace dezentrale.view
{
Member m = lstMembers.GetFirstSelectedItem();
m?.TestMail();
}
private void lstMembers_AccountStatusMail(object sender, EventArgs e)
{
Member m = lstMembers.GetFirstSelectedItem();
m?.AccountStatusMail();
}
private void lstMembers_Edit(object sender, EventArgs e)