Update + neuer bereich unter Verwaltung/QB

This commit is contained in:
Waldi
2017-08-10 13:45:36 +02:00
parent 6eb0ce160b
commit b796f0a718
17 changed files with 763 additions and 232 deletions

View File

@@ -17,7 +17,7 @@
xmlns:validation="clr-namespace:BeWo.Validation"
xmlns:search="clr-namespace:BeWo.View.Search"
xmlns:themes="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True">
Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True" x:Name="View">
<localView:BeWoView.Resources>
<ResourceDictionary>
@@ -36,11 +36,6 @@
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<!-- Mal Schauen wohin mich das führt || Grid.IsSharedSizeScope="True"-->
<!-- #################################### Oberer Header Bereich ############################################### -->
<Grid x:Name="GridHader" Grid.ColumnSpan="3" Grid.Row="0" >
@@ -67,11 +62,7 @@
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Wochenansicht" Click="ButtonWorkWeekView_Click" VerticalAlignment="Top">
<Image Source="/Ressources/Icons/Calendar5Day24.png" />
</Button>
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Wie Abschlagszahlung" Click="ButtonWieAbschlagszahlung_OnClick" VerticalAlignment="Top" >
<Image Source="/BeWoPlaner;component/Ressources/Icons/Calendar 1.png" />
</Button>
</Button>
<Button Style="{x:Null}" Margin="3,3,3,3" Height="24" Width="24" ToolTip="Aktualisieren" Click="Aktualisieren_OnClick" VerticalAlignment="Top" >
<Image Source="../Ressources/Icons/SymbolRefresh32.png" />
@@ -764,26 +755,8 @@
</dxg:GridControl.View>
</dxg:GridControl>
<!--############################### Klient / Soll wie Abschlagszahlungen sein ####################################################################################################-->
<dxg:GridControl x:Name="GridControlQuittierungsCheck" Visibility="Collapsed" Grid.ColumnSpan="3" Grid.Row="1" AllowDrop="True" Margin="5,5,5,5" VerticalContentAlignment="Center" BorderBrush="Black" >
<dxg:GridControl.Columns>
<dxg:GridColumn Header="Klient" FieldName="Klient" ReadOnly="True" Width="125" GroupIndex="0"/>
<dxg:GridColumn Header="Quittierungsbeleg Gedruckt" FieldName="QuittierungsbelegGedruckt" Width="125">
</dxg:GridColumn>
<dxg:GridColumn Header="Quittierungsbeleg Unterschrieben" FieldName="QuittierungsbelegUnterschrieben" Width="125">
</dxg:GridColumn>
</dxg:GridControl.Columns>
</dxg:GridControl>
<!--#############################################################################################################################################################################-->
<Popup Margin="10" x:Name="popup_MitarbeiterVertretung" StaysOpen="False" Placement="MousePoint" Width="370" Height="250"
Closed="popup_Closed" Opened="popup_Opened">
<search:EmployeeSearchView x:Name="MitarbeiterVertretungsearchview" />

View File

@@ -32,6 +32,7 @@ using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
using DevExpress.Utils;
using DevExpress.Xpf.Bars;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using DevExpress.Xpf.Scheduler;
@@ -70,9 +71,7 @@ namespace BeWo.SchulbegleitenderDienst
private List<MitarbeiterWochenansicht> _mitarbeiterwochen = new List<MitarbeiterWochenansicht>();
private List<WieAbschlagszahlung> _wieAbschlagszahlung = new List<WieAbschlagszahlung>();
private List<QuittierungsCheckView> _quittierungsCheck = new List<QuittierungsCheckView>();
//private List<WieAbschlagszahlung> _wieAbschlagszahlung = new List<WieAbschlagszahlung>();
public NewSchulbegleitenderDienstView()
{
@@ -82,11 +81,9 @@ namespace BeWo.SchulbegleitenderDienst
GridDataControlKlientenWochenansicht.ItemsSource = _itemsWochen;
GridDataControlMitarbeiterWochenansicht.ItemsSource = _mitarbeiterwochen;
//GridControlKlient.ItemsSource = _wieAbschlagszahlung;
setAktDate();
SetAbwesenheiten();
SetAbwesenheiten();
}
private void SetAbwesenheiten()
@@ -130,7 +127,6 @@ namespace BeWo.SchulbegleitenderDienst
{
AddItemsToGrid(item);
}
#region Dispatcher Refresh Grid
this.Dispatch(delegate
@@ -153,7 +149,6 @@ namespace BeWo.SchulbegleitenderDienst
{
AddItemsToGrid(item);
}
#region Dispatcher Refresh Grid
this.Dispatch(delegate
@@ -177,11 +172,9 @@ namespace BeWo.SchulbegleitenderDienst
AddMitarbeiterItemsToGrid(item,startDatum);
}
// gib dem grid die VrtMiList mit
#region Dispatcher Refresh Grid
this.Dispatch(delegate
{
//GetWochenDienstFromItems(startDatum);
{
GridDataControlMitarbeiterWochenansicht.RefreshData();
GridDataControlMitarbeiterWochenansicht.RefreshUI();
});
@@ -207,8 +200,8 @@ namespace BeWo.SchulbegleitenderDienst
// });
// #endregion
//});
}
}
private void AddItemsToGrid(VertretungsListeItemsDC item)
{
@@ -374,28 +367,19 @@ namespace BeWo.SchulbegleitenderDienst
{
//Add irgendwas mit WieAbschlagszahlung
foreach (var key in item)
{
//foreach (var key in item)
//{
foreach (var valuelist in key.Value)
{
WieAbschlagszahlung waz = new WieAbschlagszahlung(key.Key.FullName,valuelist.InsertedOn.ToString(),valuelist.BookingDate.ToString(),
valuelist.ValidityDate.ToString(),valuelist.Amount.ToString(),valuelist.Notice,"Unterschift fehlt",key.Key);
// foreach (var valuelist in key.Value)
// {
// WieAbschlagszahlung waz = new WieAbschlagszahlung(key.Key.FullName,valuelist.InsertedOn.ToString(),valuelist.BookingDate.ToString(),
// valuelist.ValidityDate.ToString(),valuelist.Amount.ToString(),valuelist.Notice,"Unterschift fehlt",key.Key);
_wieAbschlagszahlung.Add(waz);
}
}
// _wieAbschlagszahlung.Add(waz);
// }
//}
}
private void AddQuittierungsCheckToGrid()
{
//hier qb hinzufügen
QuittierungsCheckView x = new QuittierungsCheckView();
_quittierungsCheck.Add(x);
}
public MitarbeiterWochenansicht WochentageMitarbeiterVerarbeitung(DateTime startDt, DateTime endDt, DateTime wochenTag, VertretungsListeMitarbeiterItemsDC item, MitarbeiterWochenansicht wwk, string eingesetztBei, int wochenTagZahl)
{
// mach colles zeug
@@ -2134,13 +2118,6 @@ namespace BeWo.SchulbegleitenderDienst
GridDataControlKlientenWochenansicht.Visibility = Visibility.Visible;
KwWochenAnzeigen();
}else if (GridControlQuittierungsCheck.Visibility == Visibility.Visible)
{
GridControlQuittierungsCheck.Visibility = Visibility.Collapsed;
GridDataControlKlientenWochenansicht.Visibility = Visibility.Visible;
KwWochenAnzeigen();
}
}
@@ -2160,9 +2137,6 @@ namespace BeWo.SchulbegleitenderDienst
else if (GridDataControlMitarbeiterWochenansicht.Visibility == Visibility.Visible)
{
GetAllVertretungsFreieMitarbeiter(startdt, enddt);
}else if (GridControlQuittierungsCheck.Visibility == Visibility.Visible)
{
GetAllWieAbschlagszahlung(startdt,enddt);
}
@@ -2176,9 +2150,7 @@ namespace BeWo.SchulbegleitenderDienst
GridDataControlTagesansicht.Visibility = Visibility.Visible;
GridDataControlKlientenWochenansicht.Visibility = Visibility.Collapsed;
GridDataControlMitarbeiterWochenansicht.Visibility = Visibility.Collapsed;
GridControlQuittierungsCheck.Visibility = Visibility.Collapsed;
TagesAnzeige();
}
@@ -2209,12 +2181,6 @@ namespace BeWo.SchulbegleitenderDienst
{
var x = Datepicker.DateTime.FirstDateOfWeek(Datepicker.DateTime.GetIso8601WeekOfYear());
GetAllVertretungsFreieMitarbeiter(x, x.AddDays(5));
}else if (GridControlQuittierungsCheck.Visibility == Visibility.Visible)
{
//hier das ganze gedönse
var x = Datepicker.DateTime.FirstDateOfWeek(Datepicker.DateTime.GetIso8601WeekOfYear());
GetAllWieAbschlagszahlung(x,x.AddDays(5));
}
}
@@ -2295,23 +2261,8 @@ namespace BeWo.SchulbegleitenderDienst
}
}
private void ButtonWieAbschlagszahlung_OnClick(object sender, RoutedEventArgs e)
{
//Hier das Ganze gedönse wie oben
if (GridControlQuittierungsCheck.Visibility == Visibility.Collapsed)
{
GridControlQuittierungsCheck.Visibility = Visibility.Visible;
GridDataControlKlientenWochenansicht.Visibility = Visibility.Collapsed;
GridDataControlMitarbeiterWochenansicht.Visibility = Visibility.Collapsed;
GridDataControlTagesansicht.Visibility = Visibility.Collapsed;
var x = Datepicker.DateTime.FirstDateOfWeek(Datepicker.DateTime.GetIso8601WeekOfYear());
GetAllWieAbschlagszahlung(x,x.AddDays(5));
}
}
}
}
#region Connectoren
@@ -2429,30 +2380,30 @@ namespace BeWo.SchulbegleitenderDienst
public string So { get; set; }
}
public class WieAbschlagszahlung
{
public virtual string Klient { get; set; }
public virtual string AngelegtAm { get; set; }
public virtual string Buchubngsdatum { get; set; }
public virtual string Gueltigkeitsdatum { get; set; }
public virtual string Betrag { get; set; }
public virtual string Kommentar { get; set; }
public virtual string isUnterschrift { get; set; }
//public class WieAbschlagszahlung
//{
// public virtual string Klient { get; set; }
// public virtual string AngelegtAm { get; set; }
// public virtual string Buchubngsdatum { get; set; }
// public virtual string Gueltigkeitsdatum { get; set; }
// public virtual string Betrag { get; set; }
// public virtual string Kommentar { get; set; }
// public virtual string isUnterschrift { get; set; }
public virtual CompactCustomerDC KlientDC { get; set; }
// public virtual CompactCustomerDC KlientDC { get; set; }
public WieAbschlagszahlung(string klient, string angelegt, string buchung, string gueltigkeit, string betrag, string kommentar, string unterschrift, CompactCustomerDC klientdc)
{
Klient = klient;
AngelegtAm = angelegt;
Buchubngsdatum = buchung;
Gueltigkeitsdatum = gueltigkeit;
Betrag = betrag;
Kommentar = kommentar;
isUnterschrift = unterschrift;
KlientDC = klientdc;
}
}
// public WieAbschlagszahlung(string klient, string angelegt, string buchung, string gueltigkeit, string betrag, string kommentar, string unterschrift, CompactCustomerDC klientdc)
// {
// Klient = klient;
// AngelegtAm = angelegt;
// Buchubngsdatum = buchung;
// Gueltigkeitsdatum = gueltigkeit;
// Betrag = betrag;
// Kommentar = kommentar;
// isUnterschrift = unterschrift;
// KlientDC = klientdc;
// }
//}
#endregion
}

View File

@@ -906,12 +906,5 @@ namespace BeWo.SchulbegleitenderDienst
}
public class QuittierungsCheckView
{
public string Klient { get; set; }
public bool QuittierungsbelegUnterschrieft { get; set; }
public bool QuittierungsbelegGedruckt { get; set; }
//public DateTime Monat{get;set;}
}
}

View File

@@ -1320,6 +1320,25 @@ namespace BeWo.ServiceProxy
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.EmployeeDC))]
BS.Shared.DataContracts.PersonDC GetPersonWithCustomerOid(long oid);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/GetAllActiveCustomersCompactWithQBCheckList", ReplyAction="http://tempuri.org/ICustomerService/GetAllActiveCustomersCompactWithQBCheckListRe" +
"sponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/GetAllActiveCustomersCompactWithQBCheckListBe" +
"WoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
System.Collections.Generic.List<BS.Shared.DataContracts.QuittierungsCheckViewListItemsDC> GetAllActiveCustomersCompactWithQBCheckList(bool fetchReferenceNumbers, System.Nullable<long> currentEmployeeOid, System.DateTime monat);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/SaveNewQuittierungsCheck", ReplyAction="http://tempuri.org/ICustomerService/SaveNewQuittierungsCheckResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/SaveNewQuittierungsCheckBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void SaveNewQuittierungsCheck(BS.Shared.DataContracts.QuittierungsCheckDC newItem);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/UpdateNewQuittierungsCheck", ReplyAction="http://tempuri.org/ICustomerService/UpdateNewQuittierungsCheckResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/UpdateNewQuittierungsCheckBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void UpdateNewQuittierungsCheck(BS.Shared.DataContracts.QuittierungsCheckDC newItem);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/UpdateQuittierungsCheckWithCustomer", ReplyAction="http://tempuri.org/ICustomerService/UpdateQuittierungsCheckWithCustomerResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/UpdateQuittierungsCheckWithCustomerBeWoFaultF" +
"ault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void UpdateQuittierungsCheckWithCustomer(long oid, long loggedinUserOid, System.DateTime monat);
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/ArchiveCustomer", ReplyAction="http://tempuri.org/ICustomerService/ArchiveCustomerResponse")]
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/ArchiveCustomerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
void ArchiveCustomer(long pOid, long pVersion);
@@ -2089,6 +2108,26 @@ namespace BeWo.ServiceProxy
return base.Channel.GetPersonWithCustomerOid(oid);
}
public System.Collections.Generic.List<BS.Shared.DataContracts.QuittierungsCheckViewListItemsDC> GetAllActiveCustomersCompactWithQBCheckList(bool fetchReferenceNumbers, System.Nullable<long> currentEmployeeOid, System.DateTime monat)
{
return base.Channel.GetAllActiveCustomersCompactWithQBCheckList(fetchReferenceNumbers, currentEmployeeOid, monat);
}
public void SaveNewQuittierungsCheck(BS.Shared.DataContracts.QuittierungsCheckDC newItem)
{
base.Channel.SaveNewQuittierungsCheck(newItem);
}
public void UpdateNewQuittierungsCheck(BS.Shared.DataContracts.QuittierungsCheckDC newItem)
{
base.Channel.UpdateNewQuittierungsCheck(newItem);
}
public void UpdateQuittierungsCheckWithCustomer(long oid, long loggedinUserOid, System.DateTime monat)
{
base.Channel.UpdateQuittierungsCheckWithCustomer(oid, loggedinUserOid, monat);
}
public void ArchiveCustomer(long pOid, long pVersion)
{
base.Channel.ArchiveCustomer(pOid, pVersion);

View File

@@ -5,105 +5,152 @@
xmlns:localSearchView="clr-namespace:BeWo.View.Search"
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
xmlns:dxp="http://schemas.devexpress.com/winfx/2008/xaml/printing"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True">
<GroupBox Header="Quittierungsbelege" Style="{StaticResource ObjectEditGroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Grid.Row="0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" MinWidth="50"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<CheckBox Margin="3 7" Name="checkbox_all" IsChecked="True" Content="Alle Klienten" Checked="CheckBox_Checked" />
<GroupBox Header="Quittierungsbelege" Style="{StaticResource ObjectEditGroupBox}">
<TabControl>
<TabItem Header="Neu Erstellen" x:Name="TabItemNeuErstellen" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Grid.Row="0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" MinWidth="50"/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<uc:PopUpEdit IsReadOnly="True" Height="23" Grid.Column="2"
x:Name="popupedit_customer" DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=checkbox_all, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='false'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_customer_PopUpClick" Cursor="Arrow" PreviewMouseDoubleClick="Popupedit_customer_OnPreviewMouseDoubleClick" />
<CheckBox Margin="3 7" Name="checkbox_all" IsChecked="True" Content="Alle Klienten" Checked="CheckBox_Checked" />
<uc:PopUpEdit IsReadOnly="True" Height="23" Grid.Column="2"
x:Name="popupedit_customer" DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=checkbox_all, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='false'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_customer_PopUpClick" Cursor="Arrow" PreviewMouseDoubleClick="Popupedit_customer_OnPreviewMouseDoubleClick" />
<Label Margin="0 2" Content="Monat" Grid.Column="3" />
<ComboBox Height="23" x:Name="combobox_month" Grid.Column="4" Margin="3" VerticalAlignment="Top" Width="90" />
<Label Margin="0 2" Content="Monat" Grid.Column="3" />
<ComboBox Height="23" x:Name="combobox_month" Grid.Column="4" Margin="3" VerticalAlignment="Top" Width="90" />
<Label Margin="0 2" Content="Vom" Grid.Column="5" />
<ComboBox Height="23" x:Name="combobox_Startday" Grid.Column="6" Margin="3,3,0,3" VerticalAlignment="Top" Width="50" />
<Label Margin="0 2" Content="Vom" Grid.Column="5" />
<ComboBox Height="23" x:Name="combobox_Startday" Grid.Column="6" Margin="3,3,0,3" VerticalAlignment="Top" Width="50" />
<TextBlock Margin="0 7,3,0" Text=". bis" Grid.Column="7" Foreground="Black" />
<ComboBox Height="23" x:Name="combobox_Endday" Grid.Column="8" Margin="3,3,0,3" VerticalAlignment="Top" Width="50" />
<TextBlock Margin="0 7,3,0" Text=". bis" Grid.Column="7" Foreground="Black" />
<ComboBox Height="23" x:Name="combobox_Endday" Grid.Column="8" Margin="3,3,0,3" VerticalAlignment="Top" Width="50" />
<TextBlock Margin="0 7,3,0" Text=". Jahr" Grid.Column="9" Foreground="Black"/>
<ComboBox Height="23" x:Name="combobox_year" Grid.Column="10" VerticalAlignment="Top" Margin="3" Width="60" />
<TextBlock Margin="0 7,3,0" Text=". Jahr" Grid.Column="9" Foreground="Black"/>
<ComboBox Height="23" x:Name="combobox_year" Grid.Column="10" VerticalAlignment="Top" Margin="3" Width="60" />
<Button Name="button_generate" Grid.Column="11" VerticalAlignment="Top" FontWeight="Bold" Content="Erstellen" Click="button_generate_Click" Height="23" Margin="3" />
<Button Name="button_generate" Grid.Column="11" VerticalAlignment="Top" FontWeight="Bold" Content="Erstellen" Click="button_generate_Click" Height="23" Margin="3" />
<StackPanel Grid.Row="1" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="chkForAllCostbearer" Content="Nur für ausgewählten Kostenträger erstellen" IsChecked="False" />
<uc:PopUpEdit PreviewMouseDoubleClick="Popupedit_costbearer_OnPreviewMouseDoubleClick"
IsReadOnly="True" Width="250" Height="23"
x:Name="popupedit_costbearer"
DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=chkForAllCostbearer, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_costbearer_PopUpClick" Cursor="Arrow" />
</StackPanel>
<StackPanel Grid.Row="2" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="chkForAllEmployees" Content="Nur für ausgewählten Mitarbeiter erstellen" IsChecked="False" />
<uc:PopUpEdit PreviewMouseDoubleClick="Popupedit_employee_OnPreviewMouseDoubleClick"
IsReadOnly="True" Width="250" Height="23"
x:Name="popupedit_employee"
DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=chkForAllEmployees, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_employee_PopUpClick" Cursor="Arrow" />
</StackPanel>
<StackPanel Grid.Row="1" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="chkForAllCostbearer" Content="Nur für ausgewählten Kostenträger erstellen" IsChecked="False" />
<uc:PopUpEdit PreviewMouseDoubleClick="Popupedit_costbearer_OnPreviewMouseDoubleClick"
IsReadOnly="True" Width="250" Height="23"
x:Name="popupedit_costbearer"
DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=chkForAllCostbearer, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_costbearer_PopUpClick" Cursor="Arrow" />
</StackPanel>
<StackPanel Grid.Row="2" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="chkForAllEmployees" Content="Nur für ausgewählten Mitarbeiter erstellen" IsChecked="False" />
<uc:PopUpEdit PreviewMouseDoubleClick="Popupedit_employee_OnPreviewMouseDoubleClick"
IsReadOnly="True" Width="250" Height="23"
x:Name="popupedit_employee"
DeleteButtonVisibility="Collapsed"
Visibility="{Binding Path=IsChecked, ElementName=chkForAllEmployees, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"
Margin="3" VerticalAlignment="Top" PopUpClick="popupedit_employee_PopUpClick" Cursor="Arrow" />
</StackPanel>
<StackPanel Grid.Row="3" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="ChkForAllServiceCategories" Content="Nur für ausgewählte Leistungskategorie erstellen" IsChecked="False" />
<uc:NullItemComboBox Width="250" Margin="3" VerticalAlignment="Top" x:Name="ServiceCategoriesComboBox" SelectedIndex="0"
Visibility="{Binding Path=IsChecked, ElementName=ChkForAllServiceCategories, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"/>
</StackPanel>
<StackPanel Grid.Row="3" Grid.ColumnSpan="12" Orientation="Horizontal" VerticalAlignment="Stretch">
<CheckBox Margin="3 7" Grid.Row="1" Name="ChkForAllServiceCategories" Content="Nur für ausgewählte Leistungskategorie erstellen" IsChecked="False" />
<uc:NullItemComboBox Width="250" Margin="3" VerticalAlignment="Top" x:Name="ServiceCategoriesComboBox" SelectedIndex="0"
Visibility="{Binding Path=IsChecked, ElementName=ChkForAllServiceCategories, Converter={StaticResource BoolVisibilityConverter}, ConverterParameter='true'}"/>
</StackPanel>
<Popup Margin="10" Name="popup_customer" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:CustomerSearchView ItemSelected="CustomerSearchView_CustomerSelected" x:Name="customersearchview" />
</Popup>
<Popup Margin="10" Name="popup_customer" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:CustomerSearchView ItemSelected="CustomerSearchView_CustomerSelected" x:Name="customersearchview" />
</Popup>
<Popup Margin="10" Name="popup_costbearer" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:OrganisationSearchView SearchMode="CostBearer" ItemSelected="OrganisationSearchView_OrganisationSelected" x:Name="organisationsearchview" />
</Popup>
<Popup Margin="10" Name="popup_costbearer" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:OrganisationSearchView SearchMode="CostBearer" ItemSelected="OrganisationSearchView_OrganisationSelected" x:Name="organisationsearchview" />
</Popup>
<Popup Margin="10" Name="popup_employee" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:EmployeeSearchView ItemSelected="EmployeeSearchView_EmployeeSelected" x:Name="employeesearchview" />
</Popup>
</Grid>
</ScrollViewer>
<Popup Margin="10" Name="popup_employee" StaysOpen="False" Placement="MousePoint" Width="400" Grid.Row="3" Height="400" Closed="popup_Closed" Opened="popup_Opened">
<localSearchView:EmployeeSearchView ItemSelected="EmployeeSearchView_EmployeeSelected" x:Name="employeesearchview" />
</Popup>
</Grid>
</ScrollViewer>
<dxp:DocumentPreview x:Name="docPrevControl" Grid.Row="1" Visibility="Collapsed"></dxp:DocumentPreview>
<dxp:DocumentPreview x:Name="docPrevControl" Grid.Row="1" Visibility="Collapsed"></dxp:DocumentPreview>
</Grid>
</GroupBox>
</Grid>
</TabItem>
<TabItem Header="Übersicht" x:Name="TabItemUebersicht">
<StackPanel Orientation="Vertical">
<!--Als Combobox machen und dem eine liste mitgeben von jan bis dez und dann so auswählen lassen -->
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" x:Name="DatepickerUbersicht" Height="23" Width="100" EditValueChanged="Datepicker_OnEditValueChanged" Margin="3,3,3,3" AllowNullInput="False" HorizontalAlignment="Left" >
</dxe:DateEdit>
<dxg:GridControl x:Name="GridControlQuittierungsCheck" Visibility="Visible" AllowDrop="True" Margin="5,5,5,5" VerticalContentAlignment="Center" BorderBrush="Black" >
<dxg:GridControl.Columns>
<dxg:GridColumn Header="Klient" FieldName="Klient" Width="150" ReadOnly="True"/>
<dxg:GridColumn Header="Quittierungsbeleg Gedruckt" FieldName="QuittierungsbelegGedruckt" Width="175" ReadOnly="True" >
</dxg:GridColumn>
<dxg:GridColumn Header="Quittierungsbeleg Gedruckt Am" FieldName="QuittierungsbelegGedrucktAm" Width="175" ReadOnly="True"/>
<dxg:GridColumn Header="Quittierungsbeleg Gedruckt Von" FieldName="QuittierungsbelegGedrucktVon" Width="175" ReadOnly="True" />
<dxg:GridColumn Header="Quittierungsbeleg Unterschrieben" FieldName="QuittierungsbelegUnterschrieben" Width="175" >
</dxg:GridColumn>
<dxg:GridColumn Header="Quittierungsbeleg Unterschrieben Von" FieldName="QuittierungsbelegUnterschriebenVon" Width="175" ReadOnly="True" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView AllowPerPixelScrolling="True" ShowTotalSummary="False" AutoWidth="True" CellValueChanged="GridViewBase_OnCellValueChanged" />
</dxg:GridControl.View>
</dxg:GridControl>
</StackPanel>
</TabItem>
</TabControl>
</GroupBox>
</localView:BeWoView>

View File

@@ -8,6 +8,7 @@ using System.Windows.Input;
using BeWo.Controls;
using BeWo.Core;
using BeWo.SchulbegleitenderDienst;
using BeWo.ServiceProxy;
using BeWo.ViewModel;
@@ -18,6 +19,8 @@ using BS.Shared.DataContracts.Compact;
using BS.Shared.Extensions;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using DevExpress.Xpf.Printing;
using DevExpress.XtraReports.UI;
@@ -40,17 +43,27 @@ namespace BeWo.View.Detail.Report
public CompactOrganisationDC Organisation { get { return _Organisation; } set { _Organisation = value; } }
private List<QuittierungsCheckView> _quittierungsCheck = new List<QuittierungsCheckView>();
public bool FetchReferenceNumbers { get; set; }
public ServicesReportView()
{
InitializeComponent();
InitDateCombos();
InitServiceCategoryCombo();
//if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View))
//{
// checkbox_all.IsEnabled = false;
// checkbox_all.IsChecked = false;
//}
//if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View))
//{
// checkbox_all.IsEnabled = false;
// checkbox_all.IsChecked = false;
//}
DatepickerUbersicht.DateTime = DateTime.Now;
GridControlQuittierungsCheck.ItemsSource = _quittierungsCheck;
GetQuittierungsCheckCustomerList(DateTime.Now);
combobox_month.SelectionChanged += combobox_month_SelectionChanged;
combobox_year.SelectionChanged += combobox_year_SelectionChanged;
@@ -207,7 +220,12 @@ namespace BeWo.View.Detail.Report
string url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?";
if (_Customer != null)
{
var month = new DateTime(DateTime.Now.Year,combobox_month.SelectedIndex + 1,DateTime.Now.Day);
ServiceFacade.DoCustomerServiceSync(r => r.UpdateQuittierungsCheckWithCustomer(_Customer.CustomerOid,BeWoApp.LoggedOnUser.Employee.EmployeeOid,month));
url += "cOid=" + Customer.CustomerOid + "&type=" + Utils.EnumName(ReportTypes.ServiceOverviewSingleCustomer);
}
else
url += "type=" + Utils.EnumName(ReportTypes.ServiceOverviewAllCustomers);
@@ -219,7 +237,7 @@ namespace BeWo.View.Detail.Report
{
url += "&scOid=" + ((ServiceCategoryDC)ServiceCategoriesComboBox.SelectedItem).ServiceCategoryOid;
}
//var tempToken = string.Empty;
//ServiceFacade.DoDownloadServiceSync(s => tempToken = s.CreateTemporaryToken(url, true));
//string addChar = (url.Contains("?")) ? "&" : "?";
@@ -283,5 +301,172 @@ namespace BeWo.View.Detail.Report
VMFactory.CreateEmployeeVMAsync(_Employee.EmployeeOid, cb => this.Dispatch(() => BeWoUtils.OpenModalViewWindow<EmployeeVM, EmployeeDC, ServicesReportView>(cb, this, () => this.Dispatch(
() => BeWoUtils.UpdateAllViews(_Employee)))));
}
//####################### Übersicht bereich #############################################
private void GetQuittierungsCheckCustomerList(DateTime monat)
{
List<QuittierungsCheckViewListItemsDC> qbCheckList = new List<QuittierungsCheckViewListItemsDC>();
long? oid = null;
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View))
{
oid = BeWoApp.LoggedOnUser.Employee.EmployeeOid;
}
ServiceFacade.DoCustomerServiceAsync(
s => s.GetAllActiveCustomersCompactWithQBCheckList(this.FetchReferenceNumbers, oid, monat),
r =>
{
List<QuittierungsCheckViewListItemsDC> list = r;
if (oid != null)
{
list = list.Where(c => c.Customer.IsRelatedToEmployee).ToList();
}
list.Sort((x, y) => (x.Customer.LastName + ", " + x.Customer.FirstName).CompareTo(y.Customer.LastName + ", " + y.Customer.FirstName));
qbCheckList = list;
#region Dispatcher Refresh and add items to Grid
this.Dispatch(delegate
{
AddQuittierungsCheckToGrid(qbCheckList);
GridControlQuittierungsCheck.RefreshData();
GridControlQuittierungsCheck.RefreshUI();
});
#endregion
});
}
private void AddQuittierungsCheckToGrid(List<QuittierungsCheckViewListItemsDC> customerListe)
{
_quittierungsCheck.Clear();
foreach (var list in customerListe)
{
QuittierungsCheckView x = new QuittierungsCheckView();
x.Klient = list.Customer.FullName;
//############ Druck ####################
if (list.QuittierungsbelegDruck.HasValue)
x.QuittierungsbelegGedruckt = list.QuittierungsbelegDruck.Value;
if (list.QuittierungsbelegDruckAm.HasValue)
x.QuittierungsbelegGedrucktAm = list.QuittierungsbelegDruckAm.Value.ToString("dd.MM.yyyy");
x.GedrucktAm = list.QuittierungsbelegDruckAm;
x.QuittierungsbelegGedrucktVonOid = list.QuittierungsbelegGedrucktVonOid;
x.QuittierungsbelegGedrucktVon = list.QuittierungsbelegGedrucktVon;
//######################################
//############ Unterschrift ############
if (list.QuittierungsbelegUnterschrift.HasValue)
x.QuittierungsbelegUnterschrieben = list.QuittierungsbelegUnterschrift.Value;
x.QuittierungsbelegUnterschriebenVonOid = list.QuittierungsbelegUnterschriftVonOid;
x.QuittierungsbelegUnterschriebenVon = list.QuittierungsbelegUnterschriftVon;
//######################################
if (list.QuittierungsCheckOid.HasValue)
x.QuittierungsCheckOid = list.QuittierungsCheckOid;
if (list.Monat.HasValue)
x.Monat = list.Monat.Value;
x.CompactCustomer = list.Customer;
_quittierungsCheck.Add(x);
}
}
private void GridViewBase_OnCellValueChanged(object sender, CellValueChangedEventArgs e)
{
var qbChanges = (QuittierungsCheckView)GridControlQuittierungsCheck.SelectedItem;
var qbold = (bool)e.OldValue;
QuittierungsCheckDC qbCheck = new QuittierungsCheckDC()
{
CustomerOid = qbChanges.CompactCustomer.CustomerOid,
QuittierungsbelegUnterschrieben = qbChanges.QuittierungsbelegUnterschrieben,
QuittierungsbelegGedruckt = qbChanges.QuittierungsbelegGedruckt,
QuittierungsbelegGedrucktAm = qbChanges.GedrucktAm,
QuittierungsbelegGedrucktVon = qbChanges.QuittierungsbelegGedrucktVonOid,
Monat = qbChanges.Monat
};
//### Unterschrift
if (qbold != qbChanges.QuittierungsbelegUnterschrieben &&
qbChanges.QuittierungsbelegUnterschrieben) //bugs bunny
{
qbCheck.QuittierungsbelegUnterschriebenVon = BeWoApp.LoggedOnUser.Employee.EmployeeOid;
}
else
{
qbCheck.QuittierungsbelegUnterschriebenVon = null;
}
//fehler gefunden
if (qbChanges.QuittierungsCheckOid.HasValue)
{
qbCheck.QuittierungsCheckOid = qbChanges.QuittierungsCheckOid;
ServiceFacade.DoCustomerServiceSync(r => r.UpdateNewQuittierungsCheck(qbCheck));
}
else
{
ServiceFacade.DoCustomerServiceSync(r => r.SaveNewQuittierungsCheck(qbCheck));
}
GetQuittierungsCheckCustomerList(DateTime.Now);
}
//actionevent für die CheckBoxen die den obigen Actionevent aufrufen
private void Datepicker_OnEditValueChanged(object sender, EditValueChangedEventArgs e)
{
//übergebe hier den aktuell ausgewählten monat
GetQuittierungsCheckCustomerList(DateTime.Now);
}
}
public class QuittierungsCheckView
{
public string Klient { get; set; }
public bool QuittierungsbelegGedruckt { get; set; }
public string QuittierungsbelegGedrucktAm { get; set; }
public string QuittierungsbelegGedrucktVon { get; set; }
public bool QuittierungsbelegUnterschrieben { get; set; }
public string QuittierungsbelegUnterschriebenVon { get; set; }
public long? QuittierungsCheckOid;
public long? QuittierungsbelegUnterschriebenVonOid;
public long? QuittierungsbelegGedrucktVonOid;
public CompactCustomerDC CompactCustomer { get; set; }
public DateTime Monat { get; set; }
public DateTime? GedrucktAm { get; set; }
}
}

View File

@@ -11,13 +11,17 @@ namespace BeWo.ViewModel
public static string PropertyName_QuittierungsbelegUnterschrieben = "QuittierungsbelegUnterschrieben";
public static string PropertyName_QuittierungsbelegGedruckt = "QuittierungsbelegGedruckt";
public static string PropertyName_QuittierungsbelegGedrucktAm = "QuittierungsbelegGedrucktAm";
private DateTime? _Monat;
private bool? _QuittierungsbelegUnterschrieben;
private bool? _QuittierungsbelegGedruckt;
private DateTime? _QuittierungsbelegGedrucktAm;
public QuittierungsCheckVM(QuittierungsCheckDC pDC)
: base(pDC, true)
{
@@ -38,6 +42,23 @@ namespace BeWo.ViewModel
}
}
public DateTime? QuittierungsbelegGedrucktAm
{
get { return this._QuittierungsbelegGedrucktAm; }
set
{
if (this.AreDifferent(this._QuittierungsbelegGedrucktAm, value))
{
this._QuittierungsbelegGedrucktAm = value;
this.StoreDirtyInformation(this.AreDifferent(this.DataContract.QuittierungsbelegGedrucktAm, value), PropertyName_QuittierungsbelegGedrucktAm);
this.FirePropertyChanged(PropertyName_QuittierungsbelegGedrucktAm);
}
}
}
public bool? QuittierungsbelegUnterschrieben
{
get { return this._QuittierungsbelegUnterschrieben; }
@@ -75,7 +96,7 @@ namespace BeWo.ViewModel
this._Monat = pDataContract.Monat;
_QuittierungsbelegGedruckt = pDataContract.QuittierungsbelegGedruckt;
_QuittierungsbelegUnterschrieben = pDataContract.QuittierungsbelegUnterschrieben;
_QuittierungsbelegGedrucktAm = pDataContract.QuittierungsbelegGedrucktAm;
}
@@ -84,6 +105,7 @@ namespace BeWo.ViewModel
pDataContract.Monat = _Monat;
pDataContract.QuittierungsbelegGedruckt = _QuittierungsbelegGedruckt;
pDataContract.QuittierungsbelegUnterschrieben = _QuittierungsbelegUnterschrieben;
pDataContract.QuittierungsbelegGedrucktAm = _QuittierungsbelegGedrucktAm;
return pDataContract;
}

View File

@@ -2100,5 +2100,27 @@ namespace BeWo.Data.Access
Restrictions.And(Restrictions.Le(CostBearer2SupportConcept.PropertyName_ApprovedStartDate, datum), Restrictions.Ge(CostBearer2SupportConcept.PropertyName_ApprovedEndDate, datum))))
.List<SupportConcept>().Distinct().ToList();
}
public IList<QuittierungsCheck> FindQuittierungsCheckWithCustomerOids(List<long> oids)
{
var c = CreateCriteria<QuittierungsCheck>()
.Add(Restrictions.In(QuittierungsCheck.PropertyName_CustomerOid, oids))
.List<QuittierungsCheck>();
return c;
}
public QuittierungsCheck FindQuittierungsCheckWithCustomerOid(long oid)
{
var c = CreateCriteria<QuittierungsCheck>()
.Add(Restrictions.Eq(QuittierungsCheck.PropertyName_CustomerOid, oid))
.UniqueResult<QuittierungsCheck>();
return c;
}
}
}

View File

@@ -8,7 +8,9 @@ namespace BeWo.Data.Entities
{
public static string PropertyName_Monat = "Monat";
public static string PropertyName_EmployeeOid = "EmployeeOid";
public static string PropertyName_QuittierungsbelegUnterschriebenVon = "QuittierungsbelegUnterschriebenVon";
public static string PropertyName_QuittierungsbelegGedrucktVon = "QuittierungsbelegGedrucktVon";
public static string PropertyName_CustomerOid = "CustomerOid";
@@ -16,9 +18,13 @@ namespace BeWo.Data.Entities
public static string PropertyName_QuittierungsbelegUnterschrieben = "QuittierungsbelegUnterschrieben";
public static string PropertyName_QuittierungsbelegGedrucktAm = "QuittierungsbelegGedrucktAm";
private DateTime? _Monat;
private long? _EmployeeOid;
private long? _QuittierungsbelegUnterschriebenVon;
private long? _QuittierungsbelegGedrucktVon;
private long? _CustomerOid;
@@ -26,6 +32,7 @@ namespace BeWo.Data.Entities
private bool? _QuittierungsbelegGedruckt;
private DateTime? _QuittierungsbelegGedrucktAm;
public QuittierungsCheck()
{
@@ -49,6 +56,22 @@ namespace BeWo.Data.Entities
}
}
public virtual DateTime? QuittierungsbelegGedrucktAm
{
get
{
return this._QuittierungsbelegGedrucktAm;
}
set
{
if (this.AreDifferent(this._QuittierungsbelegGedrucktAm, value))
{
this._QuittierungsbelegGedrucktAm = value;
}
}
}
public virtual bool? QuittierungsbelegUnterschrieben
{
get
@@ -83,20 +106,33 @@ namespace BeWo.Data.Entities
public virtual long? EmployeeOid
public virtual long? QuittierungsbelegUnterschriebenVon
{
get
{
return _EmployeeOid;
return _QuittierungsbelegUnterschriebenVon;
}
set
{
if (AreDifferent(_EmployeeOid, value))
if (AreDifferent(_QuittierungsbelegUnterschriebenVon, value))
{
_EmployeeOid = value;
_QuittierungsbelegUnterschriebenVon = value;
}
}
}
public virtual long? QuittierungsbelegGedrucktVon
{
get
{
return _QuittierungsbelegGedrucktVon;
}
set
{
if (AreDifferent(_QuittierungsbelegGedrucktVon, value))
{
_QuittierungsbelegGedrucktVon = value;
}
}
}

View File

@@ -14,12 +14,15 @@
<property name="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" />
<property name="Notice" column="Notice" length="1024" />
<property name="EmployeeOid" column="EmployeeOid" />
<property name="CustomerOid" column="CustomerOid" />
<property name="QuittierungsbelegUnterschriebenVon" column="QuittierungsbelegUnterschriebenVon" />
<property name="QuittierungsbelegGedrucktVon" column="QuittierungsbelegGedrucktVon" />
<property name="Monat" column="Monat" />
<property name="QuittierungsbelegGedruckt" column="QuittierungsbelegGedruckt" />
<property name="QuittierungsbelegUnterschrieben" column="QuittierungsbelegUnterschrieben" />
<property name="QuittierungsbelegGedrucktAm" column="QuittierungsbelegGedrucktAm" />
</class>
</hibernate-mapping>

View File

@@ -12,8 +12,10 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.Monat = pEntity.Monat;
pDataContract.QuittierungsbelegGedruckt = pEntity.QuittierungsbelegGedruckt;
pDataContract.QuittierungsbelegUnterschrieben = pEntity.QuittierungsbelegUnterschrieben;
pDataContract.EmployeeOid = pEntity.EmployeeOid;
pDataContract.QuittierungsbelegGedrucktVon = pEntity.QuittierungsbelegGedrucktVon;
pDataContract.QuittierungsbelegUnterschriebenVon = pEntity.QuittierungsbelegUnterschriebenVon;
pDataContract.CustomerOid = pEntity.CustomerOid;
pDataContract.QuittierungsbelegGedrucktAm = pEntity.QuittierungsbelegGedrucktAm;
pDataContract.QuittierungsCheckOid = pEntity.Oid;
@@ -24,10 +26,12 @@ namespace BeWo.Service.DCEntityMapper
{
pEntity.Monat = pDataContract.Monat;
pEntity.CustomerOid = pDataContract.CustomerOid;
pEntity.EmployeeOid = pDataContract.EmployeeOid;
pEntity.QuittierungsbelegGedrucktVon = pDataContract.QuittierungsbelegGedrucktVon;
pEntity.QuittierungsbelegUnterschriebenVon = pDataContract.QuittierungsbelegUnterschriebenVon;
pEntity.QuittierungsbelegGedruckt = pDataContract.QuittierungsbelegGedruckt;
pEntity.QuittierungsbelegUnterschrieben = pDataContract.QuittierungsbelegUnterschrieben;
pEntity.QuittierungsbelegGedrucktAm = pDataContract.QuittierungsbelegGedrucktAm;
pEntity.Oid = pDataContract.QuittierungsCheckOid;
return pEntity;

View File

@@ -149,11 +149,35 @@ namespace BeWo.Service.SBD.Vertretung
//############################################################################
public bool FetchReferenceNumbers { get; set; }
// ############## Bereich Quittierungsbeleg check ############################
public void QuittierungsCheckListe()
public void QuittierungsCheckListe(long? oid)
{
List<CompactCustomerDC> customerListe = new List<CompactCustomerDC>();
//long? oid = null;
//if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll) && !BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View))
//{
// oid = BeWoApp.LoggedOnUser.Employee.EmployeeOid;
//}
//ServiceFacade.DoCustomerServiceAsync(
// s => s.GetAllActiveCustomersCompact(this.FetchReferenceNumbers, oid),
// r =>
// {
// List<CompactCustomerDC> list = r;
// if (oid != null)
// {
// list = list.Where(c => c.IsRelatedToEmployee).ToList();
// }
// list.Sort((x, y) => (x.LastName + ", " + x.FirstName).CompareTo(y.LastName + ", " + y.FirstName)); // (Comparison<CompactCustomerDC>)new CustomerSorter().GetComparison("LastName", BeWo.Core.AbstractSorter.SortDirection.Ascending));
// customerListe = list;
// });

View File

@@ -644,5 +644,22 @@ namespace BeWo.Service.ServiceContracts
[FaultContract(typeof(BeWoFault))]
[OperationContract]
PersonDC GetPersonWithCustomerOid(long oid);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
List<QuittierungsCheckViewListItemsDC> GetAllActiveCustomersCompactWithQBCheckList(bool fetchReferenceNumbers,long? currentEmployeeOid, DateTime monat);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void SaveNewQuittierungsCheck(QuittierungsCheckDC newItem);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void UpdateNewQuittierungsCheck(QuittierungsCheckDC newItem);
[FaultContract(typeof(BeWoFault))]
[OperationContract]
void UpdateQuittierungsCheckWithCustomer(long oid, long loggedinUserOid, DateTime monat);
}
}

View File

@@ -3464,6 +3464,167 @@ namespace BeWo.Service.ServiceImplementations
}
public List<QuittierungsCheckViewListItemsDC> GetAllActiveCustomersCompactWithQBCheckList(bool fetchReferenceNumbers, long? currentEmployeeOid,DateTime monat)
{
try
{
List<QuittierungsCheckViewListItemsDC> qbCheckliste = new List<QuittierungsCheckViewListItemsDC>();
var cuslist = GetAllActiveCustomersCompact(fetchReferenceNumbers, currentEmployeeOid);
List<long> oidListe = new List<long>();
foreach (var oidlist in cuslist)
{
oidListe.Add(oidlist.CustomerOid);
}
var qblist = DAOFactory.SearchDAO.FindQuittierungsCheckWithCustomerOids(oidListe);
foreach (var customer in cuslist)
{
QuittierungsCheckViewListItemsDC newitem = new QuittierungsCheckViewListItemsDC();
foreach (var qbCheck in qblist)
{
if (qbCheck.CustomerOid.HasValue && qbCheck.Monat.HasValue) {
if(customer.CustomerOid == qbCheck.CustomerOid.Value && qbCheck.Monat.Value.Month == monat.Month && qbCheck.Monat.Value.Year == monat.Year) {
if (qbCheck.QuittierungsbelegGedrucktVon.HasValue) {
var druckEmp = DAOFactory.GenericDAO.GetByID<Employee>(qbCheck.QuittierungsbelegGedrucktVon.Value);
var dEmp = MapperFactory.CompactEmployeeDC_Employee.MapToNewDC(druckEmp);
newitem.QuittierungsbelegGedrucktVon = dEmp.FirstName + " " + dEmp.LastName;
}
newitem.QuittierungsbelegDruck = qbCheck.QuittierungsbelegGedruckt;
newitem.QuittierungsbelegDruckAm = qbCheck.QuittierungsbelegGedrucktAm;
newitem.QuittierungsbelegGedrucktVonOid = qbCheck.QuittierungsbelegGedrucktVon;
if (qbCheck.QuittierungsbelegUnterschriebenVon.HasValue)
{
var unterEmp = DAOFactory.GenericDAO.GetByID<Employee>(qbCheck.QuittierungsbelegUnterschriebenVon.Value);
var uEmp = MapperFactory.CompactEmployeeDC_Employee.MapToNewDC(unterEmp);
newitem.QuittierungsbelegUnterschriftVon = uEmp.FirstName + " " + uEmp.LastName;
}
newitem.QuittierungsbelegUnterschrift = qbCheck.QuittierungsbelegUnterschrieben;
newitem.QuittierungsbelegUnterschriftVonOid = qbCheck.QuittierungsbelegUnterschriebenVon;
newitem.Monat = qbCheck.Monat;
if (qbCheck.Oid.HasValue)
newitem.QuittierungsCheckOid = qbCheck.Oid;
}
}
}
newitem.Customer = customer;
newitem.Klient = customer.FullName;
qbCheckliste.Add(newitem);
}
return qbCheckliste;
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
public void SaveNewQuittierungsCheck(QuittierungsCheckDC newItem)
{
try
{
var qbitem = MapperFactory.QuittierungsCheckDC_QuittierungsCheck.MapToNewEntity(newItem);
DAOFactory.GenericDAO.Insert(qbitem);
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
public void UpdateNewQuittierungsCheck(QuittierungsCheckDC newItem)
{
try
{
var oldItem = DAOFactory.GenericDAO.GetByID<QuittierungsCheck>(newItem.QuittierungsCheckOid.Value);
var mergedItem = MapperFactory.QuittierungsCheckDC_QuittierungsCheck.MergeWithEntity(newItem, oldItem);
DAOFactory.GenericDAO.Update(mergedItem);
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
public void UpdateQuittierungsCheckWithCustomer(long oid, long loggedinUserOid,DateTime monat)
{
try
{
var x = DAOFactory.SearchDAO.FindQuittierungsCheckWithCustomerOid(oid);
if(x != null) {
x.QuittierungsbelegGedrucktAm = DateTime.Now;
x.QuittierungsbelegGedrucktVon = loggedinUserOid;
x.QuittierungsbelegGedruckt = true;
if (monat.Month == x.Monat.Value.Month && monat.Year == x.Monat.Value.Year)
{
x.Monat = monat;
DAOFactory.GenericDAO.Update(x);
}
else
{
//mach ein neuen Insert
QuittierungsCheckDC qbcheck = new QuittierungsCheckDC()
{
QuittierungsbelegGedruckt = true,
CustomerOid = oid,
QuittierungsbelegGedrucktAm = DateTime.Now,
QuittierungsbelegGedrucktVon = loggedinUserOid,
Monat = monat
};
var t = MapperFactory.QuittierungsCheckDC_QuittierungsCheck.MapToNewEntity(qbcheck);
DAOFactory.GenericDAO.Insert(t);
}
}
else
{
//mache hier ein vollen insert
QuittierungsCheckDC qbcheck = new QuittierungsCheckDC()
{
QuittierungsbelegGedruckt = true,
CustomerOid = oid,
QuittierungsbelegGedrucktAm = DateTime.Now,
QuittierungsbelegGedrucktVon = loggedinUserOid,
Monat = monat
};
var t = MapperFactory.QuittierungsCheckDC_QuittierungsCheck.MapToNewEntity(qbcheck);
DAOFactory.GenericDAO.Insert(t);
}
}
catch (Exception e)
{
throw Utils.CreateBeWoFaultException(e);
}
}
}
internal struct WohnheimbuchungsIntervallStruct

View File

@@ -11,7 +11,10 @@ namespace BS.Shared.DataContracts
public long? QuittierungsCheckOid { get; set; }
[DataMember]
public long? EmployeeOid { get; set; }
public long? QuittierungsbelegUnterschriebenVon { get; set; }
[DataMember]
public long? QuittierungsbelegGedrucktVon { get; set; }
[DataMember]
public long? CustomerOid { get; set; }
@@ -25,5 +28,9 @@ namespace BS.Shared.DataContracts
[DataMember]
public DateTime? Monat { get; set; }
[DataMember]
public DateTime? QuittierungsbelegGedrucktAm { get; set; }
}
}

View File

@@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using BS.Shared.DataContracts.Compact;
using DevExpress.Schedule;
namespace BS.Shared.DataContracts
{
[DataContract]
public class QuittierungsCheckViewListItemsDC : IDataContract
{
[DataMember]
public string Klient { get; set; }
[DataMember]
public bool? QuittierungsbelegUnterschrift { get; set; }
[DataMember]
public bool? QuittierungsbelegDruck { get; set; }
[DataMember]
public string QuittierungsbelegUnterschriftVon { get; set; }
[DataMember]
public string QuittierungsbelegGedrucktVon { get; set; }
[DataMember]
public DateTime? QuittierungsbelegDruckAm { get; set; }
[DataMember]
public long? QuittierungsCheckOid { get; set; }
[DataMember]
public long? QuittierungsbelegUnterschriftVonOid { get; set; }
[DataMember]
public long? QuittierungsbelegGedrucktVonOid { get; set; }
[DataMember]
public DateTime? Monat { get; set; }
[DataMember]
public CompactCustomerDC Customer { get; set; }
}
}

View File

@@ -184,6 +184,7 @@
<Compile Include="DataContracts\EmployeeTokenRelationDC.cs" />
<Compile Include="DataContracts\QuittierungsCheckDC.cs" />
<Compile Include="DataContracts\VertretungsKlientAccountingsListeItemsDC.cs" />
<Compile Include="DataContracts\QuittierungsCheckViewListItemsDC.cs" />
<Compile Include="DataContracts\VertretungsListeMitarbeiterItemsDC.cs" />
<Compile Include="DataContracts\TokenDC.cs" />
<Compile Include="DataContracts\VertretungsListeItemsDC.cs" />