Änderungen Bargeldkasse

- Neues Feld und Spalte "Angelegt am"
- Neue Spalte Saldo
- Spalte Betrag aufgeteilt nach Einzahlung und Auszahlung
This commit is contained in:
2026-06-18 10:52:03 +02:00
parent 7fd9a8bd81
commit 6597358846
6 changed files with 140 additions and 15 deletions

View File

@@ -630,7 +630,7 @@
FixedWidth="True"
Header="Datum"
SortOrder="Descending" />
<dxg:GridColumn
<!--<dxg:GridColumn
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
FieldName="Zahlungstyp"
FixedWidth="True"
@@ -638,12 +638,12 @@
<dxg:GridColumn.EditSettings>
<dxe:ComboBoxEditSettings IsTextEditable="False" ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Zahlungstyp}}" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
</dxg:GridColumn>-->
<dxg:GridColumn
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
FieldName="Betrag"
FieldName="BetragEinzahlung"
FixedWidth="True"
Header="Betrag">
Header="Einzahlung">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings
Mask="c"
@@ -651,6 +651,30 @@
MaskUseAsDisplayFormat="True" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
FieldName="BetragAuszahlung"
FixedWidth="True"
Header="Auszahlung">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings
Mask="c"
MaskType="Numeric"
MaskUseAsDisplayFormat="True" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn
AllowEditing="False"
FieldName="Transaktionskassenbestand"
FixedWidth="True"
Header="Saldo">
<dxg:GridColumn.EditSettings>
<dxe:TextEditSettings
Mask="c"
MaskType="Numeric"
MaskUseAsDisplayFormat="True" />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
FieldName="Belegnummer"
@@ -660,16 +684,21 @@
<dxe:TextEditSettings />
</dxg:GridColumn.EditSettings>
</dxg:GridColumn>
<dxg:GridColumn
AllowEditing="False"
FieldName="InsUser"
FixedWidth="True"
Header="Angelegt von" />
<dxg:GridColumn
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
FieldName="Notice"
Header="Notiz" />
<dxg:GridColumn
AllowEditing="False"
FieldName="InsUser"
FixedWidth="True"
Header="Angelegt von" />
<dxg:GridColumn
AllowEditing="False"
FieldName="InsTs"
EditSettings="{dxe:DateSettings DisplayFormat=dd.MM.yyyy HH:mm}"
FixedWidth="True"
Header="Angelegt am" />
<dxg:GridColumn
FieldName="X"
Header="Drucken"
@@ -699,7 +728,9 @@
NavigationStyle="Cell"
ShowGroupPanel="False"
ShowGroupedColumns="False"
ShowTotalSummary="False" />
ShowTotalSummary="False"
ShowingEditor="TableView_ShowingEditor"
/>
</dxg:GridControl.View>
</dxg:GridControl>
</GroupBox>

View File

@@ -21,6 +21,7 @@ using BS.Shared.Translation;
using DevExpress.Utils;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using DevExpress.XtraEditors.Filtering;
namespace BeWo.View
{
@@ -602,6 +603,23 @@ namespace BeWo.View
BeWoApp.AppSettings.LastKassenSortOrder = SortComboBox.SelectedIndex;
BeWoApp.SaveAppSettings();
}
private void TableView_ShowingEditor(object sender, ShowingEditorEventArgs e)
{
var bvm = e.Row as BargeldtransaktionsVM;
if (bvm != null)
{
if (e.Column.FieldName == "BetragAuszahlung" && bvm.Zahlungstyp.Enum == Zahlungstyp.Einzahlung)
{
e.Cancel = true;
}
else if (e.Column.FieldName == "BetragEinzahlung" && bvm.Zahlungstyp.Enum == Zahlungstyp.Auszahlung)
{
e.Cancel = true;
}
}
}
}
public class KassenSortOrderItem

View File

@@ -156,6 +156,7 @@ namespace BeWo.ViewModel
liste.DoForEach(f => f.Transaktionskassenbestand = 0);
var vorherige = liste.FirstOrDefault();
vorherige.Transaktionskassenbestand = Anfangsbestand ?? 0;
if (vorherige != null)
{
foreach (var transaktion in liste)

View File

@@ -23,7 +23,7 @@ namespace BeWo.ViewModel
private EnumValue<Zahlungstyp> _Zahlungstyp;
private DateTime? _Zahlungsdatum;
private decimal? _Betrag;
private decimal? _Transaktionskassenbestand;
private decimal? _Transaktionskassenbestand;
private string _Belegnummer;
private string _Notice;
@@ -125,11 +125,84 @@ namespace BeWo.ViewModel
}
}
public String InsUser
public bool DarfEinzahlungBearbeiten
{
get
{
return Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Einzahlung;
}
}
public bool DarfAuszahlungBearbeiten
{
get
{
return Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Auszahlung;
}
}
public decimal? BetragEinzahlung
{
get {
if (Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Einzahlung)
{
return _Betrag;
}
return null;
}
set
{
if (Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Einzahlung)
{
if (!AreDifferent(_Betrag, value))
{
return;
}
_Betrag = value;
StoreDirtyInformation(AreDifferent(DataContract.Betrag, value), PropertyName_Betrag);
FirePropertyChanged(PropertyName_Betrag);
}
}
}
public decimal? BetragAuszahlung
{
get
{
if (Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Auszahlung)
{
return _Betrag;
}
return null;
}
set
{
if (Zahlungstyp.Enum == BS.Shared.Zahlungstyp.Auszahlung)
{
if (!AreDifferent(_Betrag, value))
{
return;
}
_Betrag = value;
StoreDirtyInformation(AreDifferent(DataContract.Betrag, value), PropertyName_Betrag);
FirePropertyChanged(PropertyName_Betrag);
}
}
}
public String InsUser
{
get { return DataContract.InsUser; }
}
public DateTime? InsTs
{
get { return DataContract.InsTs; }
}
public decimal? Transaktionskassenbestand
{
get { return _Transaktionskassenbestand; }

View File

@@ -17,6 +17,7 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.Transaktionskassenbestand = pEntity.Transaktionskassenbestand;
pDataContract.Notice = pEntity.Notice;
pDataContract.InsUser = pEntity.InsUser;
pDataContract.InsTs = pEntity.InsTs;
pDataContract.SignatureOid = pEntity.SignatureOid;
return pDataContract;

View File

@@ -35,8 +35,9 @@ namespace BS.Shared.DataContracts
[DataMember]
public string InsUser { get; set; }
[DataMember]
[DataMember]
public DateTime? InsTs { get; set; }
[DataMember]
public long? SignatureOid { get; set; }
public override bool Equals(object obj)