private void olvRekeningen_SelectedIndexChanged(object sender, EventArgs e) { tblRekening rekening = (tblRekening)olvRekeningen.SelectedObject; if (rekening == null) { return; } txtOmschrijving.Text = rekening.Omschrijving; cboTypeRekening.SelectedIndex = rekening.TypeRekening; txtTotaalbedrag.ToFromDecimal = rekening.TotaalBedrag; txtDebitIBAN.Text = rekening.Lid.IBAN; txtCreditIBAN.Text = rekening.IBAN; txtDebitBIC.Text = rekening.Lid.BIC; txtCreditBIC.Text = rekening.BIC; dtpAanmaakDatum.Value = rekening.AanmaakDatum; dtpDatumVerstuurd.Value = rekening.VerstuurdDatum; ckbVerstuurd.Checked = rekening.Verstuurd; txtCompetitieBijdrage.ToFromDecimal = rekening.CompetitieBijdrage; txtContributieBedrag.ToFromDecimal = rekening.ContributieBedrag; txtBondsbijdrage.ToFromDecimal = rekening.Bondsbijdrage; txtExtraBedrag.ToFromDecimal = rekening.ExtraBedrag; txtKorting.ToFromDecimal = rekening.Korting; txtKortingVrijwilliger.ToFromDecimal = rekening.BedragKortingVrijwilliger; ckbGestorneerd.Checked = rekening.Gestorneerd; ckbMailOnderdrukken.Checked = rekening.MailOnderdrukken; cmdStorneren.Enabled = (cmdSave.Visible && !rekening.Gestorneerd && rekening.Verstuurd); }
private void cmdSave_Click(object sender, EventArgs e) { SetChangeMode(false); tblRekening rekening = (tblRekening)olvRekeningen.SelectedObject; if (rekening == null) { return; } rekening.Omschrijving = txtOmschrijving.Text; rekening.TypeRekening = cboTypeRekening.SelectedIndex; rekening.TotaalBedrag = txtTotaalbedrag.ToFromDecimal; rekening.IBAN = txtCreditIBAN.Text; rekening.BIC = txtCreditBIC.Text; rekening.AanmaakDatum = dtpAanmaakDatum.Value; rekening.VerstuurdDatum = dtpDatumVerstuurd.Value; rekening.Verstuurd = ckbVerstuurd.Checked; rekening.CompetitieBijdrage = txtCompetitieBijdrage.ToFromDecimal; rekening.ContributieBedrag = txtContributieBedrag.ToFromDecimal; rekening.Bondsbijdrage = txtBondsbijdrage.ToFromDecimal; rekening.ExtraBedrag = txtExtraBedrag.ToFromDecimal; rekening.Korting = txtKorting.ToFromDecimal; rekening.BedragKortingVrijwilliger = txtKortingVrijwilliger.ToFromDecimal; rekening.MailOnderdrukken = ckbMailOnderdrukken.Checked; rekening.Gestorneerd = ckbGestorneerd.Checked; dataAdaptor.UpdateRekeningen(rekeningen); dataAdaptor.CommitTransaction(true); olvRekeningen.RefreshObject(olvRekeningen.SelectedObject); toolStripStatusLabel1.Text = "Wijziging bewaard"; }
public string ReplaceRekeningItems(string template, tblRekening rekening) { //vervangen template = template.Replace("***incdat***", dtpIncassoDatum.Value.ToString("s").Substring(0, 10)); template = template.Replace("***incamt***", rekening.TotaalBedrag.ToXMLEuroString()); template = template.Replace("***b1***", "Contributie"); template = template.Replace("***w1***", rekening.ContributieBedrag.ToXMLEuroString()); template = template.Replace("***IBAN***", rekening.IBAN); template = template.Replace("***BIC***", rekening.BIC); int j = 2; string x = "***b" + j.ToString() + "***"; if (rekening.Bondsbijdrage != 0) { template = template.Replace("***b" + j.ToString() + "***", "Bondsbijdrage"); template = template.Replace("***w" + j.ToString() + "***", rekening.Bondsbijdrage.ToXMLEuroString()); j++; } if (rekening.CompetitieBijdrage != 0) { template = template.Replace("***b" + j.ToString() + "***", "CompetitieBijdrage"); template = template.Replace("***w" + j.ToString() + "***", rekening.CompetitieBijdrage.ToXMLEuroString()); j++; } if (rekening.Korting != 0) { template = template.Replace("***b" + j.ToString() + "***", "Korting"); template = template.Replace("***w" + j.ToString() + "***", rekening.Korting.ToXMLEuroString()); j++; } if (rekening.ExtraBedrag != 0) { template = template.Replace("***b" + j.ToString() + "***", "Kosten rekening"); template = template.Replace("***w" + j.ToString() + "***", rekening.ExtraBedrag.ToXMLEuroString()); j++; } if (rekening.BedragKortingVrijwilliger != 0) { template = template.Replace("***b" + j.ToString() + "***", "Korting Vrijwilliger"); template = template.Replace("***w" + j.ToString() + "***", rekening.BedragKortingVrijwilliger.ToXMLEuroString()); j++; } for (int i = j; i <= 5; i++) { template = template.Replace("***b" + i.ToString() + "***", string.Empty); template = template.Replace("***w" + i.ToString() + "***", string.Empty); } template = template.Replace("***omschrijving***", rekening.Omschrijving); return(template); }
private void lblOmschrijving_Click(object sender, EventArgs e) { tblRekening rekening = (tblRekening)olvRekeningen.SelectedObject; if (rekening == null) { return; } new PropertyGridForm(rekening).Show(); new PropertyGridForm(rekening.Lid).Show(); }
private void cmdStorneren_Click(object sender, EventArgs e) { tblRekening rekening = (tblRekening)olvRekeningen.SelectedObject; if (rekening == null) { return; } if (rekening.Gestorneerd) { MessageBox.Show("Incasso is al gestorneerd", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); toolStripStatusLabel1.Text = "Incasso is al gestorneerd: " + rekening.Omschrijving; return; } if (!rekening.Verstuurd) { MessageBox.Show("Rekening is nog niet verstuurd", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); toolStripStatusLabel1.Text = "Rekening is nog niet verstuurd: " + rekening.Omschrijving; return; } tblRekening rekeningNew = tblRekening.CreateRekeningRecord(rekening.Lid, rekeningen); rekeningNew.Omschrijving = rekening.Omschrijving; rekeningNew.TypeRekening = rekening.TypeRekening; rekeningNew.TotaalBedrag = rekening.TotaalBedrag + txtStornoKosten.ToFromDecimal; rekeningNew.IBAN = rekening.IBAN; rekeningNew.BIC = rekening.BIC; rekeningNew.AanmaakDatum = DateTime.Now; rekeningNew.VerstuurdDatum = DateTime.Now; rekeningNew.Verstuurd = false; rekeningNew.CompetitieBijdrage = rekening.CompetitieBijdrage; rekeningNew.ContributieBedrag = rekening.ContributieBedrag; rekeningNew.Bondsbijdrage = rekening.Bondsbijdrage; rekeningNew.ExtraBedrag += txtStornoKosten.ToFromDecimal; rekeningNew.Korting = rekening.Korting; rekeningNew.BedragKortingVrijwilliger = rekeningNew.BedragKortingVrijwilliger; rekeningNew.MailOnderdrukken = false; rekeningNew.Gestorneerd = false; rekeningen.Add(rekeningNew); rekening.Gestorneerd = true; olvRekeningen.AddObject(rekeningNew); lboLeden_SelectedIndexChanged(this, new EventArgs()); cmdStorneren.Enabled = false; toolStripStatusLabel1.Text = "Rekening gestorneerd: " + rekening.Omschrijving; string template = (rduStornoBrief.Checked ? "Storno" : "ZelfBetalenStorno"); frmMultiMail frm = new frmMultiMail(rekening, param, template, "Storno rekening " + param.ClubNameShort, null, C.OnlyFinanicalMailAddresses); frm.ShowDialog(); }
private void olvRekeningen_FormatRow(object sender, FormatRowEventArgs e) { tblRekening rek = (tblRekening)e.Model; if (!rek.Verstuurd) //groen { e.Item.ForeColor = Color.Green; } if (rek.Gestorneerd)//rood { e.Item.ForeColor = Color.Red; } }
/// <summary> /// This routine replaces keywords with values from the Lid object /// /// Replace ***voornaam*** --> lid.Voornaam /// Replace ***tussen*** --> lid.Tussenvoegsel /// Replace ***achternaam*** --> lid.Achternaam /// Replace ***adres*** --> lid.Adres /// Replace ***postcode*** --> lid.Postcode /// Replace ***woonplaats*** --> lid.Woonplaats /// Replace ***telefoon*** --> lid.Telefoon /// Replace ***mobiel*** --> lid.Mobiel /// Replace ***email1*** --> lid.Email1 /// Replace ***email2*** --> lid.Email2 /// Replace ***geboortedatum*** --> lid.GeboorteDatum /// Replace ***geslacht*** --> lid.Geslacht /// Replace ***rekeningnummer*** --> lid.IBAN /// Replace ***lidnr*** --> lid.LidNr /// Replace ***bijzonderheden*** --> lid.Medisch /// Replace ***voornaam*** --> lid.Voornaam /// Replace ***uitschrijfdatum**** --> lid.LidTot /// </summary> /// <param name="mailString">template</param> /// <param name="Object">tblLid or tblRekening</param> /// <returns> /// </returns> public static string ReplaceKeyWords(string mailString, object Object, tblParameters param) { if (Object is tblLid) { tblLid lid = (tblLid)Object; return(ReplaceLid(mailString, lid, param)); } if (Object is tblRekening) { tblRekening rekening = (tblRekening)Object; return(ReplaceRekening(mailString, rekening, param)); } throw new NotImplementedException(); }
private static string ReplaceRekening(string mailString, tblRekening rekening, tblParameters param) { mailString = ReplaceLid(mailString, rekening.Lid, param); mailString = mailString.Replace("***bedrag***", rekening.TotaalBedrag.ToEuroString()); mailString = mailString.Replace("***totaalbedrag***", rekening.TotaalBedrag.ToEuroString()); mailString = mailString.Replace("***omschrijving***", rekening.Omschrijving); mailString = mailString.Replace("***aanmaakdatum***", rekening.AanmaakDatum.ToShortDateString()); mailString = mailString.Replace("***verstuurddatum***", rekening.VerstuurdDatum.ToShortDateString()); mailString = mailString.Replace("***competitiebijdrage***", rekening.CompetitieBijdrage.ToEuroString()); mailString = mailString.Replace("***contributiebedrag***", rekening.ContributieBedrag.ToEuroString()); mailString = mailString.Replace("***bondsbijdrage***", rekening.Bondsbijdrage.ToEuroString()); mailString = mailString.Replace("***extrabedrag***", rekening.ExtraBedrag.ToEuroString()); mailString = mailString.Replace("***korting***", rekening.Korting.ToEuroString()); mailString = mailString.Replace("***kostenstornering***", rekening.KostenStornering.ToEuroString()); return(mailString); }
private void cmdDelete_Click(object sender, EventArgs e) { tblRekening rekening = (tblRekening)olvRekeningen.SelectedObject; if (rekening == null) { return; } rekeningen.Remove(rekening); // verwijderen uit de dataset. dataAdaptor.DeleteRekening(rekening); dataAdaptor.CommitTransaction(true); olvRekeningen.RemoveObject(rekening); // olvRekeningen.SetObjects(rekeningen); lboLeden_SelectedIndexChanged(sender, e); toolStripStatusLabel1.Text = "Rekening verwijderd: " + rekening.Omschrijving; }
private void cmdCreate_Click(object sender, EventArgs e) { for (int i = 0; i < clbLeden.Items.Count; i++) { if (clbLeden.GetItemChecked(i) == false) { continue; } tblRekening rekening = tblRekening.CreateRekeningRecord(localLeden[i], rekeningen); rekening.AanmaakDatum = dtpAanmaakDatum.Value; rekening.BIC = param.BIC; rekening.IBAN = param.IBAN; rekening.Omschrijving = txtOmschrijving.Text; rekening.TotaalBedrag = txtTotaalbedrag.ToFromDecimal; rekening.TypeRekening = cboTypeRekening.SelectedIndex; rekeningen.Add(rekening); localRekeningen.Add(rekening); } ReportRoutines.CreateRekeningingenReport("Aangemaakte eenmalige rekeningen", localRekeningen, reportFileName, true); toolStripStatusLabel1.Text = localRekeningen.Count.ToString() + " rekeningen aangemaakt."; }
public static tblRekening CreateRekeningRecord(tblLid lid, RekeningenLijst rekeningen) { tblRekening rekening = new tblRekening(); try { for (int i = 0; i < rekeningen.Count; i++) { if (rekeningen[i].RekeningSeqNr > rekening.RekeningSeqNr && rekeningen[i].LidNr == lid.LidNr) { rekening.RekeningSeqNr = rekeningen[i].RekeningSeqNr; } } rekening.RekeningSeqNr++; rekening.Lid = lid; rekening.LidNr = lid.LidNr; } catch (Exception ex) { GuiRoutines.ShowMessage(ex); } return(rekening); }
public frmMultiMail(object lijst, tblParameters Param, object templateName, string subject, List <string> attachmentList, bool OnlyFinancialEmail) { InitializeComponent(); cmdGetMail.Visible = cmdSaveMail.Visible = false; if (lijst == null) { return; } //param = new tblParameters(); param = Param; // De schaduwlijst dient om bij ieder email adres in de checkbox een Lid object te hebben zodat we de keywords kunnen vervangen ledenSchaduwlijst = new LedenLijst(); //mostRecentlyUsed = new MosaicMru(this, "Multimail"); //mostRecentlyUsed.ItemsSaveLimit = 10; //mostRecentlyUsed.ItemsAreFiles = false; //mostRecentlyUsed.BuildMenu(clbExtraEmail); try { foreach (string s in param.mmtxtExtraEmail) { clbExtraEmail.Items.Add(s); } } catch { } _windowState = new PersistWindowState(this, @"Leden\Mail"); //txtExtraEmail.Text = PersistControlValue.ReadControlValue(txtExtraEmail); chkLogEmail.Checked = param.LogEmail; ckbDoNotSendEmail.Checked = param.DoNotSendEmail; EmailLogFile = param.LocationLogFiles + @"\" + param.ClubNameShort + "_Mail_Logfile.txt"; if (!File.Exists(EmailLogFile)) { File.Create(EmailLogFile); } #region Bouw Ledenlijst op if (lijst.GetType() == typeof(LedenLijst)) { leden = (LedenLijst)lijst; } if (lijst.GetType() == typeof(tblLid)) { tblLid lid = (tblLid)lijst; lid.Gemerkt = true; leden = new LedenLijst(lid); } if (lijst.GetType() == typeof(List <EmailAdresLid>)) { leden = new LedenLijst(); foreach (EmailAdresLid e in (List <EmailAdresLid>)lijst) { if (string.IsNullOrEmpty(e.EmailAddress.Trim())) { continue; } tblLid lid = new tblLid(); lid.Gemerkt = true; lid.Email1 = e.EmailAddress; leden.Add(lid); } } if (lijst.GetType() == typeof(tblRekening)) { tblRekening rekening = (tblRekening)lijst; tblLid lid = rekening.Lid; lid.Gemerkt = true; leden = new LedenLijst(lid); } #endregion try { foreach (tblLid lid in leden) { if (lid.Gemerkt) { AddEmailToComboAndShadow(lid, OnlyFinancialEmail); } } #region templateName == null dus we gebruiken de laatste opgeslagen default string body = string.Empty; if (templateName == null) { mailFileName = PersistControlValue.ReadLocalAppSetting(@"Leden.Net", "LastUsedEmail"); cmdGetMail.Visible = cmdSaveMail.Visible = true; if (mailFileName != string.Empty || !File.Exists(mailFileName)) { StreamReader sr = File.OpenText(mailFileName); StringReader str = new StringReader(sr.ReadToEnd()); body = htmlTextbox1.Text = str.ReadToEnd(); sr.Close(); sr.Dispose(); } else { body = htmlTextbox1.Text = mailFileName + " not found"; } return; } #endregion #region TemplateNaam is ingevuld dus gaan we die gebruiken. igv lege string dan default mailtje // Het type is een string dus gaan we uit van een templatenaam if (templateName.GetType() == typeof(string)) { if ((string)templateName == string.Empty) { htmlTextbox1.Text = "Beste " + param.ClubNameShort + "-er,<br><br>Met vriendelijke groet,<br>" + param.ClubNameShort; return; } // we maken gebruik van een template voor de leden. bijv Upas mail //Inlezen van de template string fileNameTemplate = param.LocationTemplates + @"\Template_" + (string)templateName + ".htm";; if (!File.Exists(fileNameTemplate)) { MessageBox.Show("Template mail " + fileNameTemplate + " bestaat niet", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } StreamReader sr1 = File.OpenText(fileNameTemplate); StringReader str1 = new StringReader(sr1.ReadToEnd()); htmlTextbox1.Text = str1.ReadToEnd(); } #endregion if (templateName.GetType() == typeof(BodyString)) { htmlTextbox1.Text = (BodyString)templateName; } //Replace keywords if (lijst.GetType() == typeof(tblLid)) { tblLid lid = (tblLid)lijst; htmlTextbox1.Text = MailRoutines.ReplaceKeyWords(htmlTextbox1.Text, lid, param); } if (lijst.GetType() == typeof(tblRekening)) { tblRekening rekening = (tblRekening)lijst; htmlTextbox1.Text = MailRoutines.ReplaceKeyWords(htmlTextbox1.Text, rekening, param); } #region Subject en Attachments txtSubject.Text = (subject != null ? subject : string.Empty); if (attachmentList != null) { for (int i = 0; i < attachmentList.Count && i < 3; i++) { if (i == 0 && attachmentList[i] != string.Empty) { txtBijlage1.Text = attachmentList[i]; } if (i == 1 && attachmentList[i] != string.Empty) { txtBijlage2.Text = attachmentList[i]; } if (i == 2 && attachmentList[i] != string.Empty) { txtBijlage3.Text = attachmentList[i]; } } } #endregion } catch { } }
private void cmdMaakRekeningen_Click(object sender, EventArgs e) { localRekeningen = new RekeningenLijst(); foreach (tblLid lid in leden) { bool berekenen = false; decContributieBedrag = 0; if (lid.Opgezegd) { continue; } if (lid.IsLidContVrij) { continue; } //fout// tblRekening rekening = tblRekening.CreateRekeningRecord(lid, rekeningen); switch (cboSelectieType.SelectedIndex) { case 0: // Alle leden if ((clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[0]) && lid.IsLidNormaal) || (clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[1]) && lid.IsLidZwerf) || (clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[2]) && lid.IsLidPakket)) { berekenen = true; } ; break; case 1: //Gemerkte leden if (lid.Gemerkt) { berekenen = true; } ; break; default: break; } if (berekenen) { rekening.ContributieBedrag = CalculateTotaalBedrag(lid); // als een lid halverwege het seizoen lid wordt dan berekenen we de contributie per maand. // we doen dit niet voor pakket leden. if (ckbRelatief.Checked && lid.LidType != tblLid.constLidPakket) { // bereken eerst het aantal maanden tussen peildatum en inschrijfdatum. var dateSpan = DateTimeSpan.CompareDates(lid.LidVanaf, dtpPeilDatum.Value); // stel berekende maanden is 4 dan krijgt het lid 4 maanden korting. int aantalMaanden = dateSpan.Months + 1; // +1 omdat we vanaf de eerst volgende maand berekenen. decimal korting = decimal.Round((decContributieBedrag * aantalMaanden) / 6, 2); rekening.Korting += korting; rekening.TotaalBedrag -= korting; } if (!lid.IsLidPakket && lid.VastBedrag == 0) { rekening.Korting += lid.Korting; rekening.TotaalBedrag -= lid.Korting; if (lid.CompGerechtigd) { string cat = DateRoutines.LeeftijdCategorieContributie(lid.GeboorteDatum, dtpPeilDatum.Value); if (cat == tblLid.constPupil || cat == tblLid.constJunior) { rekening.CompetitieBijdrage = txtCompBijdrageJun.ToFromDecimal; } else { rekening.CompetitieBijdrage = txtCompBijdrageSen.ToFromDecimal; } rekening.TotaalBedrag += rekening.CompetitieBijdrage; } if (lid.LidBond) { rekening.Bondsbijdrage = decimal.Round((txtBondsBijdrage.ToFromDecimal / 2), 2); rekening.TotaalBedrag += rekening.Bondsbijdrage; } if (lid.IsRekening || lid.IsZelfBetaler) { rekening.ExtraBedrag = txtKostenRekening.ToFromDecimal; rekening.TotaalBedrag += rekening.ExtraBedrag; } // Ik ga hier de bijdrage voor taak uitrekenen // regeling toepassen && geen vaste taak && taak niet uitgevoerd of // regeling toepassen && afkopen if (rekening.Lid.Is_SEN1_65_SEN) { if (rekening.Lid.VrijwillgersRegelingIsVanToepassing) { rekening.BedragKortingVrijwilliger = 0; if (rekening.Lid.VrijwillgersVasteTaak) { rekening.BedragKortingVrijwilliger = txtKortingVrijwilliger.ToFromDecimal; if (lid.LidType == tblLid.constLidZwerflid) { rekening.BedragKortingVrijwilliger = (rekening.BedragKortingVrijwilliger * Convert.ToInt32(txtPercZwerf.Text)) / 100; } } } else { rekening.BedragKortingVrijwilliger = txtKortingVrijwilliger.ToFromDecimal; } } else { rekening.BedragKortingVrijwilliger = 0; } } rekening.TotaalBedrag -= rekening.BedragKortingVrijwilliger; rekening.TotaalBedrag += rekening.ContributieBedrag; rekening.Omschrijving = txtOmschrijving.Text + " " + lid.NetteNaam; rekening.IBAN = param.IBAN; rekening.BIC = param.BIC; rekening.AanmaakDatum = DateTime.Now; rekening.PeilDatum = dtpPeilDatum.Value; rekening.TypeRekening = 0; rekening.Verstuurd = false; rekening.VerstuurdDatum = DateTime.Now; if (rekening.TotaalBedrag != 0) { localRekeningen.Add(rekening); } } } ReportRoutines.CreateRekeningingenReport("Aangemaakte contributie rekeningen", localRekeningen, reportFileName, true); MessageBox.Show(localRekeningen.Count.ToString() + " rekeningen aangemaakt.\nZie " + reportFileName, "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); }