mirror of
https://github.com/RaidMax/IW4M-Admin.git
synced 2025-07-08 13:00:07 -05:00
add chat to advanced search
This commit is contained in:
@ -25,11 +25,24 @@ namespace Stats.Dtos
|
||||
/// </summary>
|
||||
public DateTime? SentAfter { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The time associated with SentAfter date
|
||||
/// </summary>
|
||||
public string SentAfterTime { get; set; } = "00:00";
|
||||
|
||||
public DateTime? SentAfterDateTime => SentAfter?.Add(TimeSpan.Parse(SentAfterTime));
|
||||
|
||||
/// <summary>
|
||||
/// only look for messages sent before this date0
|
||||
/// </summary>
|
||||
public DateTime SentBefore { get; set; } = DateTime.UtcNow;
|
||||
public DateTime SentBefore { get; set; } = DateTime.UtcNow.Date;
|
||||
|
||||
public string SentBeforeTime { get; set; } = DateTime.UtcNow.ToString("HH:mm");
|
||||
|
||||
public DateTime? SentBeforeDateTime => SentBefore.Add(TimeSpan.Parse(SentBeforeTime));
|
||||
|
||||
public bool IsExactMatch { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// indicates if the chat is on the meta page
|
||||
/// </summary>
|
||||
|
@ -53,11 +53,11 @@ namespace Stats.Helpers
|
||||
}
|
||||
|
||||
var iqMessages = context.Set<EFClientMessage>()
|
||||
.Where(message => message.TimeSent < query.SentBefore);
|
||||
.Where(message => message.TimeSent < query.SentBeforeDateTime);
|
||||
|
||||
if (query.SentAfter is not null)
|
||||
if (query.SentAfterDateTime is not null)
|
||||
{
|
||||
iqMessages = iqMessages.Where(message => message.TimeSent >= query.SentAfter);
|
||||
iqMessages = iqMessages.Where(message => message.TimeSent >= query.SentAfterDateTime);
|
||||
}
|
||||
|
||||
if (query.ClientId is not null)
|
||||
@ -72,7 +72,10 @@ namespace Stats.Helpers
|
||||
|
||||
if (!string.IsNullOrEmpty(query.MessageContains))
|
||||
{
|
||||
iqMessages = iqMessages.Where(message => EF.Functions.Like(message.Message.ToLower(), $"%{query.MessageContains.ToLower()}%"));
|
||||
iqMessages = query.IsExactMatch
|
||||
? iqMessages.Where(message => message.Message.ToLower() == query.MessageContains.ToLower())
|
||||
: iqMessages.Where(message =>
|
||||
EF.Functions.Like(message.Message.ToLower(), $"%{query.MessageContains.ToLower()}%"));
|
||||
}
|
||||
|
||||
var iqResponse = iqMessages
|
||||
|
Reference in New Issue
Block a user