Bearbeitungsstatus

+ Delete
+ Select by Index > Select by Oid
This commit is contained in:
2024-09-23 15:02:08 +02:00
parent 28933ad5ce
commit 4a038c8fcc
8 changed files with 20 additions and 21 deletions

View File

@@ -209,8 +209,8 @@
Grid.Column="1"
HorizontalAlignment="Stretch"
IsEnabled="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, ElementName=root}"
ItemsSource="{Binding Path=FalldatenBearbeitungsstatusTypes}"
SelectedValue="{Binding Path=FalldatenBearbeitungsstatus}"
ItemsSource="{Binding Path=CustomerVermittlungBearbeitungsstatusTypes}"
SelectedValue="{Binding Path=CustomerVermittlungBearbeitungsstatus}"
Style="{StaticResource EnumTranslationNullItemComboBox}" />
<Label

View File

@@ -5,7 +5,7 @@
xmlns:controls="clr-namespace:BeWo.View.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BeWo.View.Detail"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:viewmodel="clr-namespace:BeWo.ViewModel" d:DataContext="{d:DesignInstance Type=viewmodel:CustomerVM}"
x:Name="root"
d:DesignHeight="450"
d:DesignWidth="800"
@@ -18,7 +18,7 @@
</ResourceDictionary>
</UserControl.Resources>
<GroupBox
DataContext="{Binding CustomerGemeinnutzigeArbeitListVM}"
DataContext="{Binding CustomerVermittlungArbeitListVM}"
Header="Vermittlung Gemeinnützige Arbeit"
Style="{StaticResource ObjectEditGroupBox}">
<Grid>

View File

@@ -554,12 +554,13 @@ namespace BeWo.View.Detail
private void ReloadViewModel(long pCustomerOID)
{
var selected_oid = ViewModel.CustomerGemeinnutzigeArbeitListVM?.SelectedVM?.DataContract?.Oid;
var list = ViewModel.CustomerVermittlungArbeitListVM;
var sel_index = list?.VMList.IndexOf(list.SelectedVM) ?? -1;
VMFactory.CreateCustomerVMAsync(pCustomerOID, cb => this.Dispatch(delegate {
if(cb?.CustomerGemeinnutzigeArbeitListVM is object && selected_oid is long oid)
if(cb?.CustomerVermittlungArbeitListVM is object && -1 < sel_index)
{
cb.CustomerGemeinnutzigeArbeitListVM.SetSelectByDCOid(oid);
cb.CustomerVermittlungArbeitListVM.SetSelectByIndex(sel_index);
}
ViewModel = cb;

View File

@@ -1755,16 +1755,16 @@ namespace BeWo.ViewModel
}
}
public CustomerVermittlungArbeitListVM CustomerGemeinnutzigeArbeitListVM
public CustomerVermittlungArbeitListVM CustomerVermittlungArbeitListVM
{
get { return _CustomerGemeinnutzigeArbeitListVM; }
set
{
if (!AreDifferent(CustomerGemeinnutzigeArbeitListVM, value))
if (!AreDifferent(CustomerVermittlungArbeitListVM, value))
return;
_CustomerGemeinnutzigeArbeitListVM = value;
FirePropertyChanged(nameof(CustomerGemeinnutzigeArbeitListVM));
FirePropertyChanged(nameof(CustomerVermittlungArbeitListVM));
}
}
@@ -2020,7 +2020,7 @@ namespace BeWo.ViewModel
CustomerWohnhilfeListVM = new CustomerWohnhilfeListVM(this, pDataContract.CustomerWohnhilfeDC ?? (pDataContract.CustomerWohnhilfeDC = new List<CustomerWohnhilfeDC>()));
CustomerGemeinnutzigeArbeitListVM = new CustomerVermittlungArbeitListVM(pDataContract.CustomerVermittlungArbeitDC ?? (pDataContract.CustomerVermittlungArbeitDC = new List<CustomerVermittlungArbeitDC>()));
CustomerVermittlungArbeitListVM = new CustomerVermittlungArbeitListVM(pDataContract.CustomerVermittlungArbeitDC ?? (pDataContract.CustomerVermittlungArbeitDC = new List<CustomerVermittlungArbeitDC>()));
}
protected override CustomerDC MapToDataContract(CustomerDC pDataContract, bool doCommit)
{

View File

@@ -191,7 +191,7 @@ namespace BeWo.ViewModel
FirePropertyChanged(nameof(Termin));
}
}
public IEnumerable<CustomerVermittlungBearbeitungsstatus> FalldatenBearbeitungsstatusTypes => Utils.GetAllEnumValues<CustomerVermittlungBearbeitungsstatus>();
public IEnumerable<CustomerVermittlungBearbeitungsstatus> CustomerVermittlungBearbeitungsstatusTypes => Utils.GetAllEnumValues<CustomerVermittlungBearbeitungsstatus>();
public CustomerVermittlungBearbeitungsstatus? CustomerVermittlungBearbeitungsstatus
{
get { return _CustomerVermittlungBearbeitungsstatus; }

View File

@@ -260,15 +260,12 @@ namespace BeWo.ViewModel.ListViewModel
return lConstr.Invoke(new object[] { pDC }) as VMType;
}
public void SetSelectByDCOid(long dc_oid)
public void SetSelectByIndex(int index)
{
foreach (var vm in VMList)
{
if (vm.DataContract is BeWoDataContract dc && dc.Oid == dc_oid)
{
SelectedVM = vm;
return;
}
if(-1 < index && index < VMList.Count){
var x = VMList[index];
SelectedVM = x;
}
}
}

View File

@@ -136,7 +136,7 @@
<key column="CustomerOid" />
<one-to-many class="BeWo.Data.Entities.Arbeitszeit, BeWo.Data" />
</bag>
<bag name="CustomerVermittlungArbeiten" table="customervermittlungarbeit" generic="true" cascade="all-delete-orphan" batch-size="250">
<bag name="CustomerVermittlungArbeiten" table="customervermittlungarbeit" generic="true" cascade="all-delete-orphan" batch-size="250" inverse="true">
<key column="CustomerOid" />
<one-to-many class="BeWo.Data.Entities.CustomerVermittlungArbeit, BeWo.Data" />
</bag>

View File

@@ -24,6 +24,7 @@
<property name="ZuLeistendeArbeitsstunden"/>
<property name="Hinweis"/>
<property name="Termin"/>
<property name="CustomerVermittlungBearbeitungsstatus" type="BS.Shared.DataContracts.CustomerVermittlungBearbeitungsstatus, BS.Shared" />
<property name="Auftragsruckgabe"/>
<property name="Verlauf"/>
<property name="AbgeleisteteStunden"/>