Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo
This commit is contained in:
@@ -892,6 +892,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Intego", "ReportImp\Intego\
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WendepunktVelbert", "ReportImp\WendepunktVelbert\WendepunktVelbert.csproj", "{5BC38A8A-6BFB-405C-BF79-2C2594B80F6B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Jusina", "ReportImp\Jusina\Jusina.csproj", "{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|.NET = Debug|.NET
|
||||
@@ -10935,6 +10937,30 @@ Global
|
||||
{5BC38A8A-6BFB-405C-BF79-2C2594B80F6B}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{5BC38A8A-6BFB-405C-BF79-2C2594B80F6B}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5BC38A8A-6BFB-405C-BF79-2C2594B80F6B}.Release|x86.Build.0 = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|.NET.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|.NET.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|.NET.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|.NET.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|x86.ActiveCfg = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.DebugRemote|x86.Build.0 = Debug|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|.NET.ActiveCfg = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|.NET.Build.0 = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -11377,6 +11403,7 @@ Global
|
||||
{A17118EF-CC8C-4984-8225-8B9155CC14D8} = {D8A691C5-146D-4613-86CC-438F02FE9106}
|
||||
{23A3DE8B-C179-4C40-855B-1E36FBFF76F1} = {D8A691C5-146D-4613-86CC-438F02FE9106}
|
||||
{5BC38A8A-6BFB-405C-BF79-2C2594B80F6B} = {D8A691C5-146D-4613-86CC-438F02FE9106}
|
||||
{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7} = {D8A691C5-146D-4613-86CC-438F02FE9106}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {FBE985BB-9F0F-4DBB-8F94-ABC37A803FF9}
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
using BeWo.Service.Plugins;
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
namespace Jusina.Calculation
|
||||
{
|
||||
|
||||
public class CustomGroupDurationCalculator : GroupDurationCalculator
|
||||
{
|
||||
public override GroupDurationDC CalculateGroupDuration(int personCount, int employeeCount, decimal totalDuration)
|
||||
{
|
||||
return new GroupDurationDC()
|
||||
{
|
||||
SingleDuration = (totalDuration * employeeCount) / personCount,
|
||||
TotalDuration = totalDuration
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
80
ReportImp/Jusina/Jusina.csproj
Normal file
80
ReportImp/Jusina/Jusina.csproj
Normal file
@@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{E65C96E4-FD76-4C92-B161-B1E07ABBE1A7}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Jusina</RootNamespace>
|
||||
<AssemblyName>4974272973_Reports</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>..\..\CustomerDlls\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<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" />
|
||||
<Reference Include="DevExpress.RichEdit.v23.2.Core, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.RichEdit.v23.2.Export, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<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.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" />
|
||||
<Reference Include="DevExpress.XtraReports.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Calculations\CustomGroupDurationCalculator.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Data\Data.csproj">
|
||||
<Project>{B0D73E3D-4AE7-4024-93A6-DB1F46D7CCEE}</Project>
|
||||
<Name>Data</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Report\Report.csproj">
|
||||
<Project>{40d8b312-ea64-49e3-a31a-5e57ed4d5654}</Project>
|
||||
<Name>Report</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Service\Service.csproj">
|
||||
<Project>{094331c3-ecee-4c89-bbfd-4c9ded89f0ef}</Project>
|
||||
<Name>Service</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Shared\Shared.csproj">
|
||||
<Project>{2f50b83d-a3f0-4ec4-979a-3f9b7e3d8ed4}</Project>
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
36
ReportImp/Jusina/Properties/AssemblyInfo.cs
Normal file
36
ReportImp/Jusina/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("Jusina")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Jusina")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2024")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("c1fed668-adb9-47e0-b589-1389618e1b6e")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
@@ -1,24 +0,0 @@
|
||||
using System;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.Services;
|
||||
|
||||
namespace MobileEV
|
||||
{
|
||||
[IDSpecificClass(Identifier = "RundungWieLWL")]
|
||||
public class CustomCalculations : Calculations
|
||||
{
|
||||
public override int GetRoundedDuration(int minuteInterval, decimal durationInMinutes)
|
||||
{
|
||||
decimal lRoundedDuration = durationInMinutes;
|
||||
|
||||
if (minuteInterval > 0 && durationInMinutes >= 5)
|
||||
{
|
||||
lRoundedDuration = durationInMinutes % minuteInterval != 0
|
||||
? durationInMinutes + (minuteInterval - (durationInMinutes % minuteInterval))
|
||||
: durationInMinutes;
|
||||
}
|
||||
|
||||
return (int)Math.Round(lRoundedDuration, 0, MidpointRounding.AwayFromZero);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -55,7 +55,6 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Calculations\CustomCalculations.cs" />
|
||||
<Compile Include="CustomMitarbeiterstundenkontoBerechnung.cs" />
|
||||
<Compile Include="CustomReportCreator.cs" />
|
||||
<Compile Include="Invoicing\BetreuungsaufwandHelper.cs" />
|
||||
|
||||
@@ -2,10 +2,6 @@
|
||||
using BeWo.Service.Plugins;
|
||||
using BS.Shared.Extensions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MobileEV.Service
|
||||
{
|
||||
@@ -14,28 +10,49 @@ namespace MobileEV.Service
|
||||
public override void BeforeSaveServiceRecord(ServiceRecord sr)
|
||||
{
|
||||
|
||||
if (sr.CostBearer2SupportConcept != null && sr.CostBearer2SupportConcept.CostBearer.Organisation.Function != null && !sr.CostBearer2SupportConcept.CostBearer.Organisation.Function.Value.IsNullOrEmpty() && sr.CostBearer2SupportConcept.CostBearer.Organisation.Function.Value == "Rundung Selbstzahler wie LWL")
|
||||
{
|
||||
// Nach LWL-Regeln runden
|
||||
|
||||
if (sr.DurationMinutes <= 7)
|
||||
{
|
||||
sr.RoundedDuration = 0; // Runde auf 0 Minuten, da kleiner als 8
|
||||
}
|
||||
else
|
||||
{
|
||||
int rest = Convert.ToInt32(sr.DurationMinutes) % 15;
|
||||
if (sr.CostBearer2SupportConcept != null)
|
||||
{
|
||||
var costBearer = sr.CostBearer2SupportConcept.CostBearer;
|
||||
|
||||
if (rest <= 7)
|
||||
if (costBearer.Organisation.Function != null &&
|
||||
!costBearer.Organisation.Function.Value.IsNullOrEmpty())
|
||||
{
|
||||
var function = costBearer.Organisation.Function.Value;
|
||||
if (function.Equals("Rundung Selbstzahler wie LWL"))
|
||||
{
|
||||
sr.RoundedDuration = Convert.ToInt32(sr.DurationMinutes) - rest; // Abgerundet auf das vorherige Vielfache von 15
|
||||
if (sr.DurationMinutes <= 7)
|
||||
{
|
||||
sr.RoundedDuration = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
int rest = Convert.ToInt32(sr.DurationMinutes) % 15;
|
||||
|
||||
if (rest <= 7)
|
||||
{
|
||||
sr.RoundedDuration = Convert.ToInt32(sr.DurationMinutes) - rest;
|
||||
}
|
||||
else
|
||||
{
|
||||
sr.RoundedDuration = Convert.ToInt32(sr.DurationMinutes) + (15 - rest);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sr.RoundedDuration = Convert.ToInt32(sr.DurationMinutes) + (15 - rest); // Auf das nächste Vielfache von 15 aufrunden
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (function.Equals("Rundung wie LWL"))
|
||||
{
|
||||
var duration = sr.DurationMinutes;
|
||||
|
||||
if (duration >= 5)
|
||||
{
|
||||
duration = duration % 10 != 0
|
||||
? duration + (10 - (duration % 10))
|
||||
: duration;
|
||||
}
|
||||
|
||||
sr.RoundedDuration = (int)Math.Round(duration, 0, MidpointRounding.AwayFromZero);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user