Files
BeWoPlaner/ReportImp/PerspektivenEV/CollectiveBillingReportTab.cs

114 lines
3.8 KiB
C#

using System;
using BeWo.Report;
using BeWo.Report.ReportObjects;
using BeWo.Service.DCEntityMapper;
using DevExpress.XtraReports.UI;
using BS.Shared.Core;
using System.Collections.Generic;
namespace PerspektivenEV
{
[IDSpecificClass(Identifier = "SammelrechnungAnhang")]
public partial class SammelrechnungTab : XtraReport, IBeWoReport<ServiceInvoiceRO>
{
decimal laufendeSummeBetrag = 0;
decimal laufendeSummeJahr = 0;
decimal laufendeSummeMonat = 0;
public SammelrechnungTab()
{
this.InitializeComponent();
}
public void SetReportDataSource(ServiceInvoiceRO pRO)
{
//decimal totalPerMonth = 0;
DateTime abrechnungsMonatEnde = pRO.AccountingPeriodEnd;
if (pRO.ServiceInvoicePeriods != null)
{
//laufendeSummeBetrag = new Dictionary<int, decimal>();
//laufendeSummeJahr = new Dictionary<int, decimal>();
foreach (var sip in pRO.ServiceInvoicePeriods)
{
if (sip.Notice.Contains("Hochtaunuskreis"))
sip.Notice = "Betreutes Wohnen für Menschen mit psychischer Erkrankung im Hochtaunuskreis";
else if (sip.Notice.Contains("Frankfurt"))
sip.Notice = "Betreutes Wohnen Frankfurt/M.";
else if (sip.Notice.Contains("Körperbehinderte"))
sip.Notice = "Betreutes Wohnen für Menschen mit körperlicher-/ Sinnesbehinderung";
sip.ServiceInvoiceItems.Sort((a, b) => a.ServiceDescription.CompareTo(b.ServiceDescription));
}
}
//cellTotalPerMonth.Text = String.Format("{0:0.00}", totalPerMonth);
//if (xrTableCell14.Text == xrTableCell28.Text)
//{
// GroupFooter1.Visible = false;
//}
this.bindingSource1.DataSource = pRO;
}
private void xrTableCell14_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
var cell = sender as XRTableCell;
if (cell != null)
{
laufendeSummeBetrag += Decimal.Parse(cell.Text.Replace("€", "").Trim());
var lbl = sender as XRTableCell;
lbl.Text = String.Format("{0:c2}", laufendeSummeBetrag);
}
}
private void cellTotalPerMonth_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
var cell = sender as XRTableCell;
if (cell != null)
{
laufendeSummeMonat += Decimal.Parse(cell.Text.Trim());
var lbl = sender as XRTableCell;
lbl.Text = String.Format("{0:n2}", laufendeSummeMonat);
//laufendeSummeBetrag += item.NetAmount ?? 0;
//laufendeSummeJahr += decimal.Parse(item.UnitDescription);
//laufendeSummeMonat += item.UnitCount ?? 0;
}
}
private void xrTableCell23_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
var cell = sender as XRTableCell;
if (cell != null)
{
laufendeSummeJahr += Decimal.Parse(cell.Text.Trim());
var lbl = sender as XRTableCell;
lbl.Text = String.Format("{0:n0}", laufendeSummeJahr);
}
}
private void xrTableCell26_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
laufendeSummeMonat = 0;
}
private void xrTableCell25_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
laufendeSummeJahr = 0;
}
private void xrTableCell28_PrintOnPage(object sender, PrintOnPageEventArgs e)
{
laufendeSummeBetrag = 0;
}
}
}