using System; using System.Collections.Generic; using System.ServiceModel; using BS.Shared; using BS.Shared.Core; using BS.Shared.DataContracts; namespace BeWo.Service.ServiceContracts { [ServiceContract] public interface IAccountingService { [FaultContract(typeof(BeWoFault))] [OperationContract] void DeactivateInvoiceBases(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] void DeactivateServiceInvoices(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] void DeactivateSettlementInvoice(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] List GenerateInitialServiceInvoices(long costBearerOid, long? supportConceptOid, DateTimeSpan invoicePeriod); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetAllActiveInvoiceBases(); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetInvoiceBases(DateTime? startDate, DateTime? endDate); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetInvoiceBases2(DateTime? startDate, DateTime? endDate, bool filterByInvoiceDate); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetInvoiceBasesForCostBearerAndId(DateTime? startDate, DateTime? endDate, long costBearerOid, String invoiceId); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetInvoiceBasesForCostBearerAndIdAndIsUsed(DateTime? startDate, DateTime? endDate, long costBearerOid, String invoiceId); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetGeneralInvoiceBasesForCustomer(long customerOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetGeneralInvoiceBasesForOrganisation(long organisationOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetGeneralInvoiceBasesForPerson(long personOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetInvoiceBasesForSupportConcept(InvoiceType type, long supportConceptOid); [FaultContract(typeof(BeWoFault))] [OperationContract] ServiceInvoiceDC GetServiceInvoiceByInvoiceBaseOid(long invoiceBaseOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetServiceInvoices(long costBearerOid, long? supportConceptOid, DateTimeSpan period); [FaultContract(typeof(BeWoFault))] [OperationContract] Settlement2DC GetSettlementByInvoiceBaseOid(long invoiceBaseOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetSettlementInvoicesForCostBearerAndPeriod(long costBearerOid, DateTime periodStart, DateTime periodEnd); [FaultContract(typeof(BeWoFault))] [OperationContract] List GetSettlementInvoicesForSupportConcept(long supportConceptOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List InsertNewInvoiceBases(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] List InsertNewServiceInvoices(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] List InsertNewSettlementInvoice(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] InvoiceBaseDC LoadInvoiceBaseByOid(long invoiceBaseOid); [FaultContract(typeof(BeWoFault))] [OperationContract] InvoiceNumberDC LoadInvoiceNumber(); [FaultContract(typeof(BeWoFault))] [OperationContract] ServiceInvoiceDC LoadServiceInvoiceByOid(long serviceInvoiceOid); [FaultContract(typeof(BeWoFault))] [OperationContract] List UpdateInvoiceBases(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] List SetInvoicePaid(List invoices, bool isPaid); [FaultContract(typeof(BeWoFault))] [OperationContract] InvoiceNumberDC UpdateInvoiceNumber(InvoiceNumberDC dc); [FaultContract(typeof(BeWoFault))] [OperationContract] List UpdateServiceInvoices(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] void UpdateSettlementInvoice(List invoices); [FaultContract(typeof(BeWoFault))] [OperationContract] List LoadInvoiceNumberList(); [FaultContract(typeof(BeWoFault))] [OperationContract] List UpdateInvoiceNumberList(List dclist); [FaultContract(typeof(BeWoFault))] [OperationContract] void StorniereInvoiceBases(List invoices); } }