Merge branch 'master' of ssh://float.beyondsoft.de/git/beyondSoft/BeWo into master
# Conflicts: # .gitignore # Service/Plugins/PluginLoader.cs
This commit is contained in:
11
.gitignore
vendored
11
.gitignore
vendored
@@ -503,6 +503,17 @@
|
||||
/ReportImp/VereinSozialmedizinStade/obj/Release
|
||||
/ReportImp/VereinSozialmedizinStade/obj/Debug
|
||||
/ReportImp/BewegtSystemischeBeratung/obj/Release
|
||||
/ReportImp/TeamPfeil/obj/Release
|
||||
/ReportImp/Bewolonia/obj/Debug
|
||||
/ReportImp/AlzeyTeilhabe/obj/Debug
|
||||
/ReportImp/AlzeyTeilhabe/obj/Release
|
||||
/ReportImp/Bewolonia/obj/Release
|
||||
/ReportImp/ForumEV/obj/Release
|
||||
/ReportImp/Kette2/obj/Debug
|
||||
/ReportImp/Kette2/obj/Release
|
||||
/ReportImp/ForumEV/obj/Debug
|
||||
/ReportImp/LebenshilfeDuisburgAtz/obj/Debug
|
||||
/ReportImp/LebenshilfeDuisburgAtz/obj/Release
|
||||
/ReportImp/VaroSozialagentur/obj/Debug
|
||||
/ReportImp/AmbulantBetreutesWohnenAstridPulm/obj/Debug
|
||||
/ReportImp/VaroSozialagentur/obj/Release
|
||||
|
||||
@@ -2355,6 +2355,7 @@
|
||||
<None Include="app.config">
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
|
||||
@@ -291,7 +291,8 @@
|
||||
<!-- Region Start -->
|
||||
<Label x:Name="StartLabel" Grid.Column="0" Grid.Row="2" VerticalAlignment="Center" Content="Start" />
|
||||
<dxe:DateEdit Grid.Column="1" Grid.Row="2" MaskType="DateTimeAdvancingCaret" Background="White"
|
||||
Height="23" MinWidth="80" Margin="3" EditValue="{Binding Controller.DisplayStartDate}" x:Name="StartDateDateEdit" />
|
||||
Height="23" MinWidth="80" Margin="3" EditValue="{Binding Controller.DisplayStartDate}" x:Name="StartDateDateEdit"
|
||||
EditValueChanged="StartDate_OnChange" />
|
||||
<dxe:TextEdit Grid.Column="2" Grid.Row="2" IsEnabled="{Binding Path=Controller.AllDay, Converter={StaticResource BoolReverseConverter}}"
|
||||
MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23"
|
||||
EditValue ="{Binding Controller.DisplayStartTime, Converter={StaticResource TimeSpanToDateTimeConverter}}" x:Name="StartTimeTextEdit"/>
|
||||
@@ -301,7 +302,8 @@
|
||||
<!-- Region Ende -->
|
||||
<Label x:Name="EndLabel" Grid.Column="0" Grid.Row="3" VerticalAlignment="Center" Content="Ende"/>
|
||||
<dxe:DateEdit Grid.Column="1" Grid.Row="3" MaskType="DateTimeAdvancingCaret" Background="White" Height="23" MinWidth="80"
|
||||
Margin="3" EditValue="{Binding Controller.DisplayEndDate}" x:Name="EndDate" />
|
||||
Margin="3" EditValue="{Binding Controller.DisplayEndDate}" x:Name="EndDate"
|
||||
EditValueChanged="EndDate_OnChange" />
|
||||
<dxe:TextEdit Grid.Column="2" Grid.Row="3" IsEnabled="{Binding Path=Controller.AllDay, Converter={StaticResource BoolReverseConverter}}" MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23" EditValue ="{Binding Controller.DisplayEndTime, Converter={StaticResource TimeSpanToDateTimeConverter}}" x:Name="EndTime"/>
|
||||
<!-- Endregion -->
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Collections.Specialized;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Windows;
|
||||
@@ -23,7 +22,6 @@ using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using BS.Shared.Extensions;
|
||||
using DevExpress.Mvvm.Native;
|
||||
using DevExpress.Xpf.Editors;
|
||||
using DevExpress.Xpf.Scheduler.UI;
|
||||
using DevExpress.XtraScheduler;
|
||||
@@ -474,7 +472,6 @@ namespace BeWo.Scheduler.View
|
||||
|
||||
var employeeOids = new List<long>();
|
||||
var customerOids = new List<long>();
|
||||
var overlaps = false;
|
||||
|
||||
foreach (var emp in employees)
|
||||
{
|
||||
@@ -488,22 +485,23 @@ namespace BeWo.Scheduler.View
|
||||
|
||||
var item = (SchedulerAppointmentVM) Appointment.GetSourceObject(Control.GetCoreStorage());
|
||||
|
||||
//if(!IsInTaskViewMode){
|
||||
// ServiceFacade.DoResourceServiceSync(definedBelow => overlaps = definedBelow.OverlappingAppointmentsExist(Appointment.Start, Appointment.End, employeeOids, customerOids, resources.Select(res => res.ResourceOid.Value).ToList(), ViewModel.NewVM.Originator.EmployeeOid, item?.CommitToDataContract().SchedulerAppointmentOid, string.Empty, Appointment.RecurrenceIndex));
|
||||
//var overlaps = false;
|
||||
//if(!IsInTaskViewMode){
|
||||
// ServiceFacade.DoResourceServiceSync(definedBelow => overlaps = definedBelow.OverlappingAppointmentsExist(Appointment.Start, Appointment.End, employeeOids, customerOids, resources.Select(res => res.ResourceOid.Value).ToList(), ViewModel.NewVM.Originator.EmployeeOid, item?.CommitToDataContract().SchedulerAppointmentOid, string.Empty, Appointment.RecurrenceIndex));
|
||||
|
||||
// if (overlaps)
|
||||
// {
|
||||
// var erg = MessageBox.Show("Dieser Termin überschneidet sich mit einem anderen bereits existierenden Termin.\n Möchten Sie ihn wirklich speichern?", "Überschneidung", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
|
||||
// if (overlaps)
|
||||
// {
|
||||
// var erg = MessageBox.Show("Dieser Termin überschneidet sich mit einem anderen bereits existierenden Termin.\n Möchten Sie ihn wirklich speichern?", "Überschneidung", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
|
||||
|
||||
// if (erg.Equals(MessageBoxResult.No))
|
||||
// {
|
||||
// Controller.Storage.EndUpdate();
|
||||
// return;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
// if (erg.Equals(MessageBoxResult.No))
|
||||
// {
|
||||
// Controller.Storage.EndUpdate();
|
||||
// return;
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
ViewModel.ShouldLockOverlappingAppointmentCheck = Appointment.Type == AppointmentType.ChangedOccurrence;
|
||||
ViewModel.ShouldLockOverlappingAppointmentCheck = Appointment.Type == AppointmentType.ChangedOccurrence;
|
||||
|
||||
if (Appointment.RecurrenceInfo != null)
|
||||
{
|
||||
@@ -680,39 +678,40 @@ namespace BeWo.Scheduler.View
|
||||
|
||||
private void AllDay_OnCheckedChange(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var source = (CheckEdit) e.Source;
|
||||
var value = source.IsChecked ?? false;
|
||||
//var source = (CheckEdit)e.Source;
|
||||
//var value = source.IsChecked ?? false;
|
||||
|
||||
if(value == false && _HasBeenUnchecked == false)
|
||||
{
|
||||
var displayStart = NewSchedulerAppointmentFormController.DisplayStart;
|
||||
var start = NewSchedulerAppointmentFormController.Start;
|
||||
var end = NewSchedulerAppointmentFormController.End;
|
||||
//if(value == false && _HasBeenUnchecked == false)
|
||||
//{
|
||||
// var displayStart = NewSchedulerAppointmentFormController.DisplayStart;
|
||||
// var start = NewSchedulerAppointmentFormController.Start;
|
||||
// var end = NewSchedulerAppointmentFormController.End;
|
||||
|
||||
if(!end.Equals(start))
|
||||
{
|
||||
_HasBeenUnchecked = true;
|
||||
// if(!end.Equals(start))
|
||||
// {
|
||||
// _HasBeenUnchecked = true;
|
||||
|
||||
var day = displayStart.Day;
|
||||
var month = displayStart.Month;
|
||||
var year = displayStart.Year;
|
||||
// var day = displayStart.Day;
|
||||
// var month = displayStart.Month;
|
||||
// var year = displayStart.Year;
|
||||
|
||||
var newEndDay = (end.AddDays(-1) >= start ? end.AddDays(-1) : start).Day;
|
||||
// var newEndDay = (end.AddDays(-1) >= start ? end.AddDays(-1) : start).Day;
|
||||
|
||||
var newStart = new DateTime(year, month, day, 0, 0, 0);
|
||||
var newEnd = new DateTime(year, month, newEndDay, 1, 0, 0);
|
||||
// var newStart = new DateTime(year, month, day, 0, 0, 0);
|
||||
// var newEnd = new DateTime(year, month, newEndDay, 1, 0, 0);
|
||||
|
||||
NewSchedulerAppointmentFormController.Start = newStart;
|
||||
NewSchedulerAppointmentFormController.End = newEnd;
|
||||
// NewSchedulerAppointmentFormController.Start = newStart;
|
||||
// NewSchedulerAppointmentFormController.End = newEnd;
|
||||
|
||||
NewSchedulerAppointmentFormController.DisplayStart = newStart;
|
||||
NewSchedulerAppointmentFormController.DisplayEnd = newEnd;
|
||||
// NewSchedulerAppointmentFormController.DisplayStart = newStart;
|
||||
// NewSchedulerAppointmentFormController.DisplayEnd = newEnd;
|
||||
|
||||
NewSchedulerAppointmentFormController.DisplayStartTime = new TimeSpan(0, 0, 0, 0);
|
||||
NewSchedulerAppointmentFormController.DisplayEndTime = new TimeSpan(0, 1, 0, 0);
|
||||
_HasBeenUnchecked = true;
|
||||
}
|
||||
}
|
||||
// NewSchedulerAppointmentFormController.DisplayStartTime = new TimeSpan(0, 0, 0, 0);
|
||||
// NewSchedulerAppointmentFormController.DisplayEndTime = new TimeSpan(0, 1, 0, 0);
|
||||
|
||||
// _HasBeenUnchecked = true;
|
||||
// }
|
||||
//}
|
||||
}
|
||||
|
||||
private void DueDate_OnEditValueChanged(object sender, EditValueChangedEventArgs e)
|
||||
@@ -726,6 +725,34 @@ namespace BeWo.Scheduler.View
|
||||
NewSchedulerAppointmentFormController.DisplayEndDate = newEnd;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Appointment.End:
|
||||
* ======================================================================================================
|
||||
* The End property is usually specified by the Appointment.Start and Appointment.
|
||||
* Duration properties, and is always calculated as End = Start + Duration.
|
||||
* When setting the End property, the Appointment. Start property retains its value, and the Appointment.
|
||||
* Duration is changed according to the new value of the End property.
|
||||
* If the new Appointment. End property's value is less than the Appointment.
|
||||
* Start property's value, an exception is raised.
|
||||
*
|
||||
*/
|
||||
|
||||
private void StartDate_OnChange(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
var newStartDate = (DateTime?) e.NewValue;
|
||||
var oldStartDate = (DateTime?) e.OldValue;
|
||||
|
||||
//BeWoApp.LogMessage($"EndDates: {newStartDate:dd.MM.yyyy HH:mm} vs. {oldStartDate:dd.MM.yyyy HH:mm}", DebugWindowMessageColor.Red);
|
||||
}
|
||||
|
||||
private void EndDate_OnChange(object sender, EditValueChangedEventArgs e)
|
||||
{
|
||||
var newEndDate = (DateTime?) e.NewValue;
|
||||
var oldEndDate = (DateTime?) e.OldValue;
|
||||
|
||||
//BeWoApp.LogMessage($"EndDates: {newEndDate:dd.MM.yyyy HH:mm} vs. {oldEndDate:dd.MM.yyyy HH:mm}", DebugWindowMessageColor.Red);
|
||||
}
|
||||
}
|
||||
|
||||
public class NewSchedulerAppointmentFormController : AppointmentFormController
|
||||
|
||||
@@ -331,17 +331,17 @@ namespace BeWo.Scheduler.ViewModel
|
||||
|
||||
private void UpdateSchedulerAppointment(Appointment app, SchedulerAppointmentVM vm)
|
||||
{
|
||||
vm.EmployeeList = app.CF_EmployeeList();
|
||||
vm.CustomerList = app.CF_CustomerList();
|
||||
vm.ResourceList = app.CF_ResourceList();
|
||||
vm.Originator = app.CF_Originator();
|
||||
vm.IsPrivate = app.CF_IsPrivate();
|
||||
vm.IsTask = app.CF_IsTask();
|
||||
vm.DueDate = app.CF_DueDate();
|
||||
vm.CompletedDate = app.CF_CompletedDate();
|
||||
vm.CompletedNotice = app.CF_CompletedNotice();
|
||||
vm.TaskDescription = app.CF_TaskDescription();
|
||||
vm.SupportConceptList = app.CF_SupportConceptList();
|
||||
vm.EmployeeList = app.CF_EmployeeList();
|
||||
vm.CustomerList = app.CF_CustomerList();
|
||||
vm.ResourceList = app.CF_ResourceList();
|
||||
vm.Originator = app.CF_Originator();
|
||||
vm.IsPrivate = app.CF_IsPrivate();
|
||||
vm.IsTask = app.CF_IsTask();
|
||||
vm.DueDate = app.CF_DueDate();
|
||||
vm.CompletedDate = app.CF_CompletedDate();
|
||||
vm.CompletedNotice = app.CF_CompletedNotice();
|
||||
vm.TaskDescription = app.CF_TaskDescription();
|
||||
vm.SupportConceptList = app.CF_SupportConceptList();
|
||||
vm.HasServiceRecordEntry = app.CF_HasServiceRecordEntry();
|
||||
|
||||
if(vm.IsTask)
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
</TextBlock.Text></TextBlock>
|
||||
<TextBlock HorizontalAlignment="Right" VerticalAlignment="Center" FontWeight="Bold"
|
||||
Margin="0 5 5 0" Height="50" FontSize="14"
|
||||
Text="{Binding EndClaim, Mode=OneWay, StringFormat=\{0:0.00\} €}" Grid.Column="2"
|
||||
Text="{Binding EndClaim, Mode=OneWay, StringFormat=\{0:c\}}" Grid.Column="2"
|
||||
Grid.RowSpan="3" />
|
||||
<Border VerticalAlignment="Stretch" CornerRadius="0 0 5 5" HorizontalAlignment="Stretch"
|
||||
BorderBrush="{x:Null}" BorderThickness="0 1 0 0" Grid.Row="3" Grid.ColumnSpan="3"
|
||||
|
||||
@@ -427,12 +427,12 @@ namespace BeWo.View.Detail
|
||||
}
|
||||
|
||||
var test = e.GetPosition(ChartRatings);
|
||||
tooltip1.PlacementTarget = chkShowServiceRecordRatings;
|
||||
tooltip1.PlacementTarget = ChartRatings;
|
||||
tooltip1.Placement = PlacementMode.Left;
|
||||
//tooltip1.HorizontalOffset = test.X + 10;
|
||||
//tooltip1.VerticalOffset = test.Y - 10;
|
||||
|
||||
|
||||
tooltip1.HorizontalOffset = test.X + 10;
|
||||
tooltip1.VerticalOffset = test.Y - 10;
|
||||
|
||||
|
||||
tooltip1.PopupAnimation = PopupAnimation.Fade;
|
||||
|
||||
//tooltip1.HorizontalOffset = 10;
|
||||
|
||||
@@ -471,19 +471,20 @@ namespace BeWo.View
|
||||
#if DEBUG
|
||||
//OpenServiceRecordEditViewTest();
|
||||
//return;
|
||||
|
||||
var kundennummer = "5473568546";
|
||||
//var apikey = "0b50c09aff87f20d9ced75340e04e5ccaa11dd3e7bcf25e9c4f94dc20d3cbb97";
|
||||
|
||||
Login _login = new Login(kundennummer, "kihqx-PiGka", "cb", "bewo", "0b50c09aff87f20d9ced75340e04e5ccaa11dd3e7bcf25e9c4f94dc20d3cbb97");
|
||||
|
||||
var x1 = _login.AnmeldevorgangDurchFuehren();
|
||||
|
||||
ServiceChatView = new ChatView(x1);
|
||||
ServiceChatView.Show();
|
||||
|
||||
return;
|
||||
|
||||
|
||||
#endif
|
||||
//#if DEBUG
|
||||
// var kundennummer = "5473568546";
|
||||
// //var apikey = "0b50c09aff87f20d9ced75340e04e5ccaa11dd3e7bcf25e9c4f94dc20d3cbb97";
|
||||
|
||||
// Login _login = new Login(kundennummer, "kihqx-PiGka", "cb", "bewo", "0b50c09aff87f20d9ced75340e04e5ccaa11dd3e7bcf25e9c4f94dc20d3cbb97");
|
||||
|
||||
// var x = _login.AnmeldevorgangDurchFuehren();
|
||||
|
||||
// ServiceChatView = new ChatView(x);
|
||||
// ServiceChatView.Show();
|
||||
//#else
|
||||
|
||||
if (ServiceChatView?.Visibility != Visibility.Visible)
|
||||
{
|
||||
@@ -495,6 +496,7 @@ namespace BeWo.View
|
||||
string _benutzername = "muellerp";
|
||||
string _passwort = "F5aTk9Co47JFJCWB2Z7Y";
|
||||
string _apikey;
|
||||
|
||||
#else
|
||||
|
||||
var empAppCodes = ServiceFacade.DoEmployeeServiceSync(r => r.GetAllEmployeeAppCodes(BeWoApp.LoggedOnUser.Employee.EmployeeOid));
|
||||
|
||||
@@ -124,12 +124,15 @@ namespace BeWo.View.Report.Rating
|
||||
if (SupportConceptRatingView.RatingList != null)
|
||||
{
|
||||
var scgoals = SupportConceptRatingView.RatingList.DCBackup;
|
||||
url += "&scgoals=";
|
||||
foreach (var goal in scgoals)
|
||||
if (scgoals.Count > 0)
|
||||
{
|
||||
url += goal.RatingOid;
|
||||
if (scgoals[scgoals.Count - 1] != goal)
|
||||
url += ",";
|
||||
url += "&scgoals=";
|
||||
foreach (var goal in scgoals)
|
||||
{
|
||||
url += goal.RatingOid;
|
||||
if (scgoals[scgoals.Count - 1] != goal)
|
||||
url += ",";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
2598
BeWoAllReports.sln
2598
BeWoAllReports.sln
File diff suppressed because it is too large
Load Diff
@@ -281,18 +281,11 @@
|
||||
<Content Include="Content\style.css.map" />
|
||||
<Content Include="Content\style.scss" />
|
||||
<Content Include="Content\fonts\signika-negative.regular.ttf" />
|
||||
<None Include="Scripts\jquery-3.4.1.intellisense.js" />
|
||||
<Content Include="Scripts\jquery-3.4.1.js" />
|
||||
<Content Include="Scripts\jquery-3.4.1.min.js" />
|
||||
<Content Include="Scripts\jquery-3.4.1.slim.js" />
|
||||
<Content Include="Scripts\jquery-3.4.1.slim.min.js" />
|
||||
<Content Include="Scripts\jquery.unobtrusive-ajax.js" />
|
||||
<Content Include="Scripts\jquery.unobtrusive-ajax.min.js" />
|
||||
<None Include="Scripts\jquery.validate-vsdoc.js" />
|
||||
<Content Include="Scripts\jquery.validate.js" />
|
||||
<Content Include="Scripts\jquery.validate.min.js" />
|
||||
<Content Include="Scripts\jquery.validate.unobtrusive.js" />
|
||||
<Content Include="Scripts\jquery.validate.unobtrusive.min.js" />
|
||||
<None Include="Scripts\jquery-3.6.0.intellisense.js" />
|
||||
<Content Include="Scripts\jquery-3.6.0.js" />
|
||||
<Content Include="Scripts\jquery-3.6.0.min.js" />
|
||||
<Content Include="Scripts\jquery-3.6.0.slim.js" />
|
||||
<Content Include="Scripts\jquery-3.6.0.slim.min.js" />
|
||||
<Content Include="Scripts\locale\de.js" />
|
||||
<Content Include="Scripts\mobileUtils.js" />
|
||||
<Content Include="Scripts\moment-with-locales.js" />
|
||||
@@ -558,10 +551,6 @@
|
||||
<ItemGroup>
|
||||
<Service Include="{4A0DDDB5-7A95-4FBF-97CC-616D07737A77}" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Scripts\jquery-3.4.1.min.map" />
|
||||
<Content Include="Scripts\jquery-3.4.1.slim.min.map" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Data\Data.csproj">
|
||||
<Project>{b0d73e3d-4ae7-4024-93a6-db1f46d7ccee}</Project>
|
||||
@@ -580,6 +569,12 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Scripts\jquery-3.6.0.slim.min.map" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Scripts\jquery-3.6.0.min.map" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
|
||||
@@ -256,6 +256,10 @@ namespace BeWoPlanerMobil.Controllers
|
||||
instsStr = insTs.Value.ToString("dd.MM.yyyy");
|
||||
}
|
||||
|
||||
//if (employee.Person.LastName == "Rapko")
|
||||
//{
|
||||
// int test = 0;
|
||||
//}
|
||||
if (applicationUsers.ContainsKey(employee.Oid))
|
||||
{
|
||||
miInput = new JsonRueckgabeMitarbeiterInput(applicationUsers[employee.Oid].Oid.ToString(), employee.Oid.ToString(), "1", applicationUsers[employee.Oid].LoginName,
|
||||
|
||||
@@ -64,7 +64,6 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
if(Model.Employee?.EmployeeOid.HasValue ?? false)
|
||||
{
|
||||
//Model.Customers = EmployeeService.GetActiveCompactCustomersForEmployee(Model.Employee.EmployeeOid.Value).OrderBy(customer => customer.LastName).ToList();
|
||||
Model.Customers = EmployeeService.GetActiveCustomersForEmployee(Model.Employee.EmployeeOid.Value, Model.SelectedCustomerFilter).OrderBy(customer => customer.LastName).ToList();
|
||||
}
|
||||
else
|
||||
@@ -83,10 +82,10 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
InitViewModel();
|
||||
|
||||
if (customerOid.HasValue && customerOid > 0)
|
||||
if (customerOid.HasValue && customerOid > 0 && Model.Customers.Any(customer => customer.CustomerOid.Equals(customerOid.Value)))
|
||||
{
|
||||
Model.SelectedCustomerOid = customerOid;
|
||||
Model.SelectedCustomer = CustomerService.LoadCustomer(customerOid.Value);
|
||||
Model.SelectedCustomer = CustomerService.LoadCustomer(customerOid.Value);
|
||||
}
|
||||
|
||||
return RedirectToActionPermanent("Customer");
|
||||
@@ -106,10 +105,14 @@ namespace BeWoPlanerMobil.Controllers
|
||||
var selectedCustomerOidString = formCollection[FormCollectionConstants.SelectedCustomerOidKey];
|
||||
if (long.TryParse(selectedCustomerOidString, out var selectedCustomerOid))
|
||||
{
|
||||
Model.SelectedCustomerOid = selectedCustomerOid == -1 ? (long?) null : selectedCustomerOid;
|
||||
Model.SelectedCustomer = selectedCustomerOid != -1 ? CustomerService.LoadCustomer(selectedCustomerOid) : null;
|
||||
var isCustomerInList = Model.Customers.Any(customer => customer.CustomerOid == selectedCustomerOid);
|
||||
|
||||
if(isCustomerInList)
|
||||
{
|
||||
Model.SelectedCustomerOid = selectedCustomerOid == -1 ? (long?)null : selectedCustomerOid;
|
||||
Model.SelectedCustomer = selectedCustomerOid != -1 ? CustomerService.LoadCustomer(selectedCustomerOid) : null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return RedirectToActionPermanent("Customer");
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
break;
|
||||
}
|
||||
|
||||
Model.Zeitraum = 7;
|
||||
Model.Zeitraum = zeitraum;
|
||||
}
|
||||
|
||||
var customerFilter = MobileUserSettingsUtils.GetSettingValueAsEnum(userSettings, SettingsKeys.CustomerFilterInZeiterfassung, CustomerFilterEnum.MyCustomer);
|
||||
@@ -218,7 +218,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
if (Model.SelectedSupportConceptListObject != null && !isInList)
|
||||
{
|
||||
Log.Info(String.Format("Model.SelectedSupportConceptListObject.Oid = {0} is not in list !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!", Model.SelectedSupportConceptListObject.CostBearer2SupportConceptOid));
|
||||
Log.Info($"Model.SelectedSupportConceptListObject.Oid = {Model.SelectedSupportConceptListObject.CostBearer2SupportConceptOid} is not in list !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
foreach (var o in Model.SupportConceptListObjects)
|
||||
@@ -230,7 +230,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
sb.Append(o.CostBearer2SupportConceptOid);
|
||||
}
|
||||
Log.Info(String.Format("Model.SupportConceptListObjects Oids = {0}", sb.ToString()));
|
||||
Log.Info($"Model.SupportConceptListObjects Oids = {sb}");
|
||||
|
||||
}
|
||||
//Log.Info(String.Format("Main() Set CostBearer2SupportConceptOid = -1: Model.SelectedSupportConceptListObject == null {0}, isInList {1}", Model.SelectedSupportConceptListObject == null, isInList));
|
||||
@@ -452,6 +452,26 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return _LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
var isLoaded = false;
|
||||
|
||||
foreach(var supportConcept in Model.SupportConcepts)
|
||||
{
|
||||
if(supportConcept.CostBearerRelations.Any(supportConceptCostBearerRel => supportConceptCostBearerRel.CostBearer2SupportConceptOid == oid))
|
||||
{
|
||||
isLoaded = true;
|
||||
}
|
||||
|
||||
if(isLoaded)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(!isLoaded)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
var statisticsInfo = OperationsService.GetServiceRecordStatisticInfo(oid, DateTime.Now);
|
||||
|
||||
var supportConceptStatisticsData = new SupportConceptStatisticsData();
|
||||
@@ -606,6 +626,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public static string ApplyWatermark(string blob, string watermarkImagePath)
|
||||
{
|
||||
if(string.IsNullOrWhiteSpace(blob))
|
||||
@@ -658,7 +679,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
try
|
||||
{
|
||||
var scm = Model?.ServiceCategories.FirstOrDefault(s => s.ServiceCategoryOid.Value == pServiceCategoryOid);
|
||||
var scm = Model.ServiceCategories.FirstOrDefault(s => s.ServiceCategoryOid.HasValue && s.ServiceCategoryOid.Value == pServiceCategoryOid);
|
||||
|
||||
if (scm != null)
|
||||
{
|
||||
@@ -689,7 +710,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
return _LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
// Damit sind die allgemeinen gemeint!
|
||||
var textbausteine = OperationsService.GetAllTextModules();
|
||||
foreach (var tm in textbausteine)
|
||||
{
|
||||
@@ -704,7 +725,9 @@ namespace BeWoPlanerMobil.Controllers
|
||||
textbausteine = textbausteine.Where(w => w.Employee.EmployeeOid == Model.Employee.EmployeeOid && w.IsOnlyForEmployee).ToList();
|
||||
}
|
||||
|
||||
Model.Textbausteine = textbausteine.Where(w => (w.ServiceCategory == null || w.ServiceCategory.ServiceCategoryOid == pServiceCategoryOid) && !String.IsNullOrEmpty(w.Text)).ToList();
|
||||
Model.Textbausteine = textbausteine.Where(
|
||||
w => (w.ServiceCategory == null || w.ServiceCategory.ServiceCategoryOid == pServiceCategoryOid) && !string.IsNullOrEmpty(w.Text)
|
||||
&& (w.IsOnlyForEmployee && w.Employee.EmployeeOid.Equals(Model.Employee.EmployeeOid) || !w.IsOnlyForEmployee)).ToList();
|
||||
|
||||
Model.Textbausteine.AddRangeIfElementsNotIn(Utils.GetParentTextModules(Model.Textbausteine));
|
||||
|
||||
@@ -882,7 +905,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
if(Model.IsInEditingMode)
|
||||
{
|
||||
var selectedRecordOid = Model.SelectedServiceRecordOid ?? Model.SelectedServiceRecord.ServiceRecordOid;
|
||||
Model.NewServiceRecord = OperationsService.GetServiceRecordById(selectedRecordOid.Value);
|
||||
Model.NewServiceRecord = Model.GetServiceRecord(selectedRecordOid.Value);
|
||||
}
|
||||
|
||||
if(Model.NewServiceRecord == null)
|
||||
@@ -1020,6 +1043,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return ResetEditingMode();
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
private ActionResult SaveGroupBooking()
|
||||
{
|
||||
var employeeCount = Model.SelectedEmployees.Count;
|
||||
@@ -1079,6 +1103,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return ResetEditingMode();
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
private ActionResult UpdateGroupBooking()
|
||||
{
|
||||
var dc = Model.SelectedServiceRecord;
|
||||
@@ -1204,6 +1229,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return ResetEditingMode();
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
private IEnumerable<ServiceRecordDC> CalculateGroupBookingDuration(int pEmployeeCount, int pCustomerCount, ICollection<long> cb2ScOids)
|
||||
{
|
||||
var compactSupportConcepts = CustomerServiceImp.GetCompactSupportConcepts((from sc in Model.SelectedSupportConcepts where sc.SupportConceptOid != null select sc.SupportConceptOid.Value).ToList(), GetUser().Employee.EmployeeOid);
|
||||
@@ -1321,9 +1347,9 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
|
||||
var dcsToChange = new List<ServiceRecordDC>();
|
||||
var oldSCs = new Dictionary<long, CompactSupportConceptDC>();
|
||||
var oldEmps = new Dictionary<long, CompactEmployeeDC>();
|
||||
var newKeys = new Dictionary<string, string>();
|
||||
var oldSCs = new Dictionary<long, CompactSupportConceptDC>();
|
||||
var oldEmps = new Dictionary<long, CompactEmployeeDC>();
|
||||
var newKeys = new Dictionary<string, string>();
|
||||
|
||||
foreach(var sc in Model.SelectedSupportConcepts)
|
||||
{
|
||||
@@ -1403,10 +1429,10 @@ namespace BeWoPlanerMobil.Controllers
|
||||
pGroupDC.ServiceRecordList.Add(newServiceRecord);
|
||||
}
|
||||
|
||||
newServiceRecord.Employee = emp;
|
||||
newServiceRecord.SupportConcept = CustomerService.LoadCompactSupportConceptDC(sc.SupportConceptOid.Value, null);
|
||||
newServiceRecord.CostBearer = sc.CostBearerRelations.ElementAt(0).CostBearer;
|
||||
newServiceRecord.Customer = sc.Customer;
|
||||
newServiceRecord.Employee = emp;
|
||||
newServiceRecord.SupportConcept = CustomerService.LoadCompactSupportConceptDC(sc.SupportConceptOid.Value, null);
|
||||
newServiceRecord.CostBearer = sc.CostBearerRelations.ElementAt(0).CostBearer;
|
||||
newServiceRecord.Customer = sc.Customer;
|
||||
newServiceRecord.CostBearer2SupportConceptOid = sc.CostBearerRelations.ElementAt(0).CostBearer2SupportConceptOid;
|
||||
}
|
||||
}
|
||||
@@ -1431,7 +1457,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
|
||||
long? cb2ScOid = Convert.ToInt64(formCollection[FormCollectionConstants.CostBearer2SupportConceptOidKey]);
|
||||
Log.Info(String.Format("SelectSupportConcept: {0}", cb2ScOid));
|
||||
Log.Info($"SelectSupportConcept: {cb2ScOid}");
|
||||
|
||||
LoadServiceCategoriesToModel(cb2ScOid);
|
||||
|
||||
@@ -1443,7 +1469,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.Error(String.Format("ERROR SelectSupportConcept: {0}\n{1}", e.Message, e.StackTrace));
|
||||
Log.Error($"ERROR SelectSupportConcept: {e.Message}\n{e.StackTrace}");
|
||||
|
||||
throw;
|
||||
}
|
||||
@@ -1454,10 +1480,9 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
if (cb2ScOid == null)
|
||||
{
|
||||
Log.Info(String.Format("cb2ScOid == null !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"));
|
||||
Log.Info("cb2ScOid == null !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||
}
|
||||
|
||||
|
||||
if (cb2ScOid == null && Model.IsInGroupBookingMode)
|
||||
{
|
||||
Model.ServiceCategories = CreateServiceCategoryModels(OperationsService.GetAllServiceDescriptions());
|
||||
@@ -1499,14 +1524,14 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.Info(String.Format("Model.SelectedSupportConcept == null !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"));
|
||||
Log.Info("Model.SelectedSupportConcept == null !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||
|
||||
}
|
||||
|
||||
if (Model.SelectedSupportConceptListObject == null ||
|
||||
Model.SelectedSupportConceptListObject.CostBearer2SupportConceptOid == "-1")
|
||||
{
|
||||
Log.Info(String.Format("LoadServiceCategoriesToModel() Model.SelectedSupportConceptListObject == null {0}, Model.SelectedSupportConceptListObject.CostBearer2SupportConceptOid == {1}", Model.SelectedSupportConceptListObject == null, Model.SelectedSupportConceptListObject?.CostBearer2SupportConceptOid));
|
||||
Log.Info($"LoadServiceCategoriesToModel() Model.SelectedSupportConceptListObject == null {Model.SelectedSupportConceptListObject == null}, Model.SelectedSupportConceptListObject.CostBearer2SupportConceptOid == {Model.SelectedSupportConceptListObject?.CostBearer2SupportConceptOid}");
|
||||
}
|
||||
|
||||
if (Model.ServiceCategories != null)
|
||||
@@ -1544,6 +1569,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return RedirectToActionPermanent("Main");
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string UpdateGoals(string pGoalOids)
|
||||
{
|
||||
if (Model == null)
|
||||
@@ -1575,6 +1601,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return _LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string SetServiceDescription(long pServiceDescriptionOid)
|
||||
{
|
||||
if (Model == null)
|
||||
@@ -1657,12 +1684,17 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
if (!wasSuccessful)
|
||||
{
|
||||
RedirectToActionPermanent("Main");
|
||||
return RedirectToActionPermanent("Main");
|
||||
}
|
||||
|
||||
Model.SelectedServiceRecordOid = serviceRecordOid;
|
||||
|
||||
var selectedServiceRecord = OperationsService.GetServiceRecordById(serviceRecordOid);
|
||||
var selectedServiceRecord = Model.GetServiceRecord(serviceRecordOid);
|
||||
|
||||
if(selectedServiceRecord == null)
|
||||
{
|
||||
return RedirectToActionPermanent("Main");
|
||||
}
|
||||
|
||||
Model.SelectedServiceRecord = selectedServiceRecord;
|
||||
Model.SelectedGoals = selectedServiceRecord.Goals;
|
||||
@@ -1703,7 +1735,8 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
return RedirectToActionPermanent("Main");
|
||||
}
|
||||
|
||||
|
||||
[Authorize]
|
||||
public string GetSelectedRecordInformation()
|
||||
{
|
||||
if (Model == null)
|
||||
@@ -1722,6 +1755,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return result;
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string GetSelectedRecordInformationWithOid(long oid)
|
||||
{
|
||||
if (Model == null)
|
||||
@@ -1823,17 +1857,15 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
var mandator = GetMandator();
|
||||
|
||||
var maxDaysEditSRsAllowedString = GetSettingValue(mandator.Settings, "MaxDaysEditServiceRecordsAllowed");
|
||||
var limitFuerZeiterfassungString = GetSettingValue(mandator.Settings, "AnzTageZeiterfassErfolgt");
|
||||
var maxDaysEditSRsAllowedString = GetSettingValue(mandator.Settings, SettingsKeys.MaxDaysEditServiceRecordsAllowed);
|
||||
var limitFuerZeiterfassungString = GetSettingValue(mandator.Settings, SettingsKeys.AnzTageZeiterfassErfolgt);
|
||||
|
||||
var isSuccessful1 = int.TryParse(maxDaysEditSRsAllowedString, out var maxDaysEditSRsAllowed);
|
||||
if (!isSuccessful1)
|
||||
if (!int.TryParse(maxDaysEditSRsAllowedString, out var maxDaysEditSRsAllowed))
|
||||
{
|
||||
maxDaysEditSRsAllowed = 0;
|
||||
}
|
||||
|
||||
var isSuccessful2 = int.TryParse(limitFuerZeiterfassungString, out var limitFuerZeiterfassung);
|
||||
if(!isSuccessful2)
|
||||
if(!int.TryParse(limitFuerZeiterfassungString, out var limitFuerZeiterfassung))
|
||||
{
|
||||
limitFuerZeiterfassung = 0;
|
||||
}
|
||||
@@ -1903,13 +1935,13 @@ namespace BeWoPlanerMobil.Controllers
|
||||
validationResults.Add(new ServiceRecord2Validation(checkServiceRecord, result, dateRangeString ?? ""));
|
||||
}
|
||||
|
||||
var allowOverlappingFLS = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateOverlappingFLS);
|
||||
var allowOverlappingFLSForEmployee = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateOverlappingFLSForEmployee);
|
||||
var allowMoreFLSThanApproved = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateMoreFLSThanApproved);
|
||||
var bookAfterSettlementInvoice = MobileSessionFacade.CheckForUserRight(UserRightType.BookServiceRecordAfterSettlementInvoice);
|
||||
var allowOverlappingFLS = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateOverlappingFLS);
|
||||
var allowOverlappingFLSForEmployee = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateOverlappingFLSForEmployee);
|
||||
var allowMoreFLSThanApproved = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateMoreFLSThanApproved);
|
||||
var bookAfterSettlementInvoice = MobileSessionFacade.CheckForUserRight(UserRightType.BookServiceRecordAfterSettlementInvoice);
|
||||
var bookServiceRecordOutOfSupportConcept = MobileSessionFacade.CheckForUserRight(UserRightType.BookServiceRecordOutOfSupportConcept);
|
||||
var allowCreateAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateAfterEmployeeSignature);
|
||||
var allowEditAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowEditAfterEmployeeSignature);
|
||||
var allowCreateAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreateAfterEmployeeSignature);
|
||||
var allowEditAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowEditAfterEmployeeSignature);
|
||||
|
||||
var allowCreateAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
var allowEditAll = MobileSessionFacade.CheckForUserRight(UserRightType.CreateAll);
|
||||
@@ -2058,7 +2090,12 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
var newResult = new ValidationResult();
|
||||
|
||||
var serviceRecord = OperationsService.GetServiceRecordById(serviceRecordOid);
|
||||
var serviceRecord = Model.GetServiceRecord(serviceRecordOid);
|
||||
|
||||
if(serviceRecord == null)
|
||||
{
|
||||
return _LeerzeichenFuerGetMethoden;
|
||||
}
|
||||
|
||||
var allowDeleteAfterEmployeeSignature = MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowDeleteAfterEmployeeSignature);
|
||||
|
||||
@@ -2087,6 +2124,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
: SerializeObject(new ValidationResult {KannTrotzdemGespeichertWerden = true, Message = null});
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string SetServiceRecordEmployee(long employeeOid)
|
||||
{
|
||||
try
|
||||
@@ -2131,6 +2169,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
[Authorize]
|
||||
public string CheckToken(string token)
|
||||
{
|
||||
if(token != null && token.Equals("abcd"))
|
||||
@@ -2222,22 +2261,22 @@ namespace BeWoPlanerMobil.Controllers
|
||||
|
||||
if (pIsInGroupBookingMode)
|
||||
{
|
||||
Model.PreviouslySelectedEmployee = Model.SelectedEmployee;
|
||||
Model.PreviouslySelectedEmployee = Model.SelectedEmployee;
|
||||
Model.PreviouslySelectedSupportConcept = Model.SelectedSupportConcept;
|
||||
|
||||
Model.SelectedSupportConcept = null;
|
||||
Model.SelectedEmployee = null;
|
||||
Model.SelectedEmployee = null;
|
||||
|
||||
Model.ServiceCategories = CreateServiceCategoryModels(OperationsService.GetAllServiceDescriptions());
|
||||
|
||||
Model.SelectedEmployees.AddIfNotIn(MobileSessionFacade.LoggedInCompactEmployee);
|
||||
|
||||
Model.IsInEditingMode = false;
|
||||
Model.IsInEditingMode = false;
|
||||
Model.SelectedServiceRecord = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.SelectedEmployee = Model.PreviouslySelectedEmployee;
|
||||
Model.SelectedEmployee = Model.PreviouslySelectedEmployee;
|
||||
Model.SelectedSupportConcept = Model.PreviouslySelectedSupportConcept;
|
||||
|
||||
Model.ServiceCategories.Clear();
|
||||
@@ -2275,17 +2314,16 @@ namespace BeWoPlanerMobil.Controllers
|
||||
return Logout();
|
||||
}
|
||||
|
||||
Model.NewServiceRecord = new ServiceRecordDC();
|
||||
Model.NewServiceRecord = new ServiceRecordDC();
|
||||
Model.SelectedServiceRecord = null;
|
||||
Model.IsInEditingMode = false;
|
||||
Model.IsInEditingMode = false;
|
||||
Model.SelectedSupportConcepts.Clear();
|
||||
Model.SelectedConceptCostBearerRelations.Clear();
|
||||
Model.SelectedCostbearerRelOids.Clear();
|
||||
Model.SelectedGroupOfPeopleOids.Clear();
|
||||
Model.SelectedEmployees = new List<CompactEmployeeDC> { MobileSessionFacade.LoggedInCompactEmployee };
|
||||
Model.SelectedEmployee = MobileSessionFacade.LoggedInCompactEmployee;
|
||||
Model.SelectedEmployees = new List<CompactEmployeeDC> { MobileSessionFacade.LoggedInCompactEmployee };
|
||||
Model.SelectedEmployee = MobileSessionFacade.LoggedInCompactEmployee;
|
||||
|
||||
//Model.ServiceCategories = CreateServiceCategoryModels(OperationsService.GetAllServiceDescriptions());
|
||||
LoadServiceCategoriesToModel(Model.CostBearer2SupportConceptOid);
|
||||
|
||||
var serviceDescriptions = Model.GetServiceDesctiptions();
|
||||
@@ -2466,8 +2504,8 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
customerFilter = CustomerFilterEnum.MyCustomer;
|
||||
}
|
||||
|
||||
UpdateSettings("CustomerFilterInZeiterfassung", customerFilter.ToString());
|
||||
|
||||
UpdateSettings(SettingsKeys.CustomerFilterInZeiterfassung, customerFilter.ToString());
|
||||
|
||||
return RedirectToActionPermanent("Main");
|
||||
}
|
||||
|
||||
@@ -425,6 +425,14 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
var oidList = ConvertOidStringToList(resourceOids);
|
||||
|
||||
foreach(var oid in oidList)
|
||||
{
|
||||
if(!Model.ResourceCategories2Resources.Any(a => a.Value.All(b => b.ResourceOid != oid)))
|
||||
{
|
||||
return JsonConvert.SerializeObject(new List<ResourceDC>());
|
||||
}
|
||||
}
|
||||
|
||||
var dateTimes = ConvertStringDatesToDateTimes(start, end);
|
||||
|
||||
var unavailableResources = KalenderService.CheckResourceAvailability(dateTimes.StartDate, dateTimes.EndDate, oidList, Model.SelectedAppointment?.SchedulerAppointmentOid);
|
||||
|
||||
2
BeWoPlanerMobil/Scripts/jquery-3.4.1.min.js
vendored
2
BeWoPlanerMobil/Scripts/jquery-3.4.1.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
2
BeWoPlanerMobil/Scripts/jquery-3.6.0.min.js
vendored
Normal file
2
BeWoPlanerMobil/Scripts/jquery-3.6.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
BeWoPlanerMobil/Scripts/jquery-3.6.0.min.map
Normal file
1
BeWoPlanerMobil/Scripts/jquery-3.6.0.min.map
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
2
BeWoPlanerMobil/Scripts/jquery-3.6.0.slim.min.js
vendored
Normal file
2
BeWoPlanerMobil/Scripts/jquery-3.6.0.slim.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
BeWoPlanerMobil/Scripts/jquery-3.6.0.slim.min.map
Normal file
1
BeWoPlanerMobil/Scripts/jquery-3.6.0.slim.min.map
Normal file
File diff suppressed because one or more lines are too long
205
BeWoPlanerMobil/Scripts/jquery.unobtrusive-ajax.js
vendored
205
BeWoPlanerMobil/Scripts/jquery.unobtrusive-ajax.js
vendored
@@ -1,205 +0,0 @@
|
||||
// Unobtrusive Ajax support library for jQuery
|
||||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
// @version v3.2.6
|
||||
//
|
||||
// Microsoft grants you the right to use these script files for the sole
|
||||
// purpose of either: (i) interacting through your browser with the Microsoft
|
||||
// website or online service, subject to the applicable licensing or use
|
||||
// terms; or (ii) using the files as included with a Microsoft product subject
|
||||
// to that product's license terms. Microsoft reserves all other rights to the
|
||||
// files not expressly granted by Microsoft, whether by implication, estoppel
|
||||
// or otherwise. Insofar as a script file is dual licensed under GPL,
|
||||
// Microsoft neither took the code under GPL nor distributes it thereunder but
|
||||
// under the terms set out in this paragraph. All notices and licenses
|
||||
// below are for informational purposes only.
|
||||
|
||||
/*jslint white: true, browser: true, onevar: true, undef: true, nomen: true, eqeqeq: true, plusplus: true, bitwise: true, regexp: true, newcap: true, immed: true, strict: false */
|
||||
/*global window: false, jQuery: false */
|
||||
|
||||
(function ($) {
|
||||
var data_click = "unobtrusiveAjaxClick",
|
||||
data_target = "unobtrusiveAjaxClickTarget",
|
||||
data_validation = "unobtrusiveValidation";
|
||||
|
||||
function getFunction(code, argNames) {
|
||||
var fn = window, parts = (code || "").split(".");
|
||||
while (fn && parts.length) {
|
||||
fn = fn[parts.shift()];
|
||||
}
|
||||
if (typeof (fn) === "function") {
|
||||
return fn;
|
||||
}
|
||||
argNames.push(code);
|
||||
return Function.constructor.apply(null, argNames);
|
||||
}
|
||||
|
||||
function isMethodProxySafe(method) {
|
||||
return method === "GET" || method === "POST";
|
||||
}
|
||||
|
||||
function asyncOnBeforeSend(xhr, method) {
|
||||
if (!isMethodProxySafe(method)) {
|
||||
xhr.setRequestHeader("X-HTTP-Method-Override", method);
|
||||
}
|
||||
}
|
||||
|
||||
function asyncOnSuccess(element, data, contentType) {
|
||||
var mode;
|
||||
|
||||
if (contentType.indexOf("application/x-javascript") !== -1) { // jQuery already executes JavaScript for us
|
||||
return;
|
||||
}
|
||||
|
||||
mode = (element.getAttribute("data-ajax-mode") || "").toUpperCase();
|
||||
$(element.getAttribute("data-ajax-update")).each(function (i, update) {
|
||||
var top;
|
||||
|
||||
switch (mode) {
|
||||
case "BEFORE":
|
||||
$(update).prepend(data);
|
||||
break;
|
||||
case "AFTER":
|
||||
$(update).append(data);
|
||||
break;
|
||||
case "REPLACE-WITH":
|
||||
$(update).replaceWith(data);
|
||||
break;
|
||||
default:
|
||||
$(update).html(data);
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function asyncRequest(element, options) {
|
||||
var confirm, loading, method, duration;
|
||||
|
||||
confirm = element.getAttribute("data-ajax-confirm");
|
||||
if (confirm && !window.confirm(confirm)) {
|
||||
return;
|
||||
}
|
||||
|
||||
loading = $(element.getAttribute("data-ajax-loading"));
|
||||
duration = parseInt(element.getAttribute("data-ajax-loading-duration"), 10) || 0;
|
||||
|
||||
$.extend(options, {
|
||||
type: element.getAttribute("data-ajax-method") || undefined,
|
||||
url: element.getAttribute("data-ajax-url") || undefined,
|
||||
cache: (element.getAttribute("data-ajax-cache") || "").toLowerCase() === "true",
|
||||
beforeSend: function (xhr) {
|
||||
var result;
|
||||
asyncOnBeforeSend(xhr, method);
|
||||
result = getFunction(element.getAttribute("data-ajax-begin"), ["xhr"]).apply(element, arguments);
|
||||
if (result !== false) {
|
||||
loading.show(duration);
|
||||
}
|
||||
return result;
|
||||
},
|
||||
complete: function () {
|
||||
loading.hide(duration);
|
||||
getFunction(element.getAttribute("data-ajax-complete"), ["xhr", "status"]).apply(element, arguments);
|
||||
},
|
||||
success: function (data, status, xhr) {
|
||||
asyncOnSuccess(element, data, xhr.getResponseHeader("Content-Type") || "text/html");
|
||||
getFunction(element.getAttribute("data-ajax-success"), ["data", "status", "xhr"]).apply(element, arguments);
|
||||
},
|
||||
error: function () {
|
||||
getFunction(element.getAttribute("data-ajax-failure"), ["xhr", "status", "error"]).apply(element, arguments);
|
||||
}
|
||||
});
|
||||
|
||||
options.data.push({ name: "X-Requested-With", value: "XMLHttpRequest" });
|
||||
|
||||
method = options.type.toUpperCase();
|
||||
if (!isMethodProxySafe(method)) {
|
||||
options.type = "POST";
|
||||
options.data.push({ name: "X-HTTP-Method-Override", value: method });
|
||||
}
|
||||
|
||||
// change here:
|
||||
// Check for a Form POST with enctype=multipart/form-data
|
||||
// add the input file that were not previously included in the serializeArray()
|
||||
// set processData and contentType to false
|
||||
var $element = $(element);
|
||||
if ($element.is("form") && $element.attr("enctype") == "multipart/form-data") {
|
||||
var formdata = new FormData();
|
||||
$.each(options.data, function (i, v) {
|
||||
formdata.append(v.name, v.value);
|
||||
});
|
||||
$("input[type=file]", $element).each(function () {
|
||||
var file = this;
|
||||
$.each(file.files, function (n, v) {
|
||||
formdata.append(file.name, v);
|
||||
});
|
||||
});
|
||||
$.extend(options, {
|
||||
processData: false,
|
||||
contentType: false,
|
||||
data: formdata
|
||||
});
|
||||
}
|
||||
// end change
|
||||
|
||||
$.ajax(options);
|
||||
}
|
||||
|
||||
function validate(form) {
|
||||
var validationInfo = $(form).data(data_validation);
|
||||
return !validationInfo || !validationInfo.validate || validationInfo.validate();
|
||||
}
|
||||
|
||||
$(document).on("click", "a[data-ajax=true]", function (evt) {
|
||||
evt.preventDefault();
|
||||
asyncRequest(this, {
|
||||
url: this.href,
|
||||
type: "GET",
|
||||
data: []
|
||||
});
|
||||
});
|
||||
|
||||
$(document).on("click", "form[data-ajax=true] input[type=image]", function (evt) {
|
||||
var name = evt.target.name,
|
||||
target = $(evt.target),
|
||||
form = $(target.parents("form")[0]),
|
||||
offset = target.offset();
|
||||
|
||||
form.data(data_click, [
|
||||
{ name: name + ".x", value: Math.round(evt.pageX - offset.left) },
|
||||
{ name: name + ".y", value: Math.round(evt.pageY - offset.top) }
|
||||
]);
|
||||
|
||||
setTimeout(function () {
|
||||
form.removeData(data_click);
|
||||
}, 0);
|
||||
});
|
||||
|
||||
$(document).on("click", "form[data-ajax=true] :submit", function (evt) {
|
||||
var name = evt.currentTarget.name,
|
||||
target = $(evt.target),
|
||||
form = $(target.parents("form")[0]);
|
||||
|
||||
form.data(data_click, name ? [{ name: name, value: evt.currentTarget.value }] : []);
|
||||
form.data(data_target, target);
|
||||
|
||||
setTimeout(function () {
|
||||
form.removeData(data_click);
|
||||
form.removeData(data_target);
|
||||
}, 0);
|
||||
});
|
||||
|
||||
$(document).on("submit", "form[data-ajax=true]", function (evt) {
|
||||
var clickInfo = $(this).data(data_click) || [],
|
||||
clickTarget = $(this).data(data_target),
|
||||
isCancel = clickTarget && (clickTarget.hasClass("cancel") || clickTarget.attr('formnovalidate') !== undefined);
|
||||
evt.preventDefault();
|
||||
if (!isCancel && !validate(this)) {
|
||||
return;
|
||||
}
|
||||
asyncRequest(this, {
|
||||
url: this.action,
|
||||
type: this.method || "GET",
|
||||
data: clickInfo.concat($(this).serializeArray())
|
||||
});
|
||||
});
|
||||
}(jQuery));
|
||||
@@ -1,16 +0,0 @@
|
||||
// Unobtrusive Ajax support library for jQuery
|
||||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
// @version v3.2.6
|
||||
//
|
||||
// Microsoft grants you the right to use these script files for the sole
|
||||
// purpose of either: (i) interacting through your browser with the Microsoft
|
||||
// website or online service, subject to the applicable licensing or use
|
||||
// terms; or (ii) using the files as included with a Microsoft product subject
|
||||
// to that product's license terms. Microsoft reserves all other rights to the
|
||||
// files not expressly granted by Microsoft, whether by implication, estoppel
|
||||
// or otherwise. Insofar as a script file is dual licensed under GPL,
|
||||
// Microsoft neither took the code under GPL nor distributes it thereunder but
|
||||
// under the terms set out in this paragraph. All notices and licenses
|
||||
// below are for informational purposes only.
|
||||
!function(t){function a(t,a){for(var e=window,r=(t||"").split(".");e&&r.length;)e=e[r.shift()];return"function"==typeof e?e:(a.push(t),Function.constructor.apply(null,a))}function e(t){return"GET"===t||"POST"===t}function r(t,a){e(a)||t.setRequestHeader("X-HTTP-Method-Override",a)}function n(a,e,r){var n;r.indexOf("application/x-javascript")===-1&&(n=(a.getAttribute("data-ajax-mode")||"").toUpperCase(),t(a.getAttribute("data-ajax-update")).each(function(a,r){switch(n){case"BEFORE":t(r).prepend(e);break;case"AFTER":t(r).append(e);break;case"REPLACE-WITH":t(r).replaceWith(e);break;default:t(r).html(e)}}))}function i(i,u){var o,c,d,s;if(o=i.getAttribute("data-ajax-confirm"),!o||window.confirm(o)){c=t(i.getAttribute("data-ajax-loading")),s=parseInt(i.getAttribute("data-ajax-loading-duration"),10)||0,t.extend(u,{type:i.getAttribute("data-ajax-method")||void 0,url:i.getAttribute("data-ajax-url")||void 0,cache:"true"===(i.getAttribute("data-ajax-cache")||"").toLowerCase(),beforeSend:function(t){var e;return r(t,d),e=a(i.getAttribute("data-ajax-begin"),["xhr"]).apply(i,arguments),e!==!1&&c.show(s),e},complete:function(){c.hide(s),a(i.getAttribute("data-ajax-complete"),["xhr","status"]).apply(i,arguments)},success:function(t,e,r){n(i,t,r.getResponseHeader("Content-Type")||"text/html"),a(i.getAttribute("data-ajax-success"),["data","status","xhr"]).apply(i,arguments)},error:function(){a(i.getAttribute("data-ajax-failure"),["xhr","status","error"]).apply(i,arguments)}}),u.data.push({name:"X-Requested-With",value:"XMLHttpRequest"}),d=u.type.toUpperCase(),e(d)||(u.type="POST",u.data.push({name:"X-HTTP-Method-Override",value:d}));var p=t(i);if(p.is("form")&&"multipart/form-data"==p.attr("enctype")){var f=new FormData;t.each(u.data,function(t,a){f.append(a.name,a.value)}),t("input[type=file]",p).each(function(){var a=this;t.each(a.files,function(t,e){f.append(a.name,e)})}),t.extend(u,{processData:!1,contentType:!1,data:f})}t.ajax(u)}}function u(a){var e=t(a).data(d);return!e||!e.validate||e.validate()}var o="unobtrusiveAjaxClick",c="unobtrusiveAjaxClickTarget",d="unobtrusiveValidation";t(document).on("click","a[data-ajax=true]",function(t){t.preventDefault(),i(this,{url:this.href,type:"GET",data:[]})}),t(document).on("click","form[data-ajax=true] input[type=image]",function(a){var e=a.target.name,r=t(a.target),n=t(r.parents("form")[0]),i=r.offset();n.data(o,[{name:e+".x",value:Math.round(a.pageX-i.left)},{name:e+".y",value:Math.round(a.pageY-i.top)}]),setTimeout(function(){n.removeData(o)},0)}),t(document).on("click","form[data-ajax=true] :submit",function(a){var e=a.currentTarget.name,r=t(a.target),n=t(r.parents("form")[0]);n.data(o,e?[{name:e,value:a.currentTarget.value}]:[]),n.data(c,r),setTimeout(function(){n.removeData(o),n.removeData(c)},0)}),t(document).on("submit","form[data-ajax=true]",function(a){var e=t(this).data(o)||[],r=t(this).data(c),n=r&&(r.hasClass("cancel")||void 0!==r.attr("formnovalidate"));a.preventDefault(),(n||u(this))&&i(this,{url:this.action,type:this.method||"GET",data:e.concat(t(this).serializeArray())})})}(jQuery);
|
||||
1288
BeWoPlanerMobil/Scripts/jquery.validate-vsdoc.js
vendored
1288
BeWoPlanerMobil/Scripts/jquery.validate-vsdoc.js
vendored
File diff suppressed because it is too large
Load Diff
1650
BeWoPlanerMobil/Scripts/jquery.validate.js
vendored
1650
BeWoPlanerMobil/Scripts/jquery.validate.js
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,432 +0,0 @@
|
||||
// Unobtrusive validation support library for jQuery and jQuery Validate
|
||||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
// @version v3.2.11
|
||||
|
||||
/*jslint white: true, browser: true, onevar: true, undef: true, nomen: true, eqeqeq: true, plusplus: true, bitwise: true, regexp: true, newcap: true, immed: true, strict: false */
|
||||
/*global document: false, jQuery: false */
|
||||
|
||||
(function (factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD. Register as an anonymous module.
|
||||
define("jquery.validate.unobtrusive", ['jquery-validation'], factory);
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
// CommonJS-like environments that support module.exports
|
||||
module.exports = factory(require('jquery-validation'));
|
||||
} else {
|
||||
// Browser global
|
||||
jQuery.validator.unobtrusive = factory(jQuery);
|
||||
}
|
||||
}(function ($) {
|
||||
var $jQval = $.validator,
|
||||
adapters,
|
||||
data_validation = "unobtrusiveValidation";
|
||||
|
||||
function setValidationValues(options, ruleName, value) {
|
||||
options.rules[ruleName] = value;
|
||||
if (options.message) {
|
||||
options.messages[ruleName] = options.message;
|
||||
}
|
||||
}
|
||||
|
||||
function splitAndTrim(value) {
|
||||
return value.replace(/^\s+|\s+$/g, "").split(/\s*,\s*/g);
|
||||
}
|
||||
|
||||
function escapeAttributeValue(value) {
|
||||
// As mentioned on http://api.jquery.com/category/selectors/
|
||||
return value.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g, "\\$1");
|
||||
}
|
||||
|
||||
function getModelPrefix(fieldName) {
|
||||
return fieldName.substr(0, fieldName.lastIndexOf(".") + 1);
|
||||
}
|
||||
|
||||
function appendModelPrefix(value, prefix) {
|
||||
if (value.indexOf("*.") === 0) {
|
||||
value = value.replace("*.", prefix);
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
function onError(error, inputElement) { // 'this' is the form element
|
||||
var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"),
|
||||
replaceAttrValue = container.attr("data-valmsg-replace"),
|
||||
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null;
|
||||
|
||||
container.removeClass("field-validation-valid").addClass("field-validation-error");
|
||||
error.data("unobtrusiveContainer", container);
|
||||
|
||||
if (replace) {
|
||||
container.empty();
|
||||
error.removeClass("input-validation-error").appendTo(container);
|
||||
}
|
||||
else {
|
||||
error.hide();
|
||||
}
|
||||
}
|
||||
|
||||
function onErrors(event, validator) { // 'this' is the form element
|
||||
var container = $(this).find("[data-valmsg-summary=true]"),
|
||||
list = container.find("ul");
|
||||
|
||||
if (list && list.length && validator.errorList.length) {
|
||||
list.empty();
|
||||
container.addClass("validation-summary-errors").removeClass("validation-summary-valid");
|
||||
|
||||
$.each(validator.errorList, function () {
|
||||
$("<li />").html(this.message).appendTo(list);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function onSuccess(error) { // 'this' is the form element
|
||||
var container = error.data("unobtrusiveContainer");
|
||||
|
||||
if (container) {
|
||||
var replaceAttrValue = container.attr("data-valmsg-replace"),
|
||||
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) : null;
|
||||
|
||||
container.addClass("field-validation-valid").removeClass("field-validation-error");
|
||||
error.removeData("unobtrusiveContainer");
|
||||
|
||||
if (replace) {
|
||||
container.empty();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function onReset(event) { // 'this' is the form element
|
||||
var $form = $(this),
|
||||
key = '__jquery_unobtrusive_validation_form_reset';
|
||||
if ($form.data(key)) {
|
||||
return;
|
||||
}
|
||||
// Set a flag that indicates we're currently resetting the form.
|
||||
$form.data(key, true);
|
||||
try {
|
||||
$form.data("validator").resetForm();
|
||||
} finally {
|
||||
$form.removeData(key);
|
||||
}
|
||||
|
||||
$form.find(".validation-summary-errors")
|
||||
.addClass("validation-summary-valid")
|
||||
.removeClass("validation-summary-errors");
|
||||
$form.find(".field-validation-error")
|
||||
.addClass("field-validation-valid")
|
||||
.removeClass("field-validation-error")
|
||||
.removeData("unobtrusiveContainer")
|
||||
.find(">*") // If we were using valmsg-replace, get the underlying error
|
||||
.removeData("unobtrusiveContainer");
|
||||
}
|
||||
|
||||
function validationInfo(form) {
|
||||
var $form = $(form),
|
||||
result = $form.data(data_validation),
|
||||
onResetProxy = $.proxy(onReset, form),
|
||||
defaultOptions = $jQval.unobtrusive.options || {},
|
||||
execInContext = function (name, args) {
|
||||
var func = defaultOptions[name];
|
||||
func && $.isFunction(func) && func.apply(form, args);
|
||||
};
|
||||
|
||||
if (!result) {
|
||||
result = {
|
||||
options: { // options structure passed to jQuery Validate's validate() method
|
||||
errorClass: defaultOptions.errorClass || "input-validation-error",
|
||||
errorElement: defaultOptions.errorElement || "span",
|
||||
errorPlacement: function () {
|
||||
onError.apply(form, arguments);
|
||||
execInContext("errorPlacement", arguments);
|
||||
},
|
||||
invalidHandler: function () {
|
||||
onErrors.apply(form, arguments);
|
||||
execInContext("invalidHandler", arguments);
|
||||
},
|
||||
messages: {},
|
||||
rules: {},
|
||||
success: function () {
|
||||
onSuccess.apply(form, arguments);
|
||||
execInContext("success", arguments);
|
||||
}
|
||||
},
|
||||
attachValidation: function () {
|
||||
$form
|
||||
.off("reset." + data_validation, onResetProxy)
|
||||
.on("reset." + data_validation, onResetProxy)
|
||||
.validate(this.options);
|
||||
},
|
||||
validate: function () { // a validation function that is called by unobtrusive Ajax
|
||||
$form.validate();
|
||||
return $form.valid();
|
||||
}
|
||||
};
|
||||
$form.data(data_validation, result);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
$jQval.unobtrusive = {
|
||||
adapters: [],
|
||||
|
||||
parseElement: function (element, skipAttach) {
|
||||
/// <summary>
|
||||
/// Parses a single HTML element for unobtrusive validation attributes.
|
||||
/// </summary>
|
||||
/// <param name="element" domElement="true">The HTML element to be parsed.</param>
|
||||
/// <param name="skipAttach" type="Boolean">[Optional] true to skip attaching the
|
||||
/// validation to the form. If parsing just this single element, you should specify true.
|
||||
/// If parsing several elements, you should specify false, and manually attach the validation
|
||||
/// to the form when you are finished. The default is false.</param>
|
||||
var $element = $(element),
|
||||
form = $element.parents("form")[0],
|
||||
valInfo, rules, messages;
|
||||
|
||||
if (!form) { // Cannot do client-side validation without a form
|
||||
return;
|
||||
}
|
||||
|
||||
valInfo = validationInfo(form);
|
||||
valInfo.options.rules[element.name] = rules = {};
|
||||
valInfo.options.messages[element.name] = messages = {};
|
||||
|
||||
$.each(this.adapters, function () {
|
||||
var prefix = "data-val-" + this.name,
|
||||
message = $element.attr(prefix),
|
||||
paramValues = {};
|
||||
|
||||
if (message !== undefined) { // Compare against undefined, because an empty message is legal (and falsy)
|
||||
prefix += "-";
|
||||
|
||||
$.each(this.params, function () {
|
||||
paramValues[this] = $element.attr(prefix + this);
|
||||
});
|
||||
|
||||
this.adapt({
|
||||
element: element,
|
||||
form: form,
|
||||
message: message,
|
||||
params: paramValues,
|
||||
rules: rules,
|
||||
messages: messages
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$.extend(rules, { "__dummy__": true });
|
||||
|
||||
if (!skipAttach) {
|
||||
valInfo.attachValidation();
|
||||
}
|
||||
},
|
||||
|
||||
parse: function (selector) {
|
||||
/// <summary>
|
||||
/// Parses all the HTML elements in the specified selector. It looks for input elements decorated
|
||||
/// with the [data-val=true] attribute value and enables validation according to the data-val-*
|
||||
/// attribute values.
|
||||
/// </summary>
|
||||
/// <param name="selector" type="String">Any valid jQuery selector.</param>
|
||||
|
||||
// $forms includes all forms in selector's DOM hierarchy (parent, children and self) that have at least one
|
||||
// element with data-val=true
|
||||
var $selector = $(selector),
|
||||
$forms = $selector.parents()
|
||||
.addBack()
|
||||
.filter("form")
|
||||
.add($selector.find("form"))
|
||||
.has("[data-val=true]");
|
||||
|
||||
$selector.find("[data-val=true]").each(function () {
|
||||
$jQval.unobtrusive.parseElement(this, true);
|
||||
});
|
||||
|
||||
$forms.each(function () {
|
||||
var info = validationInfo(this);
|
||||
if (info) {
|
||||
info.attachValidation();
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
adapters = $jQval.unobtrusive.adapters;
|
||||
|
||||
adapters.add = function (adapterName, params, fn) {
|
||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation.</summary>
|
||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
||||
/// <param name="params" type="Array" optional="true">[Optional] An array of parameter names (strings) that will
|
||||
/// be extracted from the data-val-nnnn-mmmm HTML attributes (where nnnn is the adapter name, and
|
||||
/// mmmm is the parameter name).</param>
|
||||
/// <param name="fn" type="Function">The function to call, which adapts the values from the HTML
|
||||
/// attributes into jQuery Validate rules and/or messages.</param>
|
||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
||||
if (!fn) { // Called with no params, just a function
|
||||
fn = params;
|
||||
params = [];
|
||||
}
|
||||
this.push({ name: adapterName, params: params, adapt: fn });
|
||||
return this;
|
||||
};
|
||||
|
||||
adapters.addBool = function (adapterName, ruleName) {
|
||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
||||
/// the jQuery Validate validation rule has no parameter values.</summary>
|
||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
||||
/// <param name="ruleName" type="String" optional="true">[Optional] The name of the jQuery Validate rule. If not provided, the value
|
||||
/// of adapterName will be used instead.</param>
|
||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
||||
return this.add(adapterName, function (options) {
|
||||
setValidationValues(options, ruleName || adapterName, true);
|
||||
});
|
||||
};
|
||||
|
||||
adapters.addMinMax = function (adapterName, minRuleName, maxRuleName, minMaxRuleName, minAttribute, maxAttribute) {
|
||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
||||
/// the jQuery Validate validation has three potential rules (one for min-only, one for max-only, and
|
||||
/// one for min-and-max). The HTML parameters are expected to be named -min and -max.</summary>
|
||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
||||
/// <param name="minRuleName" type="String">The name of the jQuery Validate rule to be used when you only
|
||||
/// have a minimum value.</param>
|
||||
/// <param name="maxRuleName" type="String">The name of the jQuery Validate rule to be used when you only
|
||||
/// have a maximum value.</param>
|
||||
/// <param name="minMaxRuleName" type="String">The name of the jQuery Validate rule to be used when you
|
||||
/// have both a minimum and maximum value.</param>
|
||||
/// <param name="minAttribute" type="String" optional="true">[Optional] The name of the HTML attribute that
|
||||
/// contains the minimum value. The default is "min".</param>
|
||||
/// <param name="maxAttribute" type="String" optional="true">[Optional] The name of the HTML attribute that
|
||||
/// contains the maximum value. The default is "max".</param>
|
||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
||||
return this.add(adapterName, [minAttribute || "min", maxAttribute || "max"], function (options) {
|
||||
var min = options.params.min,
|
||||
max = options.params.max;
|
||||
|
||||
if (min && max) {
|
||||
setValidationValues(options, minMaxRuleName, [min, max]);
|
||||
}
|
||||
else if (min) {
|
||||
setValidationValues(options, minRuleName, min);
|
||||
}
|
||||
else if (max) {
|
||||
setValidationValues(options, maxRuleName, max);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
adapters.addSingleVal = function (adapterName, attribute, ruleName) {
|
||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
||||
/// the jQuery Validate validation rule has a single value.</summary>
|
||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
||||
/// in the data-val-nnnn HTML attribute(where nnnn is the adapter name).</param>
|
||||
/// <param name="attribute" type="String">[Optional] The name of the HTML attribute that contains the value.
|
||||
/// The default is "val".</param>
|
||||
/// <param name="ruleName" type="String" optional="true">[Optional] The name of the jQuery Validate rule. If not provided, the value
|
||||
/// of adapterName will be used instead.</param>
|
||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
||||
return this.add(adapterName, [attribute || "val"], function (options) {
|
||||
setValidationValues(options, ruleName || adapterName, options.params[attribute]);
|
||||
});
|
||||
};
|
||||
|
||||
$jQval.addMethod("__dummy__", function (value, element, params) {
|
||||
return true;
|
||||
});
|
||||
|
||||
$jQval.addMethod("regex", function (value, element, params) {
|
||||
var match;
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
match = new RegExp(params).exec(value);
|
||||
return (match && (match.index === 0) && (match[0].length === value.length));
|
||||
});
|
||||
|
||||
$jQval.addMethod("nonalphamin", function (value, element, nonalphamin) {
|
||||
var match;
|
||||
if (nonalphamin) {
|
||||
match = value.match(/\W/g);
|
||||
match = match && match.length >= nonalphamin;
|
||||
}
|
||||
return match;
|
||||
});
|
||||
|
||||
if ($jQval.methods.extension) {
|
||||
adapters.addSingleVal("accept", "mimtype");
|
||||
adapters.addSingleVal("extension", "extension");
|
||||
} else {
|
||||
// for backward compatibility, when the 'extension' validation method does not exist, such as with versions
|
||||
// of JQuery Validation plugin prior to 1.10, we should use the 'accept' method for
|
||||
// validating the extension, and ignore mime-type validations as they are not supported.
|
||||
adapters.addSingleVal("extension", "extension", "accept");
|
||||
}
|
||||
|
||||
adapters.addSingleVal("regex", "pattern");
|
||||
adapters.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url");
|
||||
adapters.addMinMax("length", "minlength", "maxlength", "rangelength").addMinMax("range", "min", "max", "range");
|
||||
adapters.addMinMax("minlength", "minlength").addMinMax("maxlength", "minlength", "maxlength");
|
||||
adapters.add("equalto", ["other"], function (options) {
|
||||
var prefix = getModelPrefix(options.element.name),
|
||||
other = options.params.other,
|
||||
fullOtherName = appendModelPrefix(other, prefix),
|
||||
element = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(fullOtherName) + "']")[0];
|
||||
|
||||
setValidationValues(options, "equalTo", element);
|
||||
});
|
||||
adapters.add("required", function (options) {
|
||||
// jQuery Validate equates "required" with "mandatory" for checkbox elements
|
||||
if (options.element.tagName.toUpperCase() !== "INPUT" || options.element.type.toUpperCase() !== "CHECKBOX") {
|
||||
setValidationValues(options, "required", true);
|
||||
}
|
||||
});
|
||||
adapters.add("remote", ["url", "type", "additionalfields"], function (options) {
|
||||
var value = {
|
||||
url: options.params.url,
|
||||
type: options.params.type || "GET",
|
||||
data: {}
|
||||
},
|
||||
prefix = getModelPrefix(options.element.name);
|
||||
|
||||
$.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) {
|
||||
var paramName = appendModelPrefix(fieldName, prefix);
|
||||
value.data[paramName] = function () {
|
||||
var field = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(paramName) + "']");
|
||||
// For checkboxes and radio buttons, only pick up values from checked fields.
|
||||
if (field.is(":checkbox")) {
|
||||
return field.filter(":checked").val() || field.filter(":hidden").val() || '';
|
||||
}
|
||||
else if (field.is(":radio")) {
|
||||
return field.filter(":checked").val() || '';
|
||||
}
|
||||
return field.val();
|
||||
};
|
||||
});
|
||||
|
||||
setValidationValues(options, "remote", value);
|
||||
});
|
||||
adapters.add("password", ["min", "nonalphamin", "regex"], function (options) {
|
||||
if (options.params.min) {
|
||||
setValidationValues(options, "minlength", options.params.min);
|
||||
}
|
||||
if (options.params.nonalphamin) {
|
||||
setValidationValues(options, "nonalphamin", options.params.nonalphamin);
|
||||
}
|
||||
if (options.params.regex) {
|
||||
setValidationValues(options, "regex", options.params.regex);
|
||||
}
|
||||
});
|
||||
adapters.add("fileextensions", ["extensions"], function (options) {
|
||||
setValidationValues(options, "extension", options.params.extensions);
|
||||
});
|
||||
|
||||
$(function () {
|
||||
$jQval.unobtrusive.parse(document);
|
||||
});
|
||||
|
||||
return $jQval.unobtrusive;
|
||||
}));
|
||||
File diff suppressed because one or more lines are too long
@@ -13,7 +13,7 @@
|
||||
<script defer src="~/Content/fontawesome/all.min.js"></script>
|
||||
|
||||
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
|
||||
<script src="~/Scripts/jquery-3.4.1.min.js?v=1.1"></script>
|
||||
<script src="~/Scripts/jquery-3.6.0.min.js"></script>
|
||||
<script src="~/Scripts/umd/popper.min.js"></script>
|
||||
<script src="~/node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
|
||||
<link rel="stylesheet" href="~/Content/style.css">
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
|
||||
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
|
||||
</configSections>
|
||||
<system.diagnostics>
|
||||
<sources>
|
||||
<source name="System.ServiceModel" switchValue="All">
|
||||
<listeners>
|
||||
<add type="System.Diagnostics.DefaultTraceListener" name="Default">
|
||||
<filter type=""/>
|
||||
<filter type="" />
|
||||
</add>
|
||||
<add initializeData="logs\Traces.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="traceListener" traceOutputOptions="DateTime">
|
||||
<filter type=""/>
|
||||
<filter type="" />
|
||||
</add>
|
||||
</listeners>
|
||||
</source>
|
||||
@@ -30,109 +30,109 @@
|
||||
</appender>-->
|
||||
<appender name="DebugSQL" type="log4net.Appender.TraceAppender">
|
||||
<layout type="log4net.Layout.PatternLayout">
|
||||
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
|
||||
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
|
||||
</layout>
|
||||
</appender>
|
||||
<logger name="NHibernnate.SQL" additivity="false">
|
||||
<level value="DEBUG"/>
|
||||
<appender-ref ref="DebugSQL"/>
|
||||
<level value="DEBUG" />
|
||||
<appender-ref ref="DebugSQL" />
|
||||
</logger>
|
||||
<root>
|
||||
<priority value="INFO"/>
|
||||
<appender-ref ref="DebugSQL"/>
|
||||
<priority value="INFO" />
|
||||
<appender-ref ref="DebugSQL" />
|
||||
</root>
|
||||
</log4net>
|
||||
<system.webServer>
|
||||
<validation validateIntegratedModeConfiguration="false"/>
|
||||
<validation validateIntegratedModeConfiguration="false" />
|
||||
<modules>
|
||||
<add name="ASPHibernateSession" type="BeWoPlanerMobil.Service.ASPHibernateSessionManager, BeWoPlanerMobil, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
|
||||
<add name="ASPHibernateSession" type="BeWoPlanerMobil.Service.ASPHibernateSessionManager, BeWoPlanerMobil, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
|
||||
</modules>
|
||||
<directoryBrowse enabled="true"/>
|
||||
<directoryBrowse enabled="true" />
|
||||
<handlers>
|
||||
<remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
|
||||
<remove name="OPTIONSVerbHandler"/>
|
||||
<remove name="TRACEVerbHandler"/>
|
||||
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
|
||||
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
|
||||
<remove name="OPTIONSVerbHandler" />
|
||||
<remove name="TRACEVerbHandler" />
|
||||
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
|
||||
</handlers>
|
||||
</system.webServer>
|
||||
<system.serviceModel>
|
||||
<behaviors>
|
||||
<endpointBehaviors>
|
||||
<behavior name="SecurityBehavior">
|
||||
<MultitenancyExtension/>
|
||||
<SecurityExtension/>
|
||||
<MultitenancyExtension />
|
||||
<SecurityExtension />
|
||||
</behavior>
|
||||
<behavior name="SecurityAndSessionBehavior">
|
||||
<!--wichtig: erst Mulittenancy dann session dann security!-->
|
||||
<MultitenancyExtension/>
|
||||
<HibernateSessionExtension/>
|
||||
<SecurityExtension/>
|
||||
<MultitenancyExtension />
|
||||
<HibernateSessionExtension />
|
||||
<SecurityExtension />
|
||||
</behavior>
|
||||
</endpointBehaviors>
|
||||
<serviceBehaviors>
|
||||
<behavior name="returnFaults">
|
||||
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
|
||||
<serviceDebug includeExceptionDetailInFaults="true"/>
|
||||
<serviceThrottling maxConcurrentCalls="1000" maxConcurrentSessions="1000"/>
|
||||
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
|
||||
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false" />
|
||||
<serviceDebug includeExceptionDetailInFaults="true" />
|
||||
<serviceThrottling maxConcurrentCalls="1000" maxConcurrentSessions="1000" />
|
||||
<dataContractSerializer maxItemsInObjectGraph="2147483647" />
|
||||
</behavior>
|
||||
</serviceBehaviors>
|
||||
</behaviors>
|
||||
<extensions>
|
||||
<behaviorExtensions>
|
||||
<add name="MultitenancyExtension" type="BeWo.Service.Multitenancy.MultitenancyBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null"/>
|
||||
<add name="SecurityExtension" type="BeWo.Service.Security.SecurityBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null"/>
|
||||
<add name="HibernateSessionExtension" type="BeWo.Service.UnitOfWork.HibernateSessionBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null"/>
|
||||
<add name="MultitenancyExtension" type="BeWo.Service.Multitenancy.MultitenancyBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
|
||||
<add name="SecurityExtension" type="BeWo.Service.Security.SecurityBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
|
||||
<add name="HibernateSessionExtension" type="BeWo.Service.UnitOfWork.HibernateSessionBehaviorExtension, BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
|
||||
</behaviorExtensions>
|
||||
</extensions>
|
||||
<bindings>
|
||||
<basicHttpBinding>
|
||||
<binding name="BeWoBasicEndpoint" closeTimeout="00:05:00" openTimeout="00:05:00" receiveTimeout="00:10:00" sendTimeout="00:05:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="2147483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
||||
<security mode="None"/>
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
|
||||
<security mode="None" />
|
||||
</binding>
|
||||
<binding name="BeWoStreamingEndpoint" receiveTimeout="10:10:00" sendTimeout="10:01:00" maxBufferSize="65536" maxReceivedMessageSize="67108864" messageEncoding="Text" transferMode="StreamedRequest" useDefaultWebProxy="true">
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
||||
<security mode="None"/>
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
|
||||
<security mode="None" />
|
||||
</binding>
|
||||
<binding name="QueryServiceEndpoint" closeTimeout="00:05:00" openTimeout="00:05:00" receiveTimeout="00:10:00" sendTimeout="00:05:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="2147483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
|
||||
<security mode="None">
|
||||
<transport clientCredentialType="None" proxyCredentialType="None" realm=""/>
|
||||
<message clientCredentialType="UserName" algorithmSuite="Default"/>
|
||||
<transport clientCredentialType="None" proxyCredentialType="None" realm="" />
|
||||
<message clientCredentialType="UserName" algorithmSuite="Default" />
|
||||
</security>
|
||||
</binding>
|
||||
</basicHttpBinding>
|
||||
</bindings>
|
||||
<client>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="QueryServiceEndpoint" contract="QueryService.IQueryService" name="QueryServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoStreamingEndpoint" contract="BeWo.ServiceProxy.IStreamingService" name="StreamingServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IEmployeeService" name="EmployeeServiceEndpoint"/>
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.ICustomerService" name="CustomerServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IUserService" name="UserServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IValueListService" name="ValueListServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IDownloadService" name="DownloadServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IResourceService" name="BeWoBasicEndpoint"/>
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IOperationsService" name="OperationsServiceEndpoint"/>
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IAccountingService" name="AccountingServiceEndpoint"/>
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IAnalysisService" name="AnalysisServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IMailService" name="MailServiceEndpoint"/>
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="QueryServiceEndpoint" contract="QueryService.IQueryService" name="QueryServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoStreamingEndpoint" contract="BeWo.ServiceProxy.IStreamingService" name="StreamingServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IEmployeeService" name="EmployeeServiceEndpoint" />
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.ICustomerService" name="CustomerServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IUserService" name="UserServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IValueListService" name="ValueListServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IDownloadService" name="DownloadServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IResourceService" name="BeWoBasicEndpoint" />
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IOperationsService" name="OperationsServiceEndpoint" />
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IAccountingService" name="AccountingServiceEndpoint" />
|
||||
<endpoint behaviorConfiguration="BeWoServiceBehavior" binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IAnalysisService" name="AnalysisServiceEndpoint" />
|
||||
<endpoint binding="basicHttpBinding" bindingConfiguration="BeWoBasicEndpoint" contract="BeWo.ServiceProxy.IMailService" name="MailServiceEndpoint" />
|
||||
</client>
|
||||
</system.serviceModel>
|
||||
<appSettings>
|
||||
<add key="webpages:Version" value="3.0.0.0"/>
|
||||
<add key="webpages:Enabled" value="false"/>
|
||||
<add key="PreserveLoginUrl" value="true"/>
|
||||
<add key="ClientValidationEnabled" value="true"/>
|
||||
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
|
||||
<add key="MultitenancyPath" value="..\Host\Multitenancy\"/>
|
||||
<add key="LicenseInfoUrl" value="https://support.bewoplaner.de/api/getlicensecount.php?k=[TENANT]"/>
|
||||
<add key="LicenseOrderUrl" value="https://support.bewoplaner.de/lizenzbestellung/?k=[TENANT]"/>
|
||||
<add key="LicenseCancellationUrl" value="https://support.bewoplaner.de/api/licencecancellation.php?k=[TENANT]"/>
|
||||
<add key="ContractStateUrl" value="https://support.bewoplaner.de/api/getcontractstate.php?CustomerID=[TENANT]"/>
|
||||
<add key="webpages:Version" value="3.0.0.0" />
|
||||
<add key="webpages:Enabled" value="false" />
|
||||
<add key="PreserveLoginUrl" value="true" />
|
||||
<add key="ClientValidationEnabled" value="true" />
|
||||
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
|
||||
<add key="MultitenancyPath" value="..\Host\Multitenancy\" />
|
||||
<add key="LicenseInfoUrl" value="https://support.bewoplaner.de/api/getlicensecount.php?k=[TENANT]" />
|
||||
<add key="LicenseOrderUrl" value="https://support.bewoplaner.de/lizenzbestellung/?k=[TENANT]" />
|
||||
<add key="LicenseCancellationUrl" value="https://support.bewoplaner.de/api/licencecancellation.php?k=[TENANT]" />
|
||||
<add key="ContractStateUrl" value="https://support.bewoplaner.de/api/getcontractstate.php?CustomerID=[TENANT]" />
|
||||
<!--<add key="PluginPathtest" value="D:\Projects\beyondSoft\BeWoPlaner\BeWo\Host\bin" />-->
|
||||
<!-- Lyndon -->
|
||||
<add key="PluginPath" value="C:\Users\lyndo\BeWo\Host\bin"/>
|
||||
<add key="PluginPath" value="C:\Users\lyndo\BeWo\Host\bin" />
|
||||
<!-- /Lyndon -->
|
||||
</appSettings>
|
||||
<!--
|
||||
@@ -149,69 +149,69 @@
|
||||
</httpModules>-->
|
||||
<compilation debug="true" defaultLanguage="c#" targetFramework="4.7.2">
|
||||
<assemblies>
|
||||
<add assembly="BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null"/>
|
||||
<add assembly="BeWo.Service, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />
|
||||
</assemblies>
|
||||
</compilation>
|
||||
<pages controlRenderingCompatibilityVersion="4.0">
|
||||
<namespaces>
|
||||
<add namespace="System.Web.Helpers"/>
|
||||
<add namespace="System.Web.Mvc"/>
|
||||
<add namespace="System.Web.Mvc.Ajax"/>
|
||||
<add namespace="System.Web.Mvc.Html"/>
|
||||
<add namespace="System.Web.Optimization"/>
|
||||
<add namespace="System.Web.Routing"/>
|
||||
<add namespace="System.Web.WebPages"/>
|
||||
<add namespace="System.Web.Helpers" />
|
||||
<add namespace="System.Web.Mvc" />
|
||||
<add namespace="System.Web.Mvc.Ajax" />
|
||||
<add namespace="System.Web.Mvc.Html" />
|
||||
<add namespace="System.Web.Optimization" />
|
||||
<add namespace="System.Web.Routing" />
|
||||
<add namespace="System.Web.WebPages" />
|
||||
</namespaces>
|
||||
</pages>
|
||||
<authentication mode="Forms">
|
||||
<forms loginUrl="~/Login"/>
|
||||
<forms loginUrl="~/Login" />
|
||||
</authentication>
|
||||
<sessionState timeout="20"/>
|
||||
<sessionState timeout="20" />
|
||||
</system.web>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
|
||||
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0"/>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0"/>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.4.0.0" newVersion="4.4.0.0"/>
|
||||
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.4.0.0" newVersion="4.4.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
|
||||
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
|
||||
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
|
||||
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
|
||||
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
|
||||
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
|
||||
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
|
||||
<bindingRedirect oldVersion="1.0.0.0-5.2.7.0" newVersion="5.2.7.0"/>
|
||||
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
|
||||
<bindingRedirect oldVersion="1.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
|
||||
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<system.codedom>
|
||||
<compilers>
|
||||
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:7 /nowarn:1659;1699;1701"/>
|
||||
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:7 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
|
||||
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:7 /nowarn:1659;1699;1701" />
|
||||
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:7 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
|
||||
</compilers>
|
||||
</system.codedom>
|
||||
</configuration>
|
||||
@@ -2,7 +2,7 @@
|
||||
<packages>
|
||||
<package id="Antlr" version="3.5.0.2" targetFramework="net472" />
|
||||
<package id="EntityFramework" version="6.4.0" targetFramework="net472" />
|
||||
<package id="jQuery" version="3.4.1" targetFramework="net472" />
|
||||
<package id="jQuery" version="3.6.0" targetFramework="net472" />
|
||||
<package id="jQuery.Validation" version="1.19.1" targetFramework="net472" />
|
||||
<package id="Microsoft.AspNet.Mvc" version="5.2.7" targetFramework="net472" />
|
||||
<package id="Microsoft.AspNet.Providers.Core" version="2.0.0" targetFramework="net472" />
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
|
||||
@@ -4458,14 +4458,43 @@ namespace BeWo.Data.Access
|
||||
return criteria.List<SchedulerAppointment>().ToList();
|
||||
}
|
||||
|
||||
public List<SchedulerAppointment> LoadFilteredAllActiveAppointments(long employeeOid, DateTime start, DateTime end)
|
||||
public List<SchedulerAppointment> LoadFilteredAllActiveAppointments(long employeeOid, DateTime start, DateTime end, List<long> customerOids)
|
||||
{
|
||||
var allEmployees = DAOFactory.GenericDAO.GetAllActive<Employee>();
|
||||
//var allCustomers = DAOFactory
|
||||
var appointments = LoadFilteredAppointments(
|
||||
true,
|
||||
employeeOid,
|
||||
start, end,
|
||||
new List<long>(),
|
||||
customerOids,
|
||||
new List<long>(),
|
||||
false,
|
||||
true,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false);
|
||||
|
||||
//var appointments = LoadFilteredAppointments(true, employeeOid, start, end, )
|
||||
return appointments.ToList();
|
||||
}
|
||||
|
||||
return null;
|
||||
public List<ServiceRecord> FindServiceRecordsForFlsAuslastungsauswertungByCustomerAndEmployees(long? customerOid, List<long> employeeOids, DateTime start, DateTime end, bool onlyBillableCategories)
|
||||
{
|
||||
var c = CreateCriteriaIsActive<ServiceRecord>().Add(Restrictions.Eq(nameof(ServiceRecord.CustomerOid), customerOid));
|
||||
|
||||
c.Add(Restrictions.In(nameof(ServiceRecord.EmployeeOid), employeeOids));
|
||||
|
||||
var betweenCriterion = CreateBetweenDateTimesCriterion(start, end, nameof(ServiceRecord.Start), nameof(ServiceRecord.End));
|
||||
|
||||
c.Add(betweenCriterion);
|
||||
|
||||
if(onlyBillableCategories)
|
||||
{
|
||||
c.CreateAlias(ServiceRecord.PropertyName_ServiceDescription, "sd", JoinType.InnerJoin)
|
||||
.CreateAlias("sd." + ServiceDescription.PropertyName_ServiceCategory, "sc", JoinType.InnerJoin)
|
||||
.Add(Restrictions.Eq("sc." + ServiceCategory.PropertyName_IsBillable, true));
|
||||
}
|
||||
|
||||
return c.List<ServiceRecord>().ToList();
|
||||
}
|
||||
|
||||
public IList<GeschenkterUrlaubstag> FindGeschenkteUrlaubstageByEmpOid(long empOid)
|
||||
|
||||
19
Data/App.config
Normal file
19
Data/App.config
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
<section name="entityFramework"
|
||||
type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
|
||||
requirePermission="false"/>
|
||||
</configSections>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||
<parameters>
|
||||
<parameter value="v13.0"/>
|
||||
</parameters>
|
||||
</defaultConnectionFactory>
|
||||
<providers>
|
||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
|
||||
</providers>
|
||||
</entityFramework>
|
||||
</configuration>
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
@@ -32,6 +33,8 @@
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
<TargetFrameworkProfile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -83,6 +86,24 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\Lib\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Workspaces.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="MySql.Data, Version=8.0.21.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@@ -96,8 +117,29 @@
|
||||
<HintPath>..\Lib\NHibernate.ByteCode.Castle.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable, Version=1.2.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Composition.AttributedModel, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.AttributedModel.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.AttributedModel.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Convention, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Convention.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Convention.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Hosting, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Hosting.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Hosting.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Runtime, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Runtime.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Runtime.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.TypedParts, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.TypedParts.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.TypedParts.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Configuration.Install" />
|
||||
<Reference Include="System.Core">
|
||||
@@ -106,13 +148,31 @@
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Drawing.Design" />
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.4.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Reflection.Metadata, Version=1.4.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Reflection.Metadata.1.6.0\lib\netstandard2.0\System.Reflection.Metadata.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.ServiceModel">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Text.Encoding.CodePages, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Encoding.CodePages.4.5.1\lib\net461\System.Text.Encoding.CodePages.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
@@ -802,7 +862,20 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@@ -26,6 +27,8 @@
|
||||
<IISExpressUseClassicPipelineMode />
|
||||
<UseGlobalApplicationHostFile />
|
||||
<Use64BitIISExpress />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -72,15 +75,73 @@
|
||||
<Reference Include="DevExpress.XtraReports.v17.1.Web, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraScheduler.v17.1.Core, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraScheduler.v17.1.Reporting, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="Microsoft.CodeAnalysis, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Workspaces.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NHibernate, Version=3.1.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\Lib\NHibernate.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable, Version=1.2.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.AttributedModel, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.AttributedModel.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.AttributedModel.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Convention, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Convention.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Convention.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Hosting, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Hosting.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Hosting.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Runtime, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Runtime.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Runtime.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.TypedParts, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.TypedParts.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.TypedParts.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.4.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Reflection.Metadata, Version=1.4.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Reflection.Metadata.1.6.0\lib\netstandard2.0\System.Reflection.Metadata.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.Text.Encoding.CodePages, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Encoding.CodePages.4.5.1\lib\net461\System.Text.Encoding.CodePages.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web.ApplicationServices" />
|
||||
<Reference Include="System.Web.DynamicData" />
|
||||
<Reference Include="System.Web.Entity" />
|
||||
@@ -167,7 +228,6 @@
|
||||
</Compile>
|
||||
<Compile Include="BeWo.Master.cs">
|
||||
<DependentUpon>BeWo.Master</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="BeWo.Master.designer.cs">
|
||||
<DependentUpon>BeWo.Master</DependentUpon>
|
||||
@@ -175,28 +235,24 @@
|
||||
<Compile Include="ClientCallback.cs" />
|
||||
<Compile Include="DocumentDownload.aspx.cs">
|
||||
<DependentUpon>DocumentDownload.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DocumentDownload.aspx.designer.cs">
|
||||
<DependentUpon>DocumentDownload.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Download.aspx.cs">
|
||||
<DependentUpon>Download.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Download.aspx.designer.cs">
|
||||
<DependentUpon>Download.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DX.aspx.cs">
|
||||
<DependentUpon>DX.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DX.aspx.designer.cs">
|
||||
<DependentUpon>DX.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Login.aspx.cs">
|
||||
<DependentUpon>Login.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Login.aspx.designer.cs">
|
||||
<DependentUpon>Login.aspx</DependentUpon>
|
||||
@@ -204,28 +260,24 @@
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="ReportView.aspx.cs">
|
||||
<DependentUpon>ReportView.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ReportView.aspx.designer.cs">
|
||||
<DependentUpon>ReportView.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ResetPassword.aspx.cs">
|
||||
<DependentUpon>ResetPassword.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ResetPassword.aspx.designer.cs">
|
||||
<DependentUpon>ResetPassword.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ServiceRecordEditPage.aspx.cs">
|
||||
<DependentUpon>ServiceRecordEditPage.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ServiceRecordEditPage.aspx.designer.cs">
|
||||
<DependentUpon>ServiceRecordEditPage.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ServiceRecordPage.aspx.cs">
|
||||
<DependentUpon>ServiceRecordPage.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ServiceRecordPage.aspx.designer.cs">
|
||||
<DependentUpon>ServiceRecordPage.aspx</DependentUpon>
|
||||
@@ -272,6 +324,10 @@
|
||||
<ItemGroup>
|
||||
<WCFMetadata Include="Service References\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
||||
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||
@@ -304,4 +360,10 @@
|
||||
</FlavorProperties>
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props'))" />
|
||||
</Target>
|
||||
</Project>
|
||||
1
Host/Multitenancy/2021040600.config
Normal file
1
Host/Multitenancy/2021040600.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040600</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040601.config
Normal file
1
Host/Multitenancy/2021040601.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040601</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040602.config
Normal file
1
Host/Multitenancy/2021040602.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040602</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040603.config
Normal file
1
Host/Multitenancy/2021040603.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040603</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040604.config
Normal file
1
Host/Multitenancy/2021040604.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040604</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040605.config
Normal file
1
Host/Multitenancy/2021040605.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040605</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040606.config
Normal file
1
Host/Multitenancy/2021040606.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040606</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040607.config
Normal file
1
Host/Multitenancy/2021040607.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040607</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040608.config
Normal file
1
Host/Multitenancy/2021040608.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040608</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
1
Host/Multitenancy/2021040609.config
Normal file
1
Host/Multitenancy/2021040609.config
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0"?><configuration><configSections><section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" /></configSections><hibernate-configuration xmlns="urn:nhibernate-configuration-2.2"><session-factory><property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property><property name="connection.connection_string">Server=localhost;Password=root;User ID=root; Initial Catalog=2021040609</property><property name="dialect">NHibernate.Dialect.MySQLDialect</property><property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property><property name="hbm2ddl.keywords">none</property><property name="show_sql">true</property><!-- Bei true wird das SQL im Output Window angezeigt --><property name="format_sql">true</property><mapping assembly="BeWo.Data" /></session-factory></hibernate-configuration></configuration>
|
||||
30
Host/Multitenancy/4206942069.config
Normal file
30
Host/Multitenancy/4206942069.config
Normal file
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
|
||||
</configSections>
|
||||
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
|
||||
<session-factory>
|
||||
<property name="connection.provider">
|
||||
NHibernate.Connection.DriverConnectionProvider
|
||||
</property>
|
||||
<property name="connection.driver_class">
|
||||
NHibernate.Driver.MySqlDataDriver
|
||||
</property>
|
||||
<property name="connection.connection_string">
|
||||
Server=localhost;Password=root;User ID=root; Initial Catalog=4206942069
|
||||
</property>
|
||||
<property name="dialect">
|
||||
NHibernate.Dialect.MySQLDialect
|
||||
</property>
|
||||
<property name="proxyfactory.factory_class">
|
||||
NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
|
||||
</property>
|
||||
<property name="hbm2ddl.keywords">none</property>
|
||||
<property name="show_sql">true</property>
|
||||
<!-- Bei true wird das SQL im Output Window angezeigt -->
|
||||
<property name="format_sql">true</property>
|
||||
<mapping assembly="BeWo.Data" />
|
||||
</session-factory>
|
||||
</hibernate-configuration>
|
||||
</configuration>
|
||||
29
Host/Multitenancy/6969696969.config
Normal file
29
Host/Multitenancy/6969696969.config
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
|
||||
</configSections>
|
||||
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
|
||||
<session-factory>
|
||||
<property name="connection.provider">
|
||||
NHibernate.Connection.DriverConnectionProvider
|
||||
</property>
|
||||
<property name="connection.driver_class">
|
||||
NHibernate.Driver.MySqlDataDriver
|
||||
</property>
|
||||
<property name="connection.connection_string">
|
||||
Server=localhost;Password=root;User ID=root; Initial Catalog=6969696969
|
||||
</property>
|
||||
<property name="dialect">
|
||||
NHibernate.Dialect.MySQLDialect
|
||||
</property>
|
||||
<property name="proxyfactory.factory_class">
|
||||
NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle
|
||||
</property>
|
||||
<property name="hbm2ddl.keywords">none</property>
|
||||
<property name="show_sql">true</property> <!-- Bei true wird das SQL im Output Window angezeigt -->
|
||||
<property name="format_sql">true</property>
|
||||
<mapping assembly="BeWo.Data" />
|
||||
</session-factory>
|
||||
</hibernate-configuration>
|
||||
</configuration>
|
||||
@@ -563,14 +563,22 @@ namespace Host
|
||||
if (Request.Params["scgoals"] != null)
|
||||
{
|
||||
string scGoalOids = Request.Params["scgoals"].ToString();
|
||||
var oids = scGoalOids.Split(',');
|
||||
var alleRatingDCs = MapperFactory.RatingDC_Rating.MapToNewDCs(DAOFactory.GenericDAO.GetAllActive<Rating>());
|
||||
foreach (var oid in oids)
|
||||
if (!string.IsNullOrWhiteSpace(scGoalOids))
|
||||
{
|
||||
foreach (var dc in alleRatingDCs)
|
||||
var oids = scGoalOids.Split(',');
|
||||
var alleRatingDCs =
|
||||
MapperFactory.RatingDC_Rating.MapToNewDCs(DAOFactory.GenericDAO.GetAllActive<Rating>());
|
||||
foreach (var oid in oids)
|
||||
{
|
||||
if (long.Parse(oid) == dc.RatingOid)
|
||||
scZiele.Add(dc);
|
||||
long loid = 0;
|
||||
if (Int64.TryParse(oid, out loid))
|
||||
{
|
||||
foreach (var dc in alleRatingDCs)
|
||||
{
|
||||
if (loid == dc.RatingOid)
|
||||
scZiele.Add(dc);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="ClrHeapAllocationAnalyzer" version="3.0.0" targetFramework="net472" />
|
||||
<package id="jQuery" version="1.6.4" targetFramework="net40" />
|
||||
<package id="jquery.mobile" version="1.3.0" targetFramework="net40" />
|
||||
<package id="Microsoft.CodeAnalysis" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.Analyzers" version="2.9.6" targetFramework="net472" developmentDependency="true" />
|
||||
<package id="Microsoft.CodeAnalysis.Common" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.CSharp" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.CSharp.Workspaces" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.VisualBasic" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.VisualBasic.Workspaces" version="3.4.0" targetFramework="net472" />
|
||||
<package id="Microsoft.CodeAnalysis.Workspaces.Common" version="3.4.0" targetFramework="net472" />
|
||||
<package id="System.Buffers" version="4.4.0" targetFramework="net472" />
|
||||
<package id="System.Collections.Immutable" version="1.5.0" targetFramework="net472" />
|
||||
<package id="System.Composition" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Composition.AttributedModel" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Composition.Convention" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Composition.Hosting" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Composition.Runtime" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Composition.TypedParts" version="1.0.31" targetFramework="net472" />
|
||||
<package id="System.Memory" version="4.5.3" targetFramework="net472" />
|
||||
<package id="System.Numerics.Vectors" version="4.4.0" targetFramework="net472" />
|
||||
<package id="System.Reflection.Metadata" version="1.6.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net472" />
|
||||
<package id="System.Text.Encoding.CodePages" version="4.5.1" targetFramework="net472" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.3" targetFramework="net472" />
|
||||
</packages>
|
||||
@@ -18,4 +18,4 @@ CREATE TABLE `dokumentvorlage` (
|
||||
`RTFText` mediumtext,
|
||||
`Parent` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`Oid`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
@@ -12,4 +12,4 @@ CREATE TABLE `vorlagentabelle` (
|
||||
`SystemEntryID` int DEFAULT NULL,
|
||||
`Tabellenname` varchar(1024) DEFAULT NULL,
|
||||
PRIMARY KEY (`Oid`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
ALTER TABLE `bewodemo`.`dienstvertretung`
|
||||
ALTER TABLE `dienstvertretung`
|
||||
ADD COLUMN `Startzeit` VARCHAR(256) NULL DEFAULT NULL AFTER `Datum`;
|
||||
|
||||
ALTER TABLE `bewodemo`.`dienstvertretung`
|
||||
ALTER TABLE `dienstvertretung`
|
||||
ADD COLUMN `Endzeit` VARCHAR(256) NULL DEFAULT NULL AFTER `Startzeit`;
|
||||
|
||||
ALTER TABLE `bewodemo`.`diensteintrag`
|
||||
ALTER TABLE `diensteintrag`
|
||||
ADD COLUMN `Startzeit` VARCHAR(256) NULL DEFAULT NULL AFTER `Datum`;
|
||||
|
||||
ALTER TABLE `bewodemo`.`diensteintrag`
|
||||
ALTER TABLE `diensteintrag`
|
||||
ADD COLUMN `Endzeit` VARCHAR(256) NULL DEFAULT NULL AFTER `Startzeit`;
|
||||
|
||||
ALTER TABLE `bewodemo`.`diensteintrag`
|
||||
ALTER TABLE `diensteintrag`
|
||||
ADD COLUMN `DauerInStunden` DOUBLE NULL DEFAULT NULL AFTER `Endzeit`;
|
||||
|
||||
ALTER TABLE `bewodemo`.`dienstvertretung`
|
||||
ALTER TABLE `dienstvertretung`
|
||||
ADD COLUMN `DauerInStunden` DOUBLE NULL DEFAULT NULL AFTER `Endzeit`;
|
||||
|
||||
@@ -17,4 +17,4 @@ CREATE TABLE `regelmaessigerdienst` (
|
||||
`Endzeit` varchar(256) DEFAULT NULL,
|
||||
`DauerInStunden` double DEFAULT NULL,
|
||||
PRIMARY KEY (`Oid`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
INSERT INTO query(tid, type, title, notice, insts, version, isactive, reporttypename)
|
||||
VALUES
|
||||
(24, 0, 'Stundenübersicht Mitarbeiter', 'direct', NOW(), 1, 1, 'FLSAuswertung'),
|
||||
(24, 0, 'Stundenübersicht Team', 'direct', NOW(), 1, 1, 'FLSAuswertung')
|
||||
;
|
||||
|
||||
INSERT INTO parameter(queryoid, tid, name, type) VALUES
|
||||
(x, 25, 'Mitarbeiter', 1), #mitarbeiter
|
||||
(x, 25, 'Von_Bis', 5), #mitarbeiter
|
||||
(y, 25, 'Team', 6), #team
|
||||
(y, 25, 'Von_Bis', 5) #team
|
||||
;
|
||||
|
||||
INSERT INTO parameter(queryoid, tid, name, type) VALUES
|
||||
(x, 25, 'Intervall', 100), #mitarbeiter
|
||||
(y, 25, 'Intervall', 100) #team
|
||||
;
|
||||
11
Model/GetNextBelegNr.txt
Normal file
11
Model/GetNextBelegNr.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
DELIMITER $$
|
||||
CREATE FUNCTION `GetNextBelegnr`(addToCount INT) RETURNS int(11)
|
||||
BEGIN
|
||||
DECLARE COUNT_FOUND INTEGER DEFAULT 1;
|
||||
|
||||
SELECT count INTO COUNT_FOUND FROM callcount WHERE OID = 1;
|
||||
UPDATE callcount SET Count = Count + addToCount WHERE OID = 1;
|
||||
RETURN COUNT_FOUND;
|
||||
RETURN -1;
|
||||
END$$
|
||||
DELIMITER ;
|
||||
@@ -696,6 +696,13 @@ namespace BeWo.Report
|
||||
|
||||
public override XtraReport CreateSettlementReport(String dcId, long? invoiceBaseOid)
|
||||
{
|
||||
return CreateSettlementReport(dcId, invoiceBaseOid, false);
|
||||
}
|
||||
|
||||
public virtual XtraReport CreateSettlementReport(String dcId, long? invoiceBaseOid, bool createAnhang)
|
||||
{
|
||||
XtraReport report = null;
|
||||
|
||||
Settlement2DC lSettlementDC;
|
||||
|
||||
long result;
|
||||
@@ -719,21 +726,51 @@ namespace BeWo.Report
|
||||
CostBearer2SupportConcept c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(lSettlementDC.CostBearer2SupportConceptOid.Value);
|
||||
reportId = c2s.CostBearer.ID;
|
||||
}
|
||||
|
||||
|
||||
if (lSettlementDC.DifferentHourlyRateCount > 0)
|
||||
{
|
||||
|
||||
IBeWoReport<SettlementRO> lSettlementReport = FindReportImp<SettlementRO>(reportId);
|
||||
lSettlementReport.SetReportDataSource(SettlementRO.Create(lSettlementDC));
|
||||
var ro = SettlementRO.Create(lSettlementDC);
|
||||
lSettlementReport.SetReportDataSource(ro);
|
||||
|
||||
return lSettlementReport as XtraReport;
|
||||
report = lSettlementReport as XtraReport;
|
||||
}
|
||||
else
|
||||
{
|
||||
IBeWoReport<Settlement2RO> lSettlementReport = FindReportImp<Settlement2RO>(reportId);
|
||||
lSettlementReport.SetReportDataSource(Settlement2RO.Create(lSettlementDC));
|
||||
report = lSettlementReport as XtraReport;
|
||||
|
||||
return lSettlementReport as XtraReport;
|
||||
|
||||
}
|
||||
|
||||
if (createAnhang)
|
||||
{
|
||||
if (report != null)
|
||||
{
|
||||
report.CreateDocument();
|
||||
|
||||
var anhang = CreateBudgetnachweisAnhang(lSettlementDC);
|
||||
if (anhang != null)
|
||||
{
|
||||
anhang.CreateDocument();
|
||||
report.Pages.AddRange(anhang.Pages);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return report;
|
||||
}
|
||||
|
||||
protected virtual XtraReport CreateBudgetnachweisAnhang(Settlement2DC settlementDC)
|
||||
{
|
||||
var ro = BudgetnachweisAnhangRO.Create(settlementDC);
|
||||
IBeWoReport<BudgetnachweisAnhangRO> anhang = FindReportImp<BudgetnachweisAnhangRO>();
|
||||
anhang.SetReportDataSource(ro);
|
||||
|
||||
return anhang as XtraReport;
|
||||
}
|
||||
|
||||
public override XtraReport CreateSupportConceptReport(IList<long> c2sOids, long? employeeOid, long? teamOid, int? expiredMonths, bool archivedSupportConcepts,
|
||||
|
||||
1395
Report/DefaultReports/BudgetnachweisAnhang.Designer.cs
generated
Normal file
1395
Report/DefaultReports/BudgetnachweisAnhang.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
30
Report/DefaultReports/BudgetnachweisAnhang.cs
Normal file
30
Report/DefaultReports/BudgetnachweisAnhang.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using BeWo.Report.ReportObjects;
|
||||
|
||||
namespace BeWo.Report.DefaultReports
|
||||
{
|
||||
public partial class BudgetnachweisAnhang : DevExpress.XtraReports.UI.XtraReport, IBeWoReport<BudgetnachweisAnhangRO>
|
||||
{
|
||||
public BudgetnachweisAnhang()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetReportDataSource(BudgetnachweisAnhangRO pRO)
|
||||
{
|
||||
if (!String.IsNullOrEmpty(pRO.CustomerDC.LastName))
|
||||
{
|
||||
//pRO.CustomerDC.LastName = pRO.CustomerDC.LastName.Replace("/", "").Replace("LWL Psych", "").Replace("LWL Sucht", "").Trim();
|
||||
|
||||
|
||||
}
|
||||
//if (pRO.Transaktionen != null)
|
||||
//{
|
||||
// pRO.Transaktionen = pRO.Transaktionen.OrderBy(o => o.Belegdatum).ToList();
|
||||
//}
|
||||
|
||||
bindingSource1.DataSource = pRO;
|
||||
}
|
||||
}
|
||||
}
|
||||
126
Report/DefaultReports/BudgetnachweisAnhang.resx
Normal file
126
Report/DefaultReports/BudgetnachweisAnhang.resx
Normal file
@@ -0,0 +1,126 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="bindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<data name="xrLabel1.Text" xml:space="preserve">
|
||||
<value>Über den Budgetnachweis werden auf Grundlage der Quittierungsbelege im nachstehenden Umfang folgende, im direkten Betreuungskontakt erbrachte Minuten zur Abrechnung beantragt (direkte Fachleistungsminuten = D-FLMin). Die Summe der D-FLMin wird in direkte Fachleistungsstunden (D-FLS) umgerechnet.</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
@@ -32,6 +33,8 @@
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
<TargetFrameworkProfile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -106,6 +109,24 @@
|
||||
<Reference Include="DevExpress.XtraScheduler.v17.1, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraScheduler.v17.1.Core, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="DevExpress.XtraScheduler.v17.1.Reporting, Version=17.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
|
||||
<Reference Include="Microsoft.CodeAnalysis, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.CSharp.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.VisualBasic.Workspaces.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeAnalysis.Workspaces, Version=3.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Workspaces.Common.3.4.0\lib\netstandard2.0\Microsoft.CodeAnalysis.Workspaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.VisualBasic" />
|
||||
<Reference Include="Microsoft.VisualBasic.Compatibility" />
|
||||
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
@@ -122,6 +143,27 @@
|
||||
<EmbedInteropTypes>True</EmbedInteropTypes>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Collections.Immutable, Version=1.2.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.AttributedModel, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.AttributedModel.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.AttributedModel.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Convention, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Convention.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Convention.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Hosting, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Hosting.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Hosting.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.Runtime, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.Runtime.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.Runtime.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Composition.TypedParts, Version=1.0.31.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Composition.TypedParts.1.0.31\lib\portable-net45+win8+wp8+wpa81\System.Composition.TypedParts.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
@@ -130,9 +172,28 @@
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Drawing.Design" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.4.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Reflection.Metadata, Version=1.4.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Reflection.Metadata.1.6.0\lib\netstandard2.0\System.Reflection.Metadata.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization.Formatters.Soap" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.ServiceProcess" />
|
||||
<Reference Include="System.Text.Encoding.CodePages, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Encoding.CodePages.4.5.1\lib\net461\System.Text.Encoding.CodePages.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq">
|
||||
@@ -162,261 +223,181 @@
|
||||
<Compile Include="DefaultReports\BewertungsstatistikReport.designer.cs">
|
||||
<DependentUpon>BewertungsstatistikReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\VorlageReport.cs">
|
||||
<Compile Include="DefaultReports\BudgetnachweisAnhang.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\BudgetnachweisAnhang.Designer.cs">
|
||||
<DependentUpon>BudgetnachweisAnhang.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\VorlageReport.cs" />
|
||||
<Compile Include="DefaultReports\VorlageReport.Designer.cs">
|
||||
<DependentUpon>VorlageReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\RosterReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\RosterReport.cs" />
|
||||
<Compile Include="DefaultReports\RosterReport.Designer.cs">
|
||||
<DependentUpon>RosterReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Abwesenheiten.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Abwesenheiten.cs" />
|
||||
<Compile Include="DefaultReports\Abwesenheiten.designer.cs">
|
||||
<DependentUpon>Abwesenheiten.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AdditionalServiceBookingReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AdditionalServiceBookingReport.cs" />
|
||||
<Compile Include="DefaultReports\AdditionalServiceBookingReport.Designer.cs">
|
||||
<DependentUpon>AdditionalServiceBookingReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsListReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsListReport.cs" />
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsListReport.Designer.cs">
|
||||
<DependentUpon>EmployeeKilometerauswertungsListReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KilometerauswertungsListReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KilometerauswertungsListReport.cs" />
|
||||
<Compile Include="DefaultReports\KilometerauswertungsListReport.Designer.cs">
|
||||
<DependentUpon>KilometerauswertungsListReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsReport.cs" />
|
||||
<Compile Include="DefaultReports\EmployeeKilometerauswertungsReport.designer.cs">
|
||||
<DependentUpon>EmployeeKilometerauswertungsReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KilometerauswertungsReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KilometerauswertungsReport.cs" />
|
||||
<Compile Include="DefaultReports\KilometerauswertungsReport.designer.cs">
|
||||
<DependentUpon>KilometerauswertungsReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterarbeitszeitkonto.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterarbeitszeitkonto.cs" />
|
||||
<Compile Include="DefaultReports\Mitarbeiterarbeitszeitkonto.designer.cs">
|
||||
<DependentUpon>Mitarbeiterarbeitszeitkonto.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\MitarbeiterstundenkontoJahr.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\MitarbeiterstundenkontoJahr.cs" />
|
||||
<Compile Include="DefaultReports\MitarbeiterstundenkontoJahr.designer.cs">
|
||||
<DependentUpon>MitarbeiterstundenkontoJahr.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AbsenceReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AbsenceReport.cs" />
|
||||
<Compile Include="DefaultReports\AbsenceReport.Designer.cs">
|
||||
<DependentUpon>AbsenceReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SBDCharacteristicsReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SBDCharacteristicsReport.cs" />
|
||||
<Compile Include="DefaultReports\SBDCharacteristicsReport.Designer.cs">
|
||||
<DependentUpon>SBDCharacteristicsReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeDataReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\EmployeeDataReport.cs" />
|
||||
<Compile Include="DefaultReports\EmployeeDataReport.Designer.cs">
|
||||
<DependentUpon>EmployeeDataReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Finanzauswertung.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Finanzauswertung.cs" />
|
||||
<Compile Include="DefaultReports\Finanzauswertung.designer.cs">
|
||||
<DependentUpon>Finanzauswertung.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Invoices\SbdLeistungsnachweisAbrechnung.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Invoices\SbdLeistungsnachweisAbrechnung.cs" />
|
||||
<Compile Include="DefaultReports\Invoices\SbdLeistungsnachweisAbrechnung.designer.cs">
|
||||
<DependentUpon>SbdLeistungsnachweisAbrechnung.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Invoices\SbdRechnung.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Invoices\SbdRechnung.cs" />
|
||||
<Compile Include="DefaultReports\Invoices\SbdRechnung.Designer.cs">
|
||||
<DependentUpon>SbdRechnung.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KassenbelegReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KassenbelegReport.cs" />
|
||||
<Compile Include="DefaultReports\KassenbelegReport.Designer.cs">
|
||||
<DependentUpon>KassenbelegReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\NotizenReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\NotizenReport.cs" />
|
||||
<Compile Include="DefaultReports\NotizenReport.Designer.cs">
|
||||
<DependentUpon>NotizenReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KassenbuchReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KassenbuchReport.cs" />
|
||||
<Compile Include="DefaultReports\KassenbuchReport.Designer.cs">
|
||||
<DependentUpon>KassenbuchReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KalenderMonatsformatReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\KalenderMonatsformatReport.cs" />
|
||||
<Compile Include="DefaultReports\KalenderMonatsformatReport.Designer.cs">
|
||||
<DependentUpon>KalenderMonatsformatReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\JahresReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\JahresReport.cs" />
|
||||
<Compile Include="DefaultReports\JahresReport.designer.cs">
|
||||
<DependentUpon>JahresReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\LeistungsnachweisSbd.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\LeistungsnachweisSbd.cs" />
|
||||
<Compile Include="DefaultReports\LeistungsnachweisSbd.designer.cs">
|
||||
<DependentUpon>LeistungsnachweisSbd.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\MedikamentenverordnungslistenReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\MedikamentenverordnungslistenReport.cs" />
|
||||
<Compile Include="DefaultReports\MedikamentenverordnungslistenReport.Designer.cs">
|
||||
<DependentUpon>MedikamentenverordnungslistenReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\QuittierungsbelegMitDatum.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\QuittierungsbelegMitDatum.cs" />
|
||||
<Compile Include="DefaultReports\QuittierungsbelegMitDatum.Designer.cs">
|
||||
<DependentUpon>QuittierungsbelegMitDatum.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Quittierungsbeleg.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Quittierungsbeleg.cs" />
|
||||
<Compile Include="DefaultReports\Quittierungsbeleg.Designer.cs">
|
||||
<DependentUpon>Quittierungsbeleg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Teamauslastung.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Teamauslastung.cs" />
|
||||
<Compile Include="DefaultReports\Teamauslastung.designer.cs">
|
||||
<DependentUpon>Teamauslastung.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterauslastung.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterauslastung.cs" />
|
||||
<Compile Include="DefaultReports\Mitarbeiterauslastung.designer.cs">
|
||||
<DependentUpon>Mitarbeiterauslastung.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Teamstundenkonto.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Teamstundenkonto.cs" />
|
||||
<Compile Include="DefaultReports\Teamstundenkonto.designer.cs">
|
||||
<DependentUpon>Teamstundenkonto.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SettlementReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SettlementReport.cs" />
|
||||
<Compile Include="DefaultReports\SettlementReport.Designer.cs">
|
||||
<DependentUpon>SettlementReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\CollectiveBillingReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\CollectiveBillingReport.cs" />
|
||||
<Compile Include="DefaultReports\CollectiveBillingReport.Designer.cs">
|
||||
<DependentUpon>CollectiveBillingReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AssessmentSheetReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\AssessmentSheetReport.cs" />
|
||||
<Compile Include="DefaultReports\AssessmentSheetReport.Designer.cs">
|
||||
<DependentUpon>AssessmentSheetReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterstundenkonto.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\Mitarbeiterstundenkonto.cs" />
|
||||
<Compile Include="DefaultReports\Mitarbeiterstundenkonto.designer.cs">
|
||||
<DependentUpon>Mitarbeiterstundenkonto.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SettlementReport2.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SettlementReport2.cs" />
|
||||
<Compile Include="DefaultReports\SettlementReport2.Designer.cs">
|
||||
<DependentUpon>SettlementReport2.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\ServiceInvoiceReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\ServiceInvoiceReport.cs" />
|
||||
<Compile Include="DefaultReports\ServiceInvoiceReport.Designer.cs">
|
||||
<DependentUpon>ServiceInvoiceReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\InvoiceCustomerReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\InvoiceCustomerReport.cs" />
|
||||
<Compile Include="DefaultReports\InvoiceCustomerReport.Designer.cs">
|
||||
<DependentUpon>InvoiceCustomerReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\CustomerDataReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\CustomerDataReport.cs" />
|
||||
<Compile Include="DefaultReports\CustomerDataReport.Designer.cs">
|
||||
<DependentUpon>CustomerDataReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\FLSGroupReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\FLSGroupReport.cs" />
|
||||
<Compile Include="DefaultReports\FLSGroupReport.Designer.cs">
|
||||
<DependentUpon>FLSGroupReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\FLSListReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\FLSListReport.cs" />
|
||||
<Compile Include="DefaultReports\FLSListReport.Designer.cs">
|
||||
<DependentUpon>FLSListReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\QueryListReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\QueryListReport.cs" />
|
||||
<Compile Include="DefaultReports\QueryListReport.Designer.cs">
|
||||
<DependentUpon>QueryListReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\ServiceRecordListReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\ServiceRecordListReport.cs" />
|
||||
<Compile Include="DefaultReports\ServiceRecordListReport.Designer.cs">
|
||||
<DependentUpon>ServiceRecordListReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SupportConceptReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\SupportConceptReport.cs" />
|
||||
<Compile Include="DefaultReports\SupportConceptReport.Designer.cs">
|
||||
<DependentUpon>SupportConceptReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\DailyAppointmentReportKalender.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\DailyAppointmentReportKalender.cs" />
|
||||
<Compile Include="DefaultReports\DailyAppointmentReportKalender.Designer.cs">
|
||||
<DependentUpon>DailyAppointmentReportKalender.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\WeeklyAppointmentReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\WeeklyAppointmentReport.cs" />
|
||||
<Compile Include="DefaultReports\WeeklyAppointmentReport.Designer.cs">
|
||||
<DependentUpon>WeeklyAppointmentReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
@@ -424,13 +405,13 @@
|
||||
<Compile Include="AbstractBeWoReportObject.cs" />
|
||||
<Compile Include="AbstractReportCreator.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="DefaultReports\ServicesOverviewReport.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReports\ServicesOverviewReport.cs" />
|
||||
<Compile Include="DefaultReports\ServicesOverviewReport.Designer.cs">
|
||||
<DependentUpon>ServicesOverviewReport.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="DefaultReportCreator.cs" />
|
||||
<Compile Include="ReportObjects\BudgetnachweisAnhangRO.cs" />
|
||||
<Compile Include="ReportObjects\FlsAuslastungsauswertungRO.cs" />
|
||||
<Compile Include="ReportObjects\RosterRO.cs" />
|
||||
<Compile Include="ReportObjects\AdditionalServiceBookingRO.cs" />
|
||||
<Compile Include="ReportObjects\AbsenceRO.cs" />
|
||||
@@ -476,6 +457,10 @@
|
||||
<EmbeddedResource Include="DefaultReports\BewertungsstatistikReport.resx">
|
||||
<DependentUpon>BewertungsstatistikReport.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="DefaultReports\BudgetnachweisAnhang.resx">
|
||||
<DependentUpon>BudgetnachweisAnhang.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="DefaultReports\VorlageReport.resx">
|
||||
<DependentUpon>VorlageReport.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -654,6 +639,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\DataSources\BeWo.Report.DefaultReports.KalenderMonatsformatReport.datasource" />
|
||||
<None Include="Properties\DataSources\BeWo.Report.ReportObjects.AdditionalServiceBookingRO.datasource" />
|
||||
<None Include="Properties\DataSources\BeWo.Report.ReportObjects.AssessmentSheetRO.datasource" />
|
||||
@@ -685,7 +671,17 @@
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
|
||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeAnalysis.Analyzers.2.9.6\build\Microsoft.CodeAnalysis.Analyzers.props'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
|
||||
@@ -9,5 +9,6 @@
|
||||
<ErrorReportUrlHistory />
|
||||
<FallbackCulture>de-DE</FallbackCulture>
|
||||
<VerifyUploadedFiles>false</VerifyUploadedFiles>
|
||||
<ProjectView>ProjectFiles</ProjectView>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -93,11 +93,11 @@ namespace BeWo.Report.ReportObjects
|
||||
{
|
||||
if (item.GoalEntry.ValueListEntryOid == ziel.ValueListEntryOid)
|
||||
{
|
||||
if(item.ServiceRecord.ServiceRecordOid == sr.Oid && item.GoalRatingOid == null && item.RatingType != null)
|
||||
if(item.ServiceRecord.ServiceRecordOid == sr.Oid && item.GoalRatingOid == null && item.RatingType?.RatingId != null)
|
||||
{
|
||||
if(item.ServiceRecord.Start >= start && item.ServiceRecord.Start <= end)
|
||||
{
|
||||
detail.Note = (int)item.RatingType.Position;
|
||||
detail.Note = item.RatingType.RatingId.Value;
|
||||
anzahl++; // Zähler für Schnittberechnung
|
||||
detail.MinutenInvestiert = sr.DurationMinutes;
|
||||
detail.Datum = sr.Start;
|
||||
@@ -118,12 +118,12 @@ namespace BeWo.Report.ReportObjects
|
||||
}
|
||||
foreach (var item in passendeZielBewertungen)
|
||||
{
|
||||
if (item.GoalRatingOid != null && item.GoalEntry.ValueListEntryOid == ziel.ValueListEntryOid && item.RatingType != null)
|
||||
if (item.GoalRatingOid != null && item.GoalEntry.ValueListEntryOid == ziel.ValueListEntryOid && item.RatingType?.RatingId != null)
|
||||
{
|
||||
if (item.ServiceRecord.Start.Value.Day >= start.Value.Day && item.ServiceRecord.Start <= end)
|
||||
{
|
||||
var detail = new BewertungsstatistikZielDetail();
|
||||
detail.Note = (int)item.RatingType.Position;
|
||||
detail.Note = item.RatingType.RatingId.Value;
|
||||
detail.Datum = item.ServiceRecord.Start;
|
||||
anzahl++;
|
||||
datensatz.Durchschnitt += detail.Note;
|
||||
|
||||
224
Report/ReportObjects/BudgetnachweisAnhangRO.cs
Normal file
224
Report/ReportObjects/BudgetnachweisAnhangRO.cs
Normal file
@@ -0,0 +1,224 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Service.DCEntityMapper;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
namespace BeWo.Report.ReportObjects
|
||||
{
|
||||
public class BudgetnachweisAnhangRO : AbstractBeWoReportObject<BudgetnachweisAnhangRO>
|
||||
{
|
||||
public Settlement2DC SettlementDC { get; set; }
|
||||
public SupportConceptCostBearerRelDC Costbearer2SupportConceptDC { get; set; }
|
||||
public CustomerDC CustomerDC { get; set; }
|
||||
public DateTime BewilligtStart { get; set; }
|
||||
public DateTime BewilligtEnde { get; set; }
|
||||
public List<Entgeltzeitraum> Entgeltzeitraeume { get; set; }
|
||||
public List<BudgetnachweisMonatsZeile> MonatsZeilen { get; set; }
|
||||
public decimal RateFactor { get; set; }
|
||||
public decimal SummeFLMinuten { get; set; }
|
||||
public decimal SummeFaktorMinuten { get; set; }
|
||||
public decimal SummeGesamtMinuten { get; set; }
|
||||
public decimal SummeFLStunden { get; set; }
|
||||
public decimal SummeFaktorStunden { get; set; }
|
||||
public decimal SummeGesamtStunden { get; set; }
|
||||
|
||||
|
||||
public static BudgetnachweisAnhangRO Create(Settlement2DC dc)
|
||||
{
|
||||
var result = new BudgetnachweisAnhangRO();
|
||||
|
||||
CostBearer2SupportConcept cb2sc = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(dc.CostBearer2SupportConceptOid.Value);
|
||||
Customer customer = cb2sc.SupportConcept.Customer;
|
||||
|
||||
result.SettlementDC = dc;
|
||||
result.Costbearer2SupportConceptDC = MapperFactory.SupportConceptCostBearerRelDC_CostBearer2SupportConcept.MapToNewDC(cb2sc);
|
||||
result.CustomerDC = MapperFactory.CustomerDC_Customer.MapToNewDC(customer);
|
||||
result.BewilligtStart = dc.AccountingPeriodStart.Value;
|
||||
result.BewilligtEnde = dc.AccountingPeriodEnd.Value;
|
||||
result.MonatsZeilen = new List<BudgetnachweisMonatsZeile>();
|
||||
result.Entgeltzeitraeume = new List<Entgeltzeitraum>();
|
||||
|
||||
var crList = MapperFactory.CostRatePeriodDC_CostRatePeriod.MapToNewDCs(cb2sc.CostBearer.CostRatePeriods.Where(c => c.CostRateType == CostRatePeriodType.HourlyRate));
|
||||
var crRfList = MapperFactory.CostRatePeriodDC_CostRatePeriod.MapToNewDCs(cb2sc.CostBearer.CostRatePeriods.Where(c => c.CostRateType == CostRatePeriodType.RateFactor));
|
||||
|
||||
var rf = crRfList.GetCostRatePeriodForDate(CostRatePeriodType.RateFactor, result.BewilligtEnde);
|
||||
if (rf != null && rf.CostRateValue.HasValue)
|
||||
{
|
||||
result.RateFactor = rf.CostRateValue.Value;
|
||||
}
|
||||
|
||||
foreach (var cr in crList)
|
||||
{
|
||||
if (!cr.EndDate.HasValue)
|
||||
{
|
||||
cr.EndDate = result.BewilligtEnde;
|
||||
}
|
||||
}
|
||||
|
||||
crList = crList.OrderBy(c => c.EndDate).ToList();
|
||||
|
||||
DateTime start = DateTime.MinValue;
|
||||
int idx = 1;
|
||||
foreach (var cr in crList)
|
||||
{
|
||||
if (!cr.StartDate.HasValue)
|
||||
{
|
||||
cr.StartDate = start;
|
||||
}
|
||||
|
||||
if (cr.StartDate > DateTime.MinValue)
|
||||
{
|
||||
cr.StartDate = cr.StartDate.Value.AddDays(1);
|
||||
}
|
||||
|
||||
if (cr.EndDate >= result.BewilligtStart && cr.StartDate <= result.BewilligtEnde)
|
||||
{
|
||||
var ez = new Entgeltzeitraum();
|
||||
ez.Index = idx++;
|
||||
ez.Start = cr.StartDate.Value;
|
||||
ez.Ende = cr.EndDate.Value;
|
||||
|
||||
if (ez.Start == DateTime.MinValue)
|
||||
{
|
||||
ez.Start = result.BewilligtStart;
|
||||
}
|
||||
if (ez.Ende == DateTime.MaxValue)
|
||||
{
|
||||
ez.Ende = result.BewilligtEnde;
|
||||
}
|
||||
|
||||
ez.CostRatePeriod = cr;
|
||||
ez.ServiceRecords = new List<ServiceRecordDC>();
|
||||
result.Entgeltzeitraeume.Add(ez);
|
||||
}
|
||||
|
||||
start = cr.EndDate.Value;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
var span = new DateTimeSpan();
|
||||
span.StartDateTime = dc.AccountingPeriodStart.Value;
|
||||
span.EndDateTime = dc.AccountingPeriodEnd.Value.AddDays(1).AddTicks(-1);
|
||||
|
||||
IList<ServiceRecord> serviceRecords = DAOFactory.SearchDAO.FindCustomerServiceRecords(customer.Oid.Value, span, null, null, false);
|
||||
|
||||
Dictionary<string, BudgetnachweisMonatsZeile> monat2Zeile = new Dictionary<string, BudgetnachweisMonatsZeile>();
|
||||
|
||||
DateTime monat = new DateTime(result.BewilligtStart.Year, result.BewilligtStart.Month, 1);
|
||||
|
||||
while (monat <= result.BewilligtEnde)
|
||||
{
|
||||
String key = String.Format("{0:MM.yyyy}", monat);
|
||||
|
||||
var zeile = new BudgetnachweisMonatsZeile();
|
||||
zeile.ServiceRecords = new List<ServiceRecordDC>();
|
||||
zeile.Monat = monat;
|
||||
zeile.SummeMinuten = 0;
|
||||
|
||||
foreach (var e in result.Entgeltzeitraeume)
|
||||
{
|
||||
if (e.Start <= monat && monat <= e.Ende)
|
||||
{
|
||||
zeile.Entgeltzeitraum = e.Index;
|
||||
}
|
||||
}
|
||||
|
||||
monat = monat.AddMonths(1);
|
||||
|
||||
monat2Zeile.Add(key, zeile);
|
||||
}
|
||||
|
||||
var groupBookingDict = new Dictionary<long, bool>();
|
||||
foreach (var sr in serviceRecords)
|
||||
{
|
||||
if (sr.ServiceDescription.ServiceCategory.IsBillable && (!sr.GroupOid.HasValue || !groupBookingDict.ContainsKey(sr.GroupOid.Value)))
|
||||
{
|
||||
if (sr.GroupOid.HasValue)
|
||||
{
|
||||
groupBookingDict.Add(sr.GroupOid.Value, true);
|
||||
}
|
||||
var srDc = MapperFactory.ServiceRecordDC_ServiceRecord.MapToNewDC(sr);
|
||||
String key = String.Format("{0:MM.yyyy}", sr.Start);
|
||||
|
||||
if (monat2Zeile.ContainsKey(key))
|
||||
{
|
||||
monat2Zeile[key].ServiceRecords.Add(srDc);
|
||||
|
||||
decimal minuten = sr.RoundedDuration;
|
||||
monat2Zeile[key].SummeMinuten += minuten;
|
||||
|
||||
foreach (var e in result.Entgeltzeitraeume)
|
||||
{
|
||||
if (e.Start <= sr.Start.Value.Date && sr.Start.Value.Date <= e.Ende)
|
||||
{
|
||||
e.ServiceRecords.Add(srDc);
|
||||
e.SummeFLMinuten += minuten;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
result.MonatsZeilen.AddRange(monat2Zeile.Values.OrderBy(m => m.Monat));
|
||||
|
||||
|
||||
foreach (var e in result.Entgeltzeitraeume)
|
||||
{
|
||||
|
||||
e.SummeFaktorMinuten = (result.RateFactor / 100) * e.SummeFLMinuten;
|
||||
e.SummeGesamtMinuten = e.SummeFaktorMinuten + e.SummeFLMinuten;
|
||||
|
||||
e.SummeFLStunden = e.SummeFLMinuten / 60;
|
||||
e.SummeFaktorStunden = e.SummeFaktorMinuten / 60;
|
||||
e.SummeGesamtStunden = e.SummeGesamtMinuten / 60;
|
||||
|
||||
result.SummeFLMinuten += e.SummeFLMinuten;
|
||||
result.SummeFaktorMinuten += e.SummeFaktorMinuten;
|
||||
result.SummeGesamtMinuten += e.SummeGesamtMinuten;
|
||||
}
|
||||
|
||||
result.SummeFLStunden = result.SummeFLMinuten / 60;
|
||||
result.SummeFaktorStunden = result.SummeFaktorMinuten / 60;
|
||||
result.SummeGesamtStunden = result.SummeGesamtMinuten / 60;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public class BudgetnachweisMonatsZeile
|
||||
{
|
||||
public List<ServiceRecordDC> ServiceRecords { get; set; }
|
||||
public DateTime Monat { get; set; }
|
||||
public decimal? SummeMinuten { get; set; }
|
||||
public int Entgeltzeitraum { get; set; }
|
||||
|
||||
}
|
||||
|
||||
public class Entgeltzeitraum
|
||||
{
|
||||
public List<ServiceRecordDC> ServiceRecords { get; set; }
|
||||
public CostRatePeriodDC CostRatePeriod { get; set; }
|
||||
public DateTime Start { get; set; }
|
||||
public DateTime Ende { get; set; }
|
||||
public decimal SummeFLMinuten { get; set; }
|
||||
public decimal SummeFaktorMinuten { get; set; }
|
||||
public decimal SummeGesamtMinuten { get; set; }
|
||||
public decimal SummeFLStunden { get; set; }
|
||||
public decimal SummeFaktorStunden { get; set; }
|
||||
public decimal SummeGesamtStunden { get; set; }
|
||||
public int Index { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
396
Report/ReportObjects/FlsAuslastungsauswertungRO.cs
Normal file
396
Report/ReportObjects/FlsAuslastungsauswertungRO.cs
Normal file
@@ -0,0 +1,396 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using BeWo.Data.Entities;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
namespace BeWo.Report.ReportObjects
|
||||
{
|
||||
public class FlsAuslastungsauswertungRO : AbstractBeWoReportObject<FlsAuslastungsauswertungRO>
|
||||
{
|
||||
public FLSAuswertungstyp FlsAuswertungstyp { get; }
|
||||
|
||||
public string Auswertungszeitraum => $"{StartDate:dd.MM.yyyy} - {EndDate:dd.MM.yyyy}";
|
||||
|
||||
public Employee Employee { get; set; }
|
||||
|
||||
public string EmployeeName
|
||||
{
|
||||
get
|
||||
{
|
||||
var name = Employee?.Person?.LastNameFirstName ?? string.Empty;
|
||||
|
||||
var weeklyFls = Employee?.LastContract?.WeeklyFLS == null ? string.Empty : $"({Employee.LastContract.WeeklyFLS.Value})";
|
||||
|
||||
return $"{name} {weeklyFls}";
|
||||
}
|
||||
}
|
||||
|
||||
public Team Team { get; set; }
|
||||
|
||||
public string TeamName => Team?.Name ?? string.Empty;
|
||||
|
||||
public string TargetObjectDescription { get; }
|
||||
|
||||
public string TargetObjectName { get; set; }
|
||||
|
||||
public List<Customer2Values> Customer2Values { get; set; } = new List<Customer2Values>();
|
||||
|
||||
public DateTime StartDate { get; set; }
|
||||
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
public FlsAuslastungsauswertungRO(DateTime startDate, DateTime endDate, FLSAuswertungstyp flsAuswertungstyp)
|
||||
{
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
FlsAuswertungstyp = flsAuswertungstyp;
|
||||
}
|
||||
|
||||
public FlsAuslastungsauswertungRO(Employee employee, DateTime startDate, DateTime endDate, FLSAuswertungstyp flsAuswertungstyp)
|
||||
{
|
||||
Employee = employee;
|
||||
TargetObjectDescription = "Mitarbeiter";
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
FlsAuswertungstyp = flsAuswertungstyp;
|
||||
}
|
||||
|
||||
public FlsAuslastungsauswertungRO(Team team, DateTime startDate, DateTime endDate, FLSAuswertungstyp flsAuswertungstyp)
|
||||
{
|
||||
Team = team;
|
||||
TargetObjectDescription = "Team";
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
FlsAuswertungstyp = flsAuswertungstyp;
|
||||
}
|
||||
|
||||
public void UpdateTargetObjectName()
|
||||
{
|
||||
if(Employee != null)
|
||||
{
|
||||
TargetObjectName = $"{Employee.Person.LastNameFirstName}({GetVertraglicheArbeitszeit():0.00}) Mehr/Minderarbeit: {GetMehrMinderauslastung():0.00}";
|
||||
}
|
||||
else if(Team != null)
|
||||
{
|
||||
TargetObjectName = $"{Team.Name} Mehr/Minderarbeit: {GetMehrMinderauslastung():0.00}";
|
||||
}
|
||||
}
|
||||
|
||||
public Customer2Values GetCustomer2ValuesByCustomer(Customer customer)
|
||||
{
|
||||
return Customer2Values?.FirstOrDefault(customer2Values => customer2Values.Customer?.Equals(customer) ?? false);
|
||||
}
|
||||
|
||||
public int GetMonthCount()
|
||||
{
|
||||
return StartDate.GetMonthCount(EndDate);
|
||||
}
|
||||
|
||||
public int GetWeekCount()
|
||||
{
|
||||
return StartDate.GetWeekOfYearCount(EndDate);
|
||||
}
|
||||
|
||||
public int GetStartWeekOfYear()
|
||||
{
|
||||
return StartDate.GetIso8601WeekOfYear();
|
||||
}
|
||||
|
||||
public decimal GetMehrMinderauslastung()
|
||||
{
|
||||
decimal mehrMinderauslastung = 0;
|
||||
|
||||
foreach(var customer2Value in Customer2Values)
|
||||
{
|
||||
mehrMinderauslastung += customer2Value.SollSum + customer2Value.IstSum;
|
||||
}
|
||||
|
||||
return mehrMinderauslastung;
|
||||
}
|
||||
|
||||
public decimal GetVertraglicheArbeitszeit()
|
||||
{
|
||||
if(Employee != null)
|
||||
{
|
||||
var lastContract = Employee.LastContract;
|
||||
|
||||
if(lastContract?.WeeklyFLS != null)
|
||||
{
|
||||
return lastContract.WeeklyFLS.Value;
|
||||
}
|
||||
}
|
||||
|
||||
return 0M;
|
||||
}
|
||||
|
||||
public Customer2Values this[long index]
|
||||
{
|
||||
get
|
||||
{
|
||||
if(Customer2Values == null)
|
||||
{
|
||||
Customer2Values = new List<Customer2Values>();
|
||||
}
|
||||
|
||||
return Customer2Values.FirstOrDefault(f => { return f.Customer?.Oid == index; });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public decimal DiffSum
|
||||
{
|
||||
get
|
||||
{
|
||||
return Customer2Values.Sum(c2V => { return c2V.DiffSum; });
|
||||
}
|
||||
}
|
||||
|
||||
public decimal SollSum
|
||||
{
|
||||
get
|
||||
{
|
||||
return Customer2Values.Sum(c2V => { return c2V.SollSum; });
|
||||
}
|
||||
}
|
||||
|
||||
public string DiffSumInPercent
|
||||
{
|
||||
get
|
||||
{
|
||||
var dsip = SollSum == 0 ? 0M : DiffSum / SollSum * 100;
|
||||
|
||||
return string.Format(new CultureInfo("de-DE"), "{0:0.00}%", dsip);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class Customer2Values
|
||||
{
|
||||
private readonly FLSAuswertungstyp _FlsAuswertungstyp;
|
||||
|
||||
public readonly Guid Id;
|
||||
|
||||
public string CustomerName => Customer?.Person?.LastNameFirstName;
|
||||
public Customer Customer { get; set; }
|
||||
|
||||
public FlsValueObject Day1 { get; set; }
|
||||
public FlsValueObject Day2 { get; set; }
|
||||
public FlsValueObject Day3 { get; set; }
|
||||
public FlsValueObject Day4 { get; set; }
|
||||
public FlsValueObject Day5 { get; set; }
|
||||
public FlsValueObject Day6 { get; set; }
|
||||
public FlsValueObject Day7 { get; set; }
|
||||
public FlsValueObject Day8 { get; set; }
|
||||
public FlsValueObject Day9 { get; set; }
|
||||
public FlsValueObject Day10 { get; set; }
|
||||
public FlsValueObject Day11 { get; set; }
|
||||
public FlsValueObject Day12 { get; set; }
|
||||
public FlsValueObject Day13 { get; set; }
|
||||
public FlsValueObject Day14 { get; set; }
|
||||
public FlsValueObject Day15 { get; set; }
|
||||
public FlsValueObject Day16 { get; set; }
|
||||
public FlsValueObject Day17 { get; set; }
|
||||
public FlsValueObject Day18 { get; set; }
|
||||
public FlsValueObject Day19 { get; set; }
|
||||
public FlsValueObject Day20 { get; set; }
|
||||
public FlsValueObject Day21 { get; set; }
|
||||
public FlsValueObject Day22 { get; set; }
|
||||
public FlsValueObject Day23 { get; set; }
|
||||
public FlsValueObject Day24 { get; set; }
|
||||
public FlsValueObject Day25 { get; set; }
|
||||
public FlsValueObject Day26 { get; set; }
|
||||
public FlsValueObject Day27 { get; set; }
|
||||
public FlsValueObject Day28 { get; set; }
|
||||
public FlsValueObject Day29 { get; set; }
|
||||
public FlsValueObject Day30 { get; set; }
|
||||
|
||||
|
||||
public FlsValueObject Week1 { get; set; }
|
||||
public FlsValueObject Week2 { get; set; }
|
||||
public FlsValueObject Week3 { get; set; }
|
||||
public FlsValueObject Week4 { get; set; }
|
||||
public FlsValueObject Week5 { get; set; }
|
||||
public FlsValueObject Week6 { get; set; }
|
||||
|
||||
|
||||
public FlsValueObject Month1 { get; set; }
|
||||
public FlsValueObject Month2 { get; set; }
|
||||
public FlsValueObject Month3 { get; set; }
|
||||
|
||||
|
||||
public DateTime StartDate { get; set; }
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
|
||||
public Customer2Values(Customer customer, FLSAuswertungstyp flsAuswertungstyp, DateTime startDate, DateTime endDate)
|
||||
{
|
||||
Customer = customer;
|
||||
_FlsAuswertungstyp = flsAuswertungstyp;
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
|
||||
Id = Guid.NewGuid();
|
||||
}
|
||||
|
||||
public Customer2Values()
|
||||
{
|
||||
Id = Guid.NewGuid();
|
||||
}
|
||||
|
||||
public void CalcDifferences()
|
||||
{
|
||||
int count;
|
||||
string prefix;
|
||||
var sollSum = 0M;
|
||||
var istSum = 0M;
|
||||
|
||||
switch(_FlsAuswertungstyp)
|
||||
{
|
||||
case FLSAuswertungstyp.Daily:
|
||||
count = 30;
|
||||
prefix = "Day";
|
||||
break;
|
||||
case FLSAuswertungstyp.Weekly:
|
||||
count = GetWeekCount();
|
||||
prefix = "Week";
|
||||
break;
|
||||
case FLSAuswertungstyp.Monthly:
|
||||
count = GetMonthCount();
|
||||
prefix = "Month";
|
||||
break;
|
||||
default:
|
||||
count = 30;
|
||||
prefix = "Day";
|
||||
break;
|
||||
}
|
||||
|
||||
for(var i = 1; i <= count; i++)
|
||||
{
|
||||
var propertyName = $"{prefix}{i}";
|
||||
var propertyInfo = GetType().GetProperty(propertyName);
|
||||
|
||||
if(propertyInfo != null)
|
||||
{
|
||||
var propertyValue = (FlsValueObject)propertyInfo.GetValue(this, null);
|
||||
|
||||
if(propertyValue != null)
|
||||
{
|
||||
sollSum += propertyValue.Soll;
|
||||
istSum += propertyValue.Ist;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var diffSum = sollSum - istSum;
|
||||
|
||||
SollSum = sollSum;
|
||||
IstSum = istSum;
|
||||
DiffSum = diffSum;
|
||||
|
||||
DifferenzGanzerAbrechnungszeitraum = diffSum;
|
||||
AuslastungNachEnddatumKunde = sollSum > 0 ? diffSum / sollSum * 100 : 0M;
|
||||
DiffSumInPercent = AuslastungNachEnddatumKunde;
|
||||
}
|
||||
|
||||
public decimal SollSum { get; set; }
|
||||
public decimal IstSum { get; set; }
|
||||
public decimal DiffSum { get; set; }
|
||||
public decimal DiffSumInPercent { get; set; }
|
||||
|
||||
|
||||
public decimal DifferenzGanzerAbrechnungszeitraum { get; set; }
|
||||
|
||||
public decimal AuslastungNachEnddatumKunde { get; set; }
|
||||
|
||||
public decimal RestlicheFlsProWoche { get; set; }
|
||||
|
||||
public void AddOrUpdateDay(string propertyName, decimal soll, decimal ist, string timeUnitString)
|
||||
{
|
||||
try
|
||||
{
|
||||
var propertyValue = (FlsValueObject) this.GetPropertyValue(propertyName);
|
||||
|
||||
if(propertyValue == null)
|
||||
{
|
||||
propertyValue = new FlsValueObject(soll, ist, timeUnitString);
|
||||
this.SetPropertyValue(propertyName, propertyValue);
|
||||
}
|
||||
else
|
||||
{
|
||||
propertyValue.Soll += soll;
|
||||
propertyValue.Ist += ist;
|
||||
}
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
Debug.WriteLine(exception);
|
||||
}
|
||||
}
|
||||
|
||||
public FlsValueObject GetFlsValueObject(string prefix, int suffix)
|
||||
{
|
||||
try
|
||||
{
|
||||
var propertyInfo = GetType().GetProperty($"{prefix}{suffix}");
|
||||
|
||||
if(propertyInfo != null)
|
||||
{
|
||||
return (FlsValueObject) propertyInfo.GetValue(this, null);
|
||||
}
|
||||
}
|
||||
catch(Exception exception)
|
||||
{
|
||||
Debug.WriteLine(exception);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public int GetMonthCount()
|
||||
{
|
||||
return StartDate.GetMonthCount(EndDate);
|
||||
}
|
||||
|
||||
public int GetWeekCount()
|
||||
{
|
||||
return StartDate.GetWeekOfYearCount(EndDate);
|
||||
}
|
||||
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if(obj is Customer2Values customer2Values)
|
||||
{
|
||||
return Equals(Customer, customer2Values.Customer);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return Id.GetHashCode();
|
||||
}
|
||||
}
|
||||
|
||||
public class FlsValueObject
|
||||
{
|
||||
public decimal Soll { get; set; }
|
||||
|
||||
public decimal Ist { get; set; }
|
||||
|
||||
public decimal DiffSollIst => Soll - Ist;
|
||||
|
||||
public string TimeUnit { get; set; }
|
||||
|
||||
public FlsValueObject(decimal soll, decimal ist, string timeUnit)
|
||||
{
|
||||
Soll = soll;
|
||||
Ist = ist;
|
||||
TimeUnit = timeUnit;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -314,7 +314,9 @@ namespace BeWo.Report.ReportObjects
|
||||
|
||||
public string NotBillableString { get; set; }
|
||||
|
||||
public CompactCustomerDC Customer { get; set; }
|
||||
public string Notice { get; set; }
|
||||
|
||||
public CompactCustomerDC Customer { get; set; }
|
||||
|
||||
public CostBearer2SupportConcept CostBearer2SupportConcept { get; set; }
|
||||
|
||||
@@ -349,6 +351,7 @@ namespace BeWo.Report.ReportObjects
|
||||
|
||||
result.Claim = (pDC.Claim ?? 0m).ToString("c");
|
||||
result.NotBillableString = pDC.NotBillableString;
|
||||
result.Notice = pDC.Notice;
|
||||
|
||||
result.ServiceInvoiceItems = pDC.InvoiceItems.Select(ServiceInvoiceItemRO.Create).ToList();
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0"/>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/></startup></configuration>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup></configuration>
|
||||
|
||||
@@ -120,6 +120,9 @@
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/ABCBetreuungenReports/app.config
Normal file
11
ReportImp/ABCBetreuungenReports/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -104,6 +104,9 @@
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/ABWElsebrock/app.config
Normal file
11
ReportImp/ABWElsebrock/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -107,6 +107,9 @@
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/ASBBergischGladbachReports/app.config
Normal file
11
ReportImp/ASBBergischGladbachReports/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -197,7 +197,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/ASBHammReports/app.config
Normal file
11
ReportImp/ASBHammReports/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -141,6 +141,9 @@
|
||||
<DependentUpon>SettlementReport.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AachenerVereinReports/app.config
Normal file
11
ReportImp/AachenerVereinReports/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -77,5 +77,8 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
11
ReportImp/AbwDziallasMuhrin/app.config
Normal file
11
ReportImp/AbwDziallasMuhrin/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -114,5 +114,8 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
11
ReportImp/AbwKlassen/app.config
Normal file
11
ReportImp/AbwKlassen/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -55,6 +55,8 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
11
ReportImp/AbwWeeger/app.config
Normal file
11
ReportImp/AbwWeeger/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -166,6 +166,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AdikKleve/app.config
Normal file
11
ReportImp/AdikKleve/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -97,5 +97,8 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
11
ReportImp/AidsHilfeDuisburg/app.config
Normal file
11
ReportImp/AidsHilfeDuisburg/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -100,6 +100,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AidsHilfeGiessen/app.config
Normal file
11
ReportImp/AidsHilfeGiessen/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -98,6 +98,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AidsInitiativeBonn/app.config
Normal file
11
ReportImp/AidsInitiativeBonn/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -126,6 +126,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AidsUndDrogenberatung/app.config
Normal file
11
ReportImp/AidsUndDrogenberatung/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -110,6 +110,9 @@
|
||||
<Name>Shared</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
11
ReportImp/AidshilfeDortmund/app.config
Normal file
11
ReportImp/AidshilfeDortmund/app.config
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.5.1.0" newVersion="2.5.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user