using Dlhis.ScheduledTask.SyncSapInfo.Dto;
namespace Dlhis.ScheduledTask.SyncSapInfo.Comparers;
///
/// 岗位信息比较器
///
public class SapPositionComparer : IEqualityComparer
{
public bool Equals(SapPositionItem x, SapPositionItem y)
{
if (ReferenceEquals(x, y)) return true;
if (ReferenceEquals(x, null) || ReferenceEquals(y, null)) return false;
if (x.GetType() != y.GetType()) return false;
return x.BEGDA == y.BEGDA
&& x.ENDDA == y.ENDDA
&& x.LANGU == y.LANGU
&& x.ZJOBID == y.ZJOBID
&& x.ZJOBANME == y.ZJOBANME
&& x.ZZWID == y.ZZWID
&& x.ZDEPID == y.ZDEPID;
}
public int GetHashCode(SapPositionItem obj)
{
return obj.BEGDA.SafeGetHashCode() ^ obj.ENDDA.SafeGetHashCode()
^ obj.LANGU.SafeGetHashCode() ^ obj.ZJOBID.SafeGetHashCode()
^ obj.ZJOBANME.SafeGetHashCode() ^ obj.ZZWID.SafeGetHashCode()
^ obj.ZDEPID.SafeGetHashCode();
}
}