Files
BeWoPlaner/Report/ReportObjects/BudgetnachweisAnhangDiggaRO.cs

45 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using BeWo.Data.Access;
using BeWo.Data.Entities;
using BeWo.Service.DCEntityMapper;
using BeWo.Service.Invoicing;
using BeWo.Service.Plugins;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.Extensions;
namespace BeWo.Report.ReportObjects
{
public class BudgetnachweisAnhangDiggaRO : AbstractBeWoReportObject<BudgetnachweisAnhangDiggaRO>
{
public LWLDiggaBerechnung LWLDiggaBerechnung { get; set; }
public Settlement2DC SettlementDC { get; set; }
public SupportConceptCostBearerRelDC Costbearer2SupportConceptDC { get; set; }
public CustomerDC CustomerDC { get; set; }
public DateTime BewilligtStart { get; set; }
public DateTime BewilligtEnde { get; set; }
public List<EntgeltzeitraumDigga> Entgeltzeitraeume { get; set; }
public List<BudgetnachweisDiggaMonatsZeile> MonatsZeilen { get; set; }
public void Create(Settlement2DC si)
{
// die gesamte Berechnung ist für Anhang zum Budgetnachweis und für die Berechnung der Rechnung identisch, daher in Extraklasse LWLDiggaBerechnnung gelagert
CostBearer2SupportConcept cb2sc = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(si.CostBearer2SupportConceptOid.Value);
BewilligtStart = si.AccountingPeriodStart.Value;
BewilligtEnde = si.AccountingPeriodEnd.Value;
LWLDiggaBerechnung = PluginLoader.FindClass<LWLDiggaBerechnung>() ?? new LWLDiggaBerechnung();
LWLDiggaBerechnung.CreateLWLDiggaBerechnung(si, cb2sc, BewilligtStart, BewilligtEnde);
Customer customer = cb2sc.SupportConcept.Customer;
SettlementDC = si;
Costbearer2SupportConceptDC = MapperFactory.SupportConceptCostBearerRelDC_CostBearer2SupportConcept.MapToNewDC(cb2sc);
CustomerDC = MapperFactory.CustomerDC_Customer.MapToNewDC(customer);
MonatsZeilen = LWLDiggaBerechnung.MonatsZeilen;
Entgeltzeitraeume = LWLDiggaBerechnung.Entgeltzeitraeume;
}
}
}