Fix the sorting when adding mails.

This commit is contained in:
Burak Kaan Köse
2025-11-01 12:35:47 +01:00
parent b60832a270
commit ae9e35e091
6 changed files with 37 additions and 4 deletions
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using Wino.Core.Domain.Entities.Mail;
using Wino.Core.Domain.Interfaces;
public class ListItemComparer : IComparer<object>
{
@@ -8,13 +9,14 @@ public class ListItemComparer : IComparer<object>
public int Compare(object x, object y)
{
if (x is MailCopy xMail && y is MailCopy yMail)
if (x is IMailListItemSorting xSorting && y is IMailListItemSorting ySorting)
return SortByName ? string.Compare(xSorting.SortingName, ySorting.SortingName, StringComparison.OrdinalIgnoreCase) : DateTime.Compare(xSorting.SortingDate, ySorting.SortingDate);
else if (x is MailCopy xMail && y is MailCopy yMail)
return SortByName ? string.Compare(xMail.FromName, yMail.FromName, StringComparison.OrdinalIgnoreCase) : DateTime.Compare(yMail.CreationDate, xMail.CreationDate);
else if (x is DateTime dateX && y is DateTime dateY)
return DateTime.Compare(dateY, dateX);
else if (x is string stringX && y is string stringY)
return stringY.CompareTo(stringX);
return 0;
}
}