DevExpress Scheduler testweise eingebaut. Musste die web.config anpassen und die Skripte, deshalb hab ich das nicht einfach auskommentiert. Fat-Client: Kalender: mehrere Termine, die zum löschen ausgewählt sind, werden jetzt auf einmal gelöscht, nicht mehr hintereinander. BetreuWoReports: Klienten sind nach Namen sortiert. Klienten, für die der ausgewählte Mitarbeiter/Team Stunden geleistet hat, werden alle angezeigt. Auch die, die nicht vom Mitarbeiter/Team betreut werden.
141 lines
3.9 KiB
C#
141 lines
3.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Runtime.Serialization;
|
|
|
|
using BS.Shared.DataContracts.Compact;
|
|
|
|
namespace BS.Shared.DataContracts
|
|
{
|
|
[DataContract]
|
|
public class SchedulerAppointmentDC : IDataContract
|
|
{
|
|
[DataMember]
|
|
public ActivationTypeId ActivationType { get; set; }
|
|
|
|
[DataMember]
|
|
public long? SchedulerAppointmentOid { get; set; }
|
|
|
|
[DataMember]
|
|
public long? NewSchedulerAppointmentVersion { get; set; }
|
|
|
|
[DataMember]
|
|
public bool IsPrivate { get; set; }
|
|
|
|
[DataMember]
|
|
public string Subject { get; set; }
|
|
|
|
[DataMember]
|
|
public string Description { get; set; }
|
|
|
|
[DataMember]
|
|
public DateTime? StartDate { get; set; }
|
|
|
|
[DataMember]
|
|
public DateTime? EndDate { get; set; }
|
|
|
|
[DataMember]
|
|
public CompactEmployeeDC Originator { get; set; }
|
|
|
|
[DataMember]
|
|
public int LabelId { get; set; }
|
|
|
|
[DataMember]
|
|
public bool AllDay { get; set; }
|
|
|
|
[DataMember]
|
|
public int Status { get; set; }
|
|
|
|
[DataMember]
|
|
public int Type { get; set; }
|
|
|
|
[DataMember]
|
|
public string Location { get; set; }
|
|
|
|
[DataMember]
|
|
public string RecurrenceInfo { get; set; }
|
|
|
|
[DataMember]
|
|
public string ReminderInfo { get; set; }
|
|
|
|
[DataMember]
|
|
public List<CompactCustomerDC> CustomerList { get; set; }// = new List<CompactCustomerDC>();
|
|
|
|
[DataMember]
|
|
public List<Employee2SchedulerAppointmentDC> EmployeeList { get; set; }// = new List<Employee2SchedulerAppointmentDC>();
|
|
|
|
[DataMember]
|
|
public List<ResourceDC> ResourceList { get; set; }// = new List<ResourceDC>();
|
|
|
|
[DataMember]
|
|
public long? FormerBookingSequenceOid { get; set; }
|
|
|
|
[DataMember]
|
|
public bool IsTeilnahmeBestaetigung { get; set; }
|
|
|
|
[DataMember]
|
|
public bool IsTask { get; set; }
|
|
|
|
[DataMember]
|
|
public string CompletedNotice { get; set; }
|
|
|
|
[DataMember]
|
|
public string TaskDescription { get; set; }
|
|
|
|
[DataMember]
|
|
public DateTime? CompletedDate { get; set; }
|
|
|
|
[DataMember]
|
|
public DateTime? DueDate { get; set; }
|
|
|
|
[DataMember]
|
|
public List<CompactSupportConceptDC> SupportConceptList { get; set; }
|
|
|
|
public int RecurrenceIndex { get; set; }
|
|
|
|
public string RecurrenceId { get; set; }
|
|
|
|
[DataMember]
|
|
public long? FormerTaskOid { get; set; }
|
|
|
|
[DataMember]
|
|
public bool HasServiceRecordEntry { get; set; }
|
|
|
|
|
|
public override bool Equals(object obj)
|
|
{
|
|
if (!(obj is SchedulerAppointmentDC schedulerAppointmentDC))
|
|
{
|
|
return false;
|
|
}
|
|
|
|
if (SchedulerAppointmentOid == null && schedulerAppointmentDC.SchedulerAppointmentOid == null)
|
|
{
|
|
return GetHashCode() == schedulerAppointmentDC.GetHashCode();
|
|
}
|
|
|
|
if (SchedulerAppointmentOid != null && schedulerAppointmentDC.SchedulerAppointmentOid != null)
|
|
{
|
|
return SchedulerAppointmentOid == schedulerAppointmentDC.SchedulerAppointmentOid;
|
|
}
|
|
|
|
var value = StartDate == schedulerAppointmentDC.StartDate && EndDate == schedulerAppointmentDC.EndDate && Type == schedulerAppointmentDC.Type && Description == schedulerAppointmentDC.Description &&
|
|
EmployeeList.SequenceEqual(schedulerAppointmentDC.EmployeeList) &&
|
|
ResourceList.SequenceEqual(schedulerAppointmentDC.ResourceList) &&
|
|
CustomerList.SequenceEqual(schedulerAppointmentDC.CustomerList) &&
|
|
SupportConceptList.SequenceEqual(schedulerAppointmentDC.SupportConceptList);
|
|
|
|
return value;
|
|
}
|
|
|
|
public override int GetHashCode()
|
|
{
|
|
return SchedulerAppointmentOid.HasValue
|
|
? GetType().Name.GetHashCode() ^ SchedulerAppointmentOid.GetHashCode()
|
|
: base.GetHashCode();
|
|
}
|
|
|
|
public override string ToString() => $"{SchedulerAppointmentOid} {StartDate:dd.MM.yyyy HH:mm}-{EndDate:dd.MM.yyyy HH:mm}: {Subject}";
|
|
}
|
|
}
|