using System; using System.Collections.Generic; using BS.Shared; using BS.Shared.Core; using BS.Shared.DataContracts; using DevExpress.XtraReports.UI; namespace BeWo.Report { public abstract class AbstractReportCreator { public String Tenant { get; set; } public string ReportPath { get; set; } public string TempPath { get; set; } public long? TemplateOid { get; set; } public abstract XtraReport CreateCustomerDataReport(long customerOid); public abstract XtraReport CreateCustomerInvoiceReport(long invoiceOid); public abstract XtraReport CreateAssessmentSheetReport(long customerOid, int month, int year); public abstract XtraReport CreateFlsReport(String flsReportId, String subType); public abstract XtraReport CreateQueryReport(long queryOid, String queryReportId); public abstract XtraReport CreateServiceInvoiceReport(String dcIds, long? invoiceBaseOid); public abstract XtraReport CreateServiceOverviewReportNew(int month, int year, QBFilterEnum filterType, long? customerOid, long? teamOid, long? empOid, long? orgaOid, long? serviceCategoryOid, int startDay, int endDay, bool nurFehlende); public abstract XtraReport CreateServiceOverviewAllCustomersReport(int month, int year, long orgaOid, long empOid, long? serviceCategoryOid, int startDay, int endDay, bool nurFehlende); public abstract XtraReport CreateServiceOverviewSingleCustomerReport(long customerOid, int month, int year, long orgaOid, long empOid, long? serviceCategoryOid, int startDay, int endDay); public abstract XtraReport CreateServiceRecordListReport(long employeeOid, long customerOid, long supportConceptOid, long costbearer2SupportConceptOid, bool isLimitedToAdditionalServices, DateTimeSpan limitingTimeSpan); public abstract XtraReport CreateSettlementReport(String dcId, long? invoiceBaseOid); public abstract XtraReport CreateSupportConceptReport(IList c2sOids, long? employeeOid, long? teamOid, int? expiredMonths, bool archivedSupportConcepts, DateTime? appointedDate); public abstract XtraReport CreateAdditionalServiceBookingReport(long addServiceRegionOid, Monat month, int year); public abstract XtraReport CreateEmployeeHourReport(long? employeeOid, IList teamOids, DateTime startDate, DateTime endDate, int ansicht); public abstract XtraReport CreateAuslastungReport(long? employeeOid, IList teamOids, DateTime startDate, DateTime endDate); // Wird im BeWoPlanerMobil benutzt, ist dort aber neugeschrieben wegen DevExpress Version 21! public abstract XtraReport CreateMediVerordListenReport(long? mvlOid); public abstract XtraReport CreateMediVerordListenMZfReport(long? mvlOid, bool mitZusatzfeldern); public abstract XtraReport CreateKalenderReport(long? employeeOid, AppointmentViewType viewType, DateTime rangeStartDate, DateTime rangeEndDate, List datesList, List userRights); public abstract XtraReport CreateFinanceReport(DateTime? start, DateTime? end); public abstract XtraReport CreateJahresberichtReport(int year, long? cbOid, long? teamOid, long? betreuungsartOid); public abstract XtraReport CreateEmployeeDataReport(long oid); public abstract XtraReport CreateNotizenReport(long kategorieOid, DateTime start, DateTime end); public abstract XtraReport CreateBewertungsstatistikReport(DateTime? start, DateTime? end, SupportConceptDC supportConcept, bool inclZeiterfassung, List ziele, List scZiele); public abstract XtraReport CreateSBDCharacteristicsReport(long customerOid); public abstract XtraReport CreateSbdLeistungsnachweisForAllCustomers(int month, int year, long orgaOid, long empOid, long serviceCategoryOid, int startDay, int endDay, bool checkServiceRecords, string bundesland); public abstract XtraReport CreateSbdLeistungsnachweisForSingleCustomerReport(long customerOid, int month, int year, long orgaOid, long empOid, long serviceCategoryOid, int startDay, int endDay, bool checkServiceRecords, string bundesland); public abstract XtraReport CreateCustomReport(long employeeOid, String reportName); public abstract XtraReport CreateAbsenceReport(DateTime dt, List abs, List empTypes, List teams, List feiertage); public abstract XtraReport CreateRosterReport(long wOid, DateTime dt, List feiertage); public abstract XtraReport CreateRosterReportIst(long wOid, DateTime dt); public abstract XtraReport CreateKilometerauswertung(long customerOid, DateTime rangeDate); public abstract XtraReport CreateKilometerauswertungForAllCustomers(List customerOids, DateTime rangeDate); public abstract XtraReport CreateEmployeeKilometerauswertung(long employeeOid, DateTime range); public abstract XtraReport CreateKilometerauswertungForAllEmployees(List employeeOids, DateTime rangeDate); public abstract XtraReport CreateVorlagenReport(long template, List objectOids, long table); public abstract XtraReport CreateAbwesenheitsPrintReport(List oids, string titel); public abstract XtraReport CreateEmployeeCustomerListReport(long? employeeOid); } }