Files
BeWoPlaner/BeWoPlanerMobil/Models/DevExpressSchedulerModel.cs

88 lines
3.2 KiB
C#

using System.Collections;
using System.Collections.Generic;
using BeWoPlanerMobil.Util.SchedulerUtils;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Compact;
using DevExpress.XtraScheduler;
namespace BeWoPlanerMobil.Models
{
public class DevExpressSchedulerModel : AbstractModel
{
public DevExpressSchedulerModel()
{
SessionModel = new DevExpressSchedulerSessionModel();
SessionModel.ResetValues();
}
public SchedulerViewType CurrentViewType
{
get => DevExpressSchedulerSessionModel.CurrentSchedulerViewType;
set => DevExpressSchedulerSessionModel.CurrentSchedulerViewType = value;
}
public DevExpressSchedulerSessionModel DevExpressSchedulerSessionModel => SessionModel as DevExpressSchedulerSessionModel;
public List<CompactCustomerDC> PossibleCustomers { get; set; }
public List<ResourceDC> PossibleResources { get; set; }
public List<CompactEmployeeDC> PossibleEmployees { get; set; }
public List<CompactCustomerDC> SelectedCustomers { get; set; }
public List<ResourceDC> SelectedResources { get; set; }
public List<CompactEmployeeDC> SelectedEmployees { get; set; }
public List<long> SelectedCustomerOids
{
get => DevExpressSchedulerSessionModel.SelectedCustomerOids;
set => DevExpressSchedulerSessionModel.SelectedCustomerOids = value;
}
public List<long> SelectedEmployeeOids
{
get => DevExpressSchedulerSessionModel.SelectedEmployeeOids;
set => DevExpressSchedulerSessionModel.SelectedEmployeeOids = value;
}
public List<long> SelectedResourceOids
{
get => DevExpressSchedulerSessionModel.SelectedResourceOids;
set => DevExpressSchedulerSessionModel.SelectedResourceOids = value;
}
public EmployeeAvailabilityObject EmployeeAvailabilityObject { get; set; }
public IEnumerable Appointments { get; set; }
public IEnumerable Resources { get; set; }
public SchedulerAppointmentDC GetAppointmentByOid(long oid)
{
foreach(SchedulerAppointmentDC appointment in Appointments)
{
if(appointment.SchedulerAppointmentOid?.Equals(oid) ?? false)
{
return appointment;
}
}
return null;
}
public List<long> SelectedEmployeesForFiltering
{
get => DevExpressSchedulerSessionModel.SelectedEmployeesForFiltering;
set => DevExpressSchedulerSessionModel.SelectedEmployeesForFiltering = value;
}
public List<long> SelectedCustomersForFiltering
{
get => DevExpressSchedulerSessionModel.SelectedCustomersForFiltering;
set => DevExpressSchedulerSessionModel.SelectedCustomersForFiltering = value;
}
public List<long> SelectedResourcesForFiltering
{
get => DevExpressSchedulerSessionModel.SelectedResourcesForFiltering;
set => DevExpressSchedulerSessionModel.SelectedResourcesForFiltering = value;
}
}
}