Files

143 lines
5.9 KiB
C#
Raw Permalink Normal View History

2016-06-27 01:45:38 +02:00
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Text;
using DevExpress.XtraReports.UI;
using BeWo.Report.ReportObjects;
using BeWo.Report;
namespace LebenshilfeRemscheid.Alt
{
public partial class Spitzabrechnung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<SettlementRO>
{
public Spitzabrechnung()
{
InitializeComponent();
}
public void SetReportDataSource(SettlementRO pRO)
{
StringBuilder sb = new StringBuilder();
if (!String.IsNullOrEmpty(pRO.RecipientOrganisation))
{
sb.AppendLine(pRO.RecipientOrganisation);
}
if (!String.IsNullOrEmpty(pRO.RecipientContactPerson))
{
sb.AppendLine(pRO.RecipientContactPerson);
}
if (!String.IsNullOrEmpty(pRO.RecipientDivision))
{
sb.AppendLine(pRO.RecipientDivision);
}
if (!String.IsNullOrEmpty(pRO.RecipientStreet))
{
sb.AppendLine(pRO.RecipientStreet);
}
if (!String.IsNullOrEmpty(pRO.RecipientPostCodeAndTown))
{
sb.AppendLine(pRO.RecipientPostCodeAndTown);
}
lblAnschrift.Text = sb.ToString();
double approved = 0;
Double.TryParse(pRO.ApprovedFLS.Replace("FLS", "").Trim(), out approved);
double diff = approved - pRO.RecordedFLSDouble;
if (diff >= 0)
{
lblFLSBewilligt.Text =
String.Format(
"Es wurden {0:0.##} Fachleistungsstunden bewilligt.\nDemnach wurden {1:0.##} Stunden zu wenig geleistet.",
approved, diff);
}
else
{
lblFLSBewilligt.Text =
String.Format(
"Es wurden {0:0.##} Fachleistungsstunden bewilligt.\nDemnach wurden {1:0.##} Stunden zu viel geleistet.",
approved, diff*-1);
}
String anrede = "geehrte";
String ansprechpartner = "Damen und Herren";
if (!String.IsNullOrWhiteSpace(pRO.RecipientContactPerson))
{
}
lblAnrede.Text =
String.Format(
"Sehr {0} {1}\n\nanbei erhalten Sie die quittierten Betreuungsnachweise von {2} {3}.\n{2} {3} hat im vergangenen Bewilligungszeitraum {4:0.##} Fachleistungsstunden in Anspruch genommen.",
anrede, ansprechpartner, pRO.Salutation1, pRO.CustomerName, pRO.RecordedFLSDouble);
if (pRO.DifferentHourlyRateCount == 3)
{
cellZeitraum1.Text = String.Format("{0} - {1}", pRO.AccountingStartDateString, pRO.HourlyRate3EndDateString);
cellStunden1.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatz3);
pRO.Abrechnungstext1 = String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRate3);
pRO.Betrag1 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatz3 * (decimal)pRO.RateFactor * pRO.HourlyRate3);
cellZeitraum2.Text = String.Format("{0} - {1}",
pRO.HourlyRateOldStartDateString, pRO.HourlyRateOldEndDateString);
cellStunden2.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatzAlt);
pRO.Abrechnungstext2 += String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRateOld);
pRO.Betrag2 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAlt * (decimal)pRO.RateFactor * pRO.HourlyRateOld);
cellZeitraum3.Text = String.Format("{0} - {1}",
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString);
cellStunden3.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatzAktuell);
pRO.Abrechnungstext3 += String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRateNew);
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
}
else if (pRO.DifferentHourlyRateCount == 2)
{
cellZeitraum2.Text = String.Format("{0} - {1}",
pRO.AccountingStartDateString, pRO.HourlyRateOldEndDateString);
cellStunden2.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatzAlt);
pRO.Abrechnungstext2 += String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRateOld);
pRO.Betrag2 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAlt * (decimal)pRO.RateFactor * pRO.HourlyRateOld);
cellZeitraum3.Text = String.Format("{0} - {1}",
pRO.HourlyRateNewStartDateString, pRO.AccountingEndDateString);
cellStunden3.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatzAktuell);
pRO.Abrechnungstext3 += String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRateNew);
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
}
else
{
cellZeitraum3.Text = String.Format("{0} - {1}",
pRO.AccountingStartDateString, pRO.AccountingEndDateString);
cellStunden3.Text = String.Format("{0:0.00}", pRO.GeleisteteFLSMitStundensatzAktuell);
pRO.Abrechnungstext3 += String.Format("Fachleistungsstunden <20> {1:c}{0}",
pRO.RateFactor == 1 ? "" : " (x " + pRO.RateFactorText2 + ")", pRO.HourlyRateNew);
pRO.Betrag3 = String.Format("{0:c}", pRO.GeleisteteFLSMitStundensatzAktuell * (decimal)pRO.RateFactor * pRO.HourlyRateNew);
}
cellTotalFLS.Text = String.Format("{0:0.00}", pRO.RecordedFLSDouble);
this.bindingSource1.DataSource = pRO;
}
}
}