143 lines
4.6 KiB
C#
143 lines
4.6 KiB
C#
using System;
|
|
using System.Linq;
|
|
using BS.Shared;
|
|
using BeWo.Report;
|
|
using BeWo.Report.ReportObjects;
|
|
using BeWo.Data.Entities;
|
|
using BeWo.Data.Access;
|
|
using System.Collections.Generic;
|
|
using BS.Shared.Core;
|
|
using BS.Shared.Services;
|
|
using BS.Shared.DataContracts;
|
|
using BeWo.Service.DCEntityMapper;
|
|
using BeWo.Service.ServiceImplementations;
|
|
using DevExpress.XtraReports.UI;
|
|
|
|
namespace AwoWesel
|
|
{
|
|
public partial class Finanzauswertung : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<FinanceRO>
|
|
{
|
|
public Finanzauswertung()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public void SetReportDataSource(FinanceRO pRO)
|
|
{
|
|
pRO.CalculateBillableAmountInReportTimeSpan();
|
|
|
|
if (pRO.ReportStartDate.HasValue && pRO.ReportEndDate.HasValue)
|
|
{
|
|
DateTime start = pRO.ReportStartDate.Value;
|
|
DateTime end = pRO.ReportEndDate.Value;
|
|
|
|
if (start.Year == end.Year && start.Month == end.Month && start.Day == 1 &&
|
|
end.Day == DateTime.DaysInMonth(end.Year, end.Month))
|
|
{
|
|
lblTitel.Text = String.Format("Finanzauswertung {0:MMMM yyyy}", start);
|
|
cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte Std. {0:MMMM}", start);
|
|
cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:MMMM}", start);
|
|
|
|
}
|
|
else
|
|
{
|
|
lblTitel.Text = String.Format("Finanzauswertung {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
|
|
cellBewilligtImZeitraumHeader.Text = String.Format("bewilligte Std {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
|
|
cellGeleistetImZeitraumHeader.Text = String.Format("geleistete Std. {0:dd.MM.yyyy}-{1:dd.MM.yyyy}", start, end);
|
|
|
|
}
|
|
if (pRO.RateFactor.HasValue)
|
|
{
|
|
cellRateFactorHeader.Text = String.Format("geleistete Std. x {0:0.##}", pRO.RateFactor);
|
|
}
|
|
else
|
|
{
|
|
cellRateFactorHeader.Visible = false;
|
|
cellRateFactor.Visible = false;
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
cellBewilligtImZeitraumHeader.Visible = false;
|
|
cellBewilligteFLSImBereich.Visible = false;
|
|
cellGeleistetImBereich.Visible = false;
|
|
cellGeleistetImZeitraumHeader.Visible = false;
|
|
cellRateFactorHeader.Visible = false;
|
|
cellRateFactor.Visible = false;
|
|
}
|
|
|
|
if (pRO.SupportConceptFinanceList != null)
|
|
{
|
|
foreach (var f in pRO.SupportConceptFinanceList)
|
|
{
|
|
String ba = GetKostentraeger(f);
|
|
|
|
if (String.IsNullOrEmpty(ba))
|
|
{
|
|
f.Custom1 = " ";
|
|
}
|
|
else
|
|
{
|
|
f.Custom1 = ba;
|
|
}
|
|
|
|
f.Custom2 = "Bis dato bewilligte Std.";
|
|
f.Custom3 = "Bis dato geleistete Std.";
|
|
f.Custom4 = "bewilligte Std.";
|
|
f.Custom5 = "geleistete Std.";
|
|
|
|
//if (!String.IsNullOrWhiteSpace(f.Custom1) && f.Custom1.Contains("67"))
|
|
//{
|
|
// f.Custom2 = "Bis dato bewilligte Std.";
|
|
// f.Custom3 = "Bis dato geleistete Std.";
|
|
// f.Custom4 = "bewilligte Std.";
|
|
// f.Custom5 = "geleistete Std.";
|
|
//}
|
|
//else
|
|
//{
|
|
// f.Custom2 = "Bis dato bewilligte FLS";
|
|
// f.Custom3 = "Bis dato geleistete FLS";
|
|
// f.Custom4 = "bewilligte FLS";
|
|
// f.Custom5 = "geleistete FLS";
|
|
//}
|
|
}
|
|
}
|
|
|
|
this.bindingSource1.DataSource = pRO;
|
|
}
|
|
|
|
private String GetKostentraeger(FinanceRO.SupportConceptFinanceRO f)
|
|
{
|
|
if (f.Costbearer2Supportconcept != null)
|
|
{
|
|
var c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(f.Costbearer2Supportconcept.CostBearer2SupportConceptOid.Value);
|
|
|
|
var org = c2s.CostBearer.Organisation;
|
|
|
|
return org.Name;
|
|
}
|
|
|
|
return "";
|
|
}
|
|
|
|
private void cellRateFactorHeader_BeforePrint(object sender, System.ComponentModel.CancelEventArgs e)
|
|
{
|
|
var ro = DetailReport.GetCurrentRow() as FinanceRO.SupportConceptFinanceRO;
|
|
|
|
if (ro != null)
|
|
{
|
|
if (ro.Custom1 != null && ro.Custom1.Contains("67"))
|
|
{
|
|
var cell = sender as XRTableCell;
|
|
if (cell != null)
|
|
{
|
|
cell.Text = "geleistete Std. x 1,5";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|