Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo

This commit is contained in:
2024-11-05 16:04:54 +01:00
4 changed files with 53 additions and 16 deletions

View File

@@ -55,6 +55,7 @@
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.DataAccess.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Mvvm.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
@@ -65,6 +66,7 @@
<Reference Include="DevExpress.Office.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.RichEdit.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Web.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpo.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraPrinting.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Charts.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraCharts.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />

View File

@@ -31,6 +31,7 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.DataAccess.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Drawing.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Data.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Office.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
@@ -39,6 +40,7 @@
<Reference Include="DevExpress.Printing.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Data.Desktop.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Utils.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Xpo.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraPrinting.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Charts.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraCharts.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
@@ -67,12 +69,6 @@
<Compile Include="Quittierungsbeleg.Designer.cs">
<DependentUpon>Quittierungsbeleg.cs</DependentUpon>
</Compile>
<Compile Include="SbdLeistungsnachweisAbrechnung.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="SbdLeistungsnachweisAbrechnung.designer.cs">
<DependentUpon>SbdLeistungsnachweisAbrechnung.cs</DependentUpon>
</Compile>
<Compile Include="SbdRechnung.cs">
<SubType>Component</SubType>
</Compile>
@@ -110,9 +106,6 @@
<DependentUpon>Quittierungsbeleg.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="SbdLeistungsnachweisAbrechnung.resx">
<DependentUpon>SbdLeistungsnachweisAbrechnung.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="SbdRechnung.resx">
<DependentUpon>SbdRechnung.cs</DependentUpon>
<SubType>Designer</SubType>

View File

@@ -25,10 +25,10 @@ namespace LebenshilfeStadeMID
SetzeBetraege(pRO);
var subReport = new LeistungsnachweisAbrechnung();
subReport.SetReportDataSource(pRO);
//var subReport = new LeistungsnachweisAbrechnung();
//subReport.SetReportDataSource(pRO);
this.xrSubreport1.ReportSource = subReport;
//this.xrSubreport1.ReportSource = subReport;
this.bindingSource1.DataSource = pRO;

View File

@@ -15,22 +15,64 @@ namespace LebenshilfeStadeMID.Service
public override void BeforeSaveServiceRecord(ServiceRecord sr)
{
// Wenn "Schulbegleitender Dienst" dokumentiert wird muss EIN MAL PRO TAG eine Verfügungszeit pauschal eingetragen werden.
if (sr.ServiceDescription.ServiceCategory.Name == "Schulbegleitender Dienst" && sr.Start.HasValue && sr.CustomerOid.HasValue)
if (sr.ServiceDescription.ServiceCategory.Name == "Schulbegleitender Dienst" && sr.Start.HasValue && sr.SupportConcept != null)
{
var span = new DateTimeSpan() { StartDate = new DateTime(sr.Start.Value.Year, sr.Start.Value.Month, sr.Start.Value.Day), EndDate = sr.Start.Value.Date.AddDays(1).AddTicks(-1) };
var eintraegeAmTag = DAOFactory.SearchDAO.FindCustomerServiceRecords(sr.CustomerOid.Value, span, null, BS.Shared.ServiceRecordTypeId.DefaultActivity, true);
// Alle Einträge des Tages holen, für den dokumentiert wird
var span = new DateTimeSpan() { StartDate = new DateTime(sr.Start.Value.Year, sr.Start.Value.Month, sr.Start.Value.Day), EndDate = sr.Start.Value.Date.AddDays(1) };
var eintraegeAmTag = DAOFactory.SearchDAO.FindCustomerServiceRecords(sr.SupportConcept.Customer.Oid.Value, span, null, BS.Shared.ServiceRecordTypeId.DefaultActivity, true);
// Wenn es noch keinen Eintrag für den Klienten gibt muss die halbe Stunden Verfügungszeit gespeichert werden
if (eintraegeAmTag != null && eintraegeAmTag.Count == 0)
{
ErstelleVerfuegungszeit(sr);
}
// Wenn es schon welche gibt prüfen, ob da Verfügungszeit bei ist
else if (eintraegeAmTag != null && eintraegeAmTag.Count > 0)
{
// Gibt es keinen, neuen erstellen
if (eintraegeAmTag.Any(e => e.ServiceDescription.Name.ToLower().Contains("verfügungszeit")))
{
// nix
}
else
ErstelleVerfuegungszeit(sr);
}
}
}
private void ErstelleVerfuegungszeit(ServiceRecord serviceRecord)
{
ServiceRecord verfuegungszeit = new ServiceRecord()
{
Betrag = null,
CostBearer2SupportConcept = serviceRecord.CostBearer2SupportConcept,
CostBearer2SupportConceptOid = serviceRecord.CostBearer2SupportConceptOid,
Customer = serviceRecord.SupportConcept.Customer,
CustomerOid = serviceRecord.SupportConcept.Customer.Oid,
DistanceInMeter = null,
Employee = serviceRecord.Employee,
EmployeeOid = serviceRecord.Oid,
Group = null,
GroupEmployeeCount = null,
GroupOid = null,
GroupPersonCount = null,
GroupRoundedDuration = null,
InsTs = DateTime.Now,
InsUser = "System",
IP = serviceRecord.IP,
IsActive = BS.Shared.ActivationTypeId.Active,
IsCreatedInMobileClient = false,
ServiceRecordType = BS.Shared.ServiceRecordTypeId.DefaultActivity,
SupportConcept = serviceRecord.SupportConcept,
RoundedDuration = 30,
ServiceDescription = DAOFactory.SearchDAO.FindServiceDescriptionForCategory(serviceRecord.ServiceDescription.ServiceCategory.Oid.Value).FirstOrDefault(sr => sr.Name == "Verfügungszeit"),
Start = serviceRecord.Start.Value.AddMinutes((int)serviceRecord.RoundedDuration),
End = serviceRecord.Start.Value.AddMinutes((int)serviceRecord.RoundedDuration + 30),
DurationInStunden = BS.Shared.ZeiterfassungsDauer.Minuten,
};
DAOFactory.GenericDAO.Insert(verfuegungszeit);
}
}
}