Gpos Nummern hinzugefügt
NewGkvAbrechnungPopUpView alle (ab)wählen funktion hinzugefügt InvoiceBases werden zu GkvAbrechnung gespeichert Fehlererkennung
This commit is contained in:
@@ -63,7 +63,7 @@ namespace BeWo.View.Detail.Accounting
|
||||
var gkv_abrechnung = e.Data.First();
|
||||
var gkv_filter = new GkvAbrechnungFilterDC(gkv_abrechnung);
|
||||
|
||||
gkv_abrechnung.InvoiceBaseOids = checked_invoice_bases;
|
||||
gkv_filter.SelectedInvoiceBases = checked_invoice_bases;
|
||||
|
||||
ServiceFacade.DoAccountingServiceAsync(
|
||||
svc => svc.MakeNewGkvAbrechnung(gkv_filter),
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<GroupBox Width="1100" Style="{StaticResource PopUpWindowStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="0,0,0,0">
|
||||
<Image Source="..\..\Ressources\Icons\CoinsDisabled.png" Height="28" />
|
||||
<Image Source="..\..\..\Ressources\Icons\CoinsDisabled.png" Height="28" />
|
||||
<TextBox Margin="10,4,0,0" Background="{x:Null}" Foreground="{DynamicResource MainGroupBoxForegroundBrush}"
|
||||
FontSize="20" BorderBrush="{x:Null}" VerticalAlignment="Stretch" BorderThickness="0,0,0,0"
|
||||
Padding="0,0,0,0" />
|
||||
@@ -97,6 +97,15 @@
|
||||
<dxg:TableView x:Name="gridView" ShowGroupPanel="False" CellValueChanging="TableView_CellValueChanging"/>
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
<StackPanel HorizontalAlignment="Left" Orientation="Horizontal" Grid.Row="2" Grid.ColumnSpan="2">
|
||||
<Button Margin="10 3 0 0"
|
||||
Name="button_checkAllLeistungen" Click="button_checkAll_Click"
|
||||
HorizontalAlignment="Left">Alle auswählen</Button>
|
||||
<Button Margin="10 3 0 0"
|
||||
Name="button_uncheckAllLeistungen" Click="button_uncheckAll_Click"
|
||||
HorizontalAlignment="Left">Alle abwählen</Button>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal" Grid.Row="2" Grid.ColumnSpan="2">
|
||||
<Button Content="Erstellen" x:Name="btn_create" Click="btn_create_Click" Padding="5 0" Margin="3" />
|
||||
<Button Content="Abbrechen" x:Name="btn_cancel" Click="btn_cancel_Click" Margin="3" Padding="5 0" />
|
||||
|
||||
@@ -34,7 +34,7 @@ namespace BeWo.View.Detail.Accounting
|
||||
this.CommandBindings.Add(new CommandBinding(ApplicationCommands.Close,
|
||||
(s, e) =>
|
||||
{
|
||||
this._InvoiceBaseDCs.Clear();
|
||||
this._InvoiceBaseDCs?.Clear();
|
||||
this.Fire();
|
||||
}));
|
||||
|
||||
@@ -175,5 +175,47 @@ namespace BeWo.View.Detail.Accounting
|
||||
{
|
||||
// tbd
|
||||
}
|
||||
|
||||
private void button_checkAll_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var visible = GetVisibleVMs();
|
||||
foreach (var item in visible)
|
||||
{
|
||||
item.IsChecked = true;
|
||||
}
|
||||
}
|
||||
private void button_uncheckAll_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var visible = GetVisibleVMs();
|
||||
foreach (var item in visible)
|
||||
{
|
||||
item.IsChecked = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private IList<InvoiceBaseVM> GetVisibleVMs()
|
||||
{
|
||||
var list = new List<InvoiceBaseVM>();
|
||||
|
||||
var items = grid_newInvoices.ItemsSource as IList<InvoiceBaseVM>;
|
||||
|
||||
if (items != null)
|
||||
{
|
||||
for (int i = 0; i < items.Count; i++)
|
||||
{
|
||||
if (grid_newInvoices.IsRowVisible(i))
|
||||
{
|
||||
var vm = grid_newInvoices.GetRow(i) as InvoiceBaseVM;
|
||||
if (vm != null)
|
||||
{
|
||||
list.Add(vm);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -254,9 +254,11 @@ namespace Dakota.Logic
|
||||
info.TarifkennzeichenBereich = DakotaConfig.TarifkennzeichenBereich;
|
||||
info.TarifkennzeichenSondertarif = DakotaConfig.TarifkennzeichenSondertarif;
|
||||
|
||||
info.AbrechnungspositionArtDerEinrichtung = DakotaConfig.AbrechnungspositionArtDerEinrichtung;
|
||||
info.AbrechnungspositionBehandlungsart = DakotaConfig.AbrechnungspositionBehandlungsart;
|
||||
info.AbrechnungspositionVergütungsart = DakotaConfig.AbrechnungspositionVergütungsart;
|
||||
info.AbrechnungspositionString = infoParameter.InvoiceItem.UnitDescription.Substring(6);
|
||||
|
||||
//info.AbrechnungspositionArtDerEinrichtung = DakotaConfig.AbrechnungspositionArtDerEinrichtung;
|
||||
//info.AbrechnungspositionBehandlungsart = DakotaConfig.AbrechnungspositionBehandlungsart;
|
||||
//info.AbrechnungspositionVergütungsart = DakotaConfig.AbrechnungspositionVergütungsart;
|
||||
|
||||
info.AnzahlMenge = infoParameter.InvoiceItem.UnitCount.Value;
|
||||
info.EinzelbetragAbrechnungsposition = infoParameter.InvoiceItem.AmountPerUnit.Value;
|
||||
|
||||
@@ -64,7 +64,8 @@ namespace Dakota.Models.Blocke
|
||||
// SegmentSLLAENF.Identifikationsnummer.SetValue(info.Identifikationsnummer);
|
||||
SegmentSLLAENF.Abrechnungscode.SetValue(info.Abrechnungscode);
|
||||
SegmentSLLAENF.Tarifkennzeichen.SetValue(info.Tarifkennzeichen);
|
||||
SegmentSLLAENF.ArtLeistung.SetValue(info.Abrechnungsposition);
|
||||
|
||||
SegmentSLLAENF.ArtLeistung.SetValue(info.GetAbrechnungsposition());
|
||||
SegmentSLLAENF.AnzahlMenge.SetValue(info.AnzahlMenge);
|
||||
SegmentSLLAENF.EinzelbetragAbrechnungsposition.SetValue(info.EinzelbetragAbrechnungsposition);
|
||||
SegmentSLLAENF.DatumLeistungserbringung.SetValue(info.DatumDerLeistungserbringung);
|
||||
|
||||
@@ -15,7 +15,9 @@ namespace Dakota.Models.Infos
|
||||
public SchlüsselTarifkennzeichen Tarifkennzeichen => new SchlüsselTarifkennzeichen(TarifkennzeichenBereich, TarifkennzeichenSondertarif);
|
||||
public SchlüsselTarifkennzeichenBereich TarifkennzeichenBereich { get; set; }
|
||||
public SchlüsselTarifkennzeichenSondertarif TarifkennzeichenSondertarif { get; set; }
|
||||
|
||||
|
||||
public string AbrechnungspositionString { get; set; }
|
||||
|
||||
public SchlüsselPos Abrechnungsposition => new SchlüsselPos(AbrechnungspositionArtDerEinrichtung, AbrechnungspositionBehandlungsart, AbrechnungspositionVergütungsart);
|
||||
public SchlüsselPosArtDerEinrichtung AbrechnungspositionArtDerEinrichtung { get; set; }
|
||||
public SchlüsselPosBehandlungsart AbrechnungspositionBehandlungsart { get; set; }
|
||||
@@ -32,5 +34,10 @@ namespace Dakota.Models.Infos
|
||||
public int Dauer { get; set; }
|
||||
|
||||
public string Text { get; set; }
|
||||
|
||||
internal string GetAbrechnungsposition()
|
||||
{
|
||||
return AbrechnungspositionString ?? Abrechnungsposition.Value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,6 +44,8 @@ namespace BeWo.Data.Entities
|
||||
|
||||
public virtual decimal Betrag { get; set; }
|
||||
|
||||
public virtual IList<InvoiceBase> InvoiceBases { get; set; }
|
||||
|
||||
// Kundennummer nur bei App8
|
||||
|
||||
/*
|
||||
|
||||
@@ -29,5 +29,10 @@
|
||||
<property column="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" name="IsActive" />
|
||||
<property column="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" name="SystemEntryID" />
|
||||
<property column="Betrag" type="decimal" name="Betrag" />
|
||||
|
||||
<bag name="InvoiceBases" table="gkvabrechnung2invoicebase" generic="true" cascade="none" batch-size="250">
|
||||
<key column="gkvabrechnungoid" />
|
||||
<many-to-many column="invoicebaseoid" class="BeWo.Data.Entities.InvoiceBase, BeWo.Data" />
|
||||
</bag>
|
||||
</class>
|
||||
</hibernate-mapping>
|
||||
|
||||
8
Model/Changes_2024_04_19_GkvAbrechnung2InvoiceBase.txt
Normal file
8
Model/Changes_2024_04_19_GkvAbrechnung2InvoiceBase.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
CREATE TABLE `gkvabrechnung2invoicebase` (
|
||||
`GkvAbrechnungOid` bigint NOT NULL,
|
||||
`InvoiceBaseOid` bigint NOT NULL,
|
||||
PRIMARY KEY (`GkvAbrechnungOid`,`InvoiceBaseOid`),
|
||||
KEY `fk_invoicebaseoid_idx` (`InvoiceBaseOid`),
|
||||
CONSTRAINT `fk_gkvabrechnungoid` FOREIGN KEY (`GkvAbrechnungOid`) REFERENCES `gkvabrechnung` (`Oid`),
|
||||
CONSTRAINT `fk_invoicebaseoid` FOREIGN KEY (`InvoiceBaseOid`) REFERENCES `invoicebase` (`Oid`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||
@@ -2,6 +2,8 @@
|
||||
using BeWo.Data.Entities;
|
||||
|
||||
using BS.Shared.DataContracts;
|
||||
using NHibernate.Linq;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BeWo.Service.DCEntityMapper
|
||||
{
|
||||
@@ -11,17 +13,17 @@ namespace BeWo.Service.DCEntityMapper
|
||||
{
|
||||
pDataContract.GkvAbrechnungOid = pEntity.Oid;
|
||||
pDataContract.GkvAbrechnungVersion = pEntity.Version;
|
||||
pDataContract.Notice = pEntity.Notice;
|
||||
pDataContract.Notice = pEntity.Notice;
|
||||
|
||||
pDataContract.IKDatenannahmestelle = pEntity.IKDatenannahmestelle;
|
||||
pDataContract.IKVersichertenKarte = pEntity.IKVersichertenKarte;
|
||||
pDataContract.IKLeistungserbringer = pEntity.IKLeistungserbringer;
|
||||
pDataContract.IKKostenträger = pEntity.IKKostentrager;
|
||||
pDataContract.IKDatenannahmestelle = pEntity.IKDatenannahmestelle;
|
||||
pDataContract.IKVersichertenKarte = pEntity.IKVersichertenKarte;
|
||||
pDataContract.IKLeistungserbringer = pEntity.IKLeistungserbringer;
|
||||
pDataContract.IKKostenträger = pEntity.IKKostentrager;
|
||||
|
||||
pDataContract.AbrechnungsZeitraumStart = pEntity.AbrechnungsZeitraumStart;
|
||||
pDataContract.AbrechnungsZeitraumEnde = pEntity.AbrechnungsZeitraumEnde;
|
||||
|
||||
pDataContract.Nutzdatendatei= pEntity.Nutzdatendatei;
|
||||
pDataContract.Nutzdatendatei = pEntity.Nutzdatendatei;
|
||||
pDataContract.Auftragsdatei = pEntity.Auftragsdatei;
|
||||
pDataContract.Transfername = pEntity.Transfername;
|
||||
|
||||
@@ -32,7 +34,9 @@ namespace BeWo.Service.DCEntityMapper
|
||||
pDataContract.ErstelltAm = pEntity.ErstelltAm;
|
||||
|
||||
pDataContract.Betrag = pEntity.Betrag;
|
||||
|
||||
|
||||
pDataContract.InvoiceBases = MapperFactory.InvoiceBaseDC_InvoiceBase.MapToNewDCs(pEntity.InvoiceBases);
|
||||
|
||||
return pDataContract;
|
||||
}
|
||||
|
||||
@@ -64,6 +68,22 @@ namespace BeWo.Service.DCEntityMapper
|
||||
|
||||
pEntity.Betrag = pDataContract.Betrag;
|
||||
|
||||
if (pEntity.InvoiceBases is null)
|
||||
pEntity.InvoiceBases = new List<InvoiceBase>();
|
||||
|
||||
pDataContract.InvoiceBases.ForEach(
|
||||
i =>
|
||||
{
|
||||
var original = DAOFactory.GenericDAO.LoadByID<InvoiceBase>(i.InvoiceBaseOid.Value);
|
||||
|
||||
MapperFactory.InvoiceBaseDC_InvoiceBase.MergeWithEntity(i, original);
|
||||
|
||||
pEntity.InvoiceBases.Add(original);
|
||||
}
|
||||
);
|
||||
|
||||
//MapperFactory.InvoiceBaseDC_InvoiceBase.MergeWithEntitys(pDataContract.InvoiceBases, pEntity.InvoiceBases);
|
||||
|
||||
return pEntity;
|
||||
}
|
||||
|
||||
|
||||
@@ -729,13 +729,19 @@ namespace BeWo.Service.ServiceImplementations
|
||||
|
||||
var mandatordc = new OperationsServiceImp().GetMandator();
|
||||
|
||||
foreach (var invoicebase_oid in abrechnungFilterDC.GkvAbrechnungDC.InvoiceBaseOids)
|
||||
var loaded_invoicebases = new List<InvoiceBaseDC>();
|
||||
|
||||
foreach (var invoicebase_oid in abrechnungFilterDC.SelectedInvoiceBases)
|
||||
{
|
||||
var service = DAOFactory.SearchDAO.GetServiceInvoiceByInvoiceBaseOid(invoicebase_oid);
|
||||
var invoicebase = DAOFactory.GenericDAO.GetByID<InvoiceBase>(invoicebase_oid);
|
||||
var orga = invoicebase.CostBearer2SupportConcept.CostBearer.Organisation;
|
||||
var customer = invoicebase.CostBearer2SupportConcept.SupportConcept.Customer;
|
||||
|
||||
var invoicebase_dc = MapperFactory.InvoiceBaseDC_InvoiceBase.MapToNewDC(invoicebase);
|
||||
|
||||
loaded_invoicebases.Add(invoicebase_dc);
|
||||
|
||||
var servicedc = MapperFactory.ServiceInvoiceDC_ServiceInvoice.MapToNewDC(service);
|
||||
var orgadc = MapperFactory.OrganisationDC_OrganisationMapper.MapToNewDC(orga);
|
||||
var customerdc = MapperFactory.CustomerDC_Customer.MapToNewDC(customer);
|
||||
@@ -778,6 +784,8 @@ namespace BeWo.Service.ServiceImplementations
|
||||
|
||||
gkv_abrechnung_dc.Betrag = file_from_manager.GetBetrag();
|
||||
|
||||
gkv_abrechnung_dc.InvoiceBases = loaded_invoicebases;
|
||||
|
||||
var gkv_abrechnung = MapperFactory.GkvAbrechnungDC_GkvAbrechnung.MapToNewEntity(gkv_abrechnung_dc);
|
||||
|
||||
DAOFactory.GenericDAO.Insert(gkv_abrechnung);
|
||||
|
||||
@@ -63,6 +63,6 @@ namespace BS.Shared.DataContracts
|
||||
public decimal Betrag { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public List<long> InvoiceBaseOids { get; set; }
|
||||
public IList<InvoiceBaseDC> InvoiceBases { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -19,8 +19,10 @@ namespace BS.Shared.DataContracts
|
||||
|
||||
}
|
||||
|
||||
|
||||
[DataMember]
|
||||
public GkvAbrechnungDC GkvAbrechnungDC { get; set; }
|
||||
|
||||
[DataMember]
|
||||
public List<long> SelectedInvoiceBases { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user