diff --git a/BeWo/ViewModel/OrganisationVM.cs b/BeWo/ViewModel/OrganisationVM.cs index 389469bf7..04b93b74e 100644 --- a/BeWo/ViewModel/OrganisationVM.cs +++ b/BeWo/ViewModel/OrganisationVM.cs @@ -91,6 +91,8 @@ namespace BeWo.ViewModel public static string PropertyName_Leistungserbringergruppe = nameof(Leistungserbringergruppe); + public static string PropertyName_BusinessPartnerId = nameof(BusinessPartnerId); + private readonly List _AllQualifications; private string _AccountNumber; @@ -171,6 +173,8 @@ namespace BeWo.ViewModel private string _Leistungserbringergruppe; + private string _BusinessPartnerId; + public OrganisationVM(OrganisationDC pDataContract, List pAllQualifications, List pPossibleFunctions, List pPossibleRoleInOrganisations) : base(pDataContract, pDataContract.OrganisationOid == null) { @@ -831,6 +835,21 @@ namespace BeWo.ViewModel } } + public string BusinessPartnerId + { + get { return this._BusinessPartnerId; } + + set + { + if (this.AreDifferent(this._BusinessPartnerId, value)) + { + this._BusinessPartnerId = value; + this.StoreDirtyInformation(this.AreDifferent(this.DataContract.BusinessPartnerId, value), nameof(BusinessPartnerId)); + this.FirePropertyChanged(nameof(BusinessPartnerId)); + } + } + } + protected void CommitContact(string pValue, ContactType pContactType) { List lOldContactDCs; @@ -896,6 +915,7 @@ namespace BeWo.ViewModel this._IKKostentrager = pDataContract.IKKostentrager; this._IKDatenannahmestelle = pDataContract.IKDatenannahmestelle; _Leistungserbringergruppe = pDataContract.Leistungserbringergruppe; + _BusinessPartnerId = pDataContract.BusinessPartnerId; _Function = pDataContract.Function; @@ -1003,6 +1023,7 @@ namespace BeWo.ViewModel pDataContract.IKKostentrager = this._IKKostentrager; pDataContract.IKKrankenkasse = this._IKKrankenkasse; pDataContract.Leistungserbringergruppe = _Leistungserbringergruppe; + pDataContract.BusinessPartnerId = _BusinessPartnerId; this.CommitContact(this._Phone, ContactType.business_Phone); this.CommitContact(this._Website, ContactType.business_Homepage); diff --git a/Data/Entities/Organisation.cs b/Data/Entities/Organisation.cs index 17810efec..3e8d40d3c 100644 --- a/Data/Entities/Organisation.cs +++ b/Data/Entities/Organisation.cs @@ -32,6 +32,8 @@ namespace BeWo.Data.Entities public static string PropertyName_Leistungserbringergruppe = nameof(Leistungserbringergruppe); + public static string PropertyName_BusinessPartnerId = nameof(BusinessPartnerId); + private Address _Address; private BankAccount _BankAccount; @@ -66,6 +68,7 @@ namespace BeWo.Data.Entities private string _Leistungserbringergruppe; + private string _BusinessPartnerId; public Organisation() { @@ -332,5 +335,21 @@ namespace BeWo.Data.Entities } } } + + public virtual string BusinessPartnerId + { + get + { + return this._BusinessPartnerId; + } + + set + { + if (this.AreDifferent(this._BusinessPartnerId, value)) + { + this._BusinessPartnerId = value; + } + } + } } } \ No newline at end of file diff --git a/Data/Mappings/Organisation.hbm.xml b/Data/Mappings/Organisation.hbm.xml index a222f1267..b5457f4e0 100644 --- a/Data/Mappings/Organisation.hbm.xml +++ b/Data/Mappings/Organisation.hbm.xml @@ -16,10 +16,11 @@ - - - - + + + + + diff --git a/Model/Changes_2024_09_16 Organisation BusinessPartnerId.txt b/Model/Changes_2024_09_16 Organisation BusinessPartnerId.txt new file mode 100644 index 000000000..4ef3b61e8 --- /dev/null +++ b/Model/Changes_2024_09_16 Organisation BusinessPartnerId.txt @@ -0,0 +1,2 @@ +ALTER TABLE `organisation` +ADD COLUMN `BusinessParnerId` VARCHAR(256) NULL DEFAULT NULL AFTER `Leistungserbringergruppe`; diff --git a/Report/ReportObjects/Settlement2RO.cs b/Report/ReportObjects/Settlement2RO.cs index 7706bcf53..290d314dc 100644 --- a/Report/ReportObjects/Settlement2RO.cs +++ b/Report/ReportObjects/Settlement2RO.cs @@ -141,6 +141,8 @@ namespace BeWo.Report.ReportObjects public bool HasGroupRecords { get; set; } + public String BusinessPartnerId { get; set; } + public List InvoiceItems { get; set; } public IList Fehlkontakte { get; set; } @@ -346,6 +348,11 @@ namespace BeWo.Report.ReportObjects if (contact != null) lResult.RecipientPhone = contact.Value; } + + if (!org.BusinessPartnerId.IsNullOrEmpty()) + { + lResult.BusinessPartnerId = "GP-Nummer: " + org.BusinessPartnerId; + } } lResult.SenderContactPerson = pDC.SenderContactPersonFirstName + " " + pDC.SenderContactPersonLastName; diff --git a/Service/DCEntityMapper/OrganisationDC_Organisation.cs b/Service/DCEntityMapper/OrganisationDC_Organisation.cs index 1251195e0..69eb81bc5 100644 --- a/Service/DCEntityMapper/OrganisationDC_Organisation.cs +++ b/Service/DCEntityMapper/OrganisationDC_Organisation.cs @@ -33,6 +33,8 @@ namespace BeWo.Service.DCEntityMapper pDataContract.IKDatenannahmestelle = pEntity.IKDatenannahmestelle; pDataContract.Leistungserbringergruppe = pEntity.Leistungserbringergruppe; + pDataContract.BusinessPartnerId = pEntity.BusinessPartnerId; + if (pEntity.Function != null) { pDataContract.Function = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Function); @@ -108,6 +110,8 @@ namespace BeWo.Service.DCEntityMapper pEntity.IKDatenannahmestelle = pDataContract.IKDatenannahmestelle; pEntity.Leistungserbringergruppe = pDataContract.Leistungserbringergruppe; + pEntity.BusinessPartnerId = pDataContract.BusinessPartnerId; + if (pDataContract.Function == null) { pEntity.Function = null; diff --git a/Shared/DataContracts/OrganisationDC.cs b/Shared/DataContracts/OrganisationDC.cs index 9bfab28fb..d6ab9f33c 100644 --- a/Shared/DataContracts/OrganisationDC.cs +++ b/Shared/DataContracts/OrganisationDC.cs @@ -180,5 +180,8 @@ namespace BS.Shared.DataContracts [DataMember] public string Leistungserbringergruppe { get; set; } + + [DataMember] + public string BusinessPartnerId { get; set; } } } \ No newline at end of file diff --git a/Shared/DataContracts/Settlement2DC.cs b/Shared/DataContracts/Settlement2DC.cs index 501502c4b..b43fc0286 100644 --- a/Shared/DataContracts/Settlement2DC.cs +++ b/Shared/DataContracts/Settlement2DC.cs @@ -224,7 +224,10 @@ namespace BS.Shared.DataContracts [DataMember] public bool HasGroupRecords { get; set; } - + + [DataMember] + public string BusinessPartnerId { get; set; } + [DataMember] public List InvoiceItems { get; set; }