fix date filter

This commit is contained in:
Logan
2026-05-23 13:28:23 -04:00
parent 0ceb0227c8
commit 9cf8fd4221
2 changed files with 23 additions and 17 deletions
+8 -11
View File
@@ -12,10 +12,8 @@ const inputCls =
"placeholder:text-gray-600 focus:outline-none focus:border-indigo-500 w-full";
function filterCalls(calls: CallRecord[], filters: Filters): CallRecord[] {
const q = filters.query.trim().toLowerCase();
const tgid = filters.tgid.trim();
const fromMs = filters.dateFrom ? new Date(filters.dateFrom + "T00:00:00").getTime() : null;
const toMs = filters.dateTo ? new Date(filters.dateTo + "T23:59:59").getTime() : null;
const q = filters.query.trim().toLowerCase();
const tgid = filters.tgid.trim();
return calls.filter((c) => {
// System filter
@@ -24,11 +22,6 @@ function filterCalls(calls: CallRecord[], filters: Filters): CallRecord[] {
// TGID filter (exact match on the number)
if (tgid && String(c.talkgroup_id ?? "") !== tgid) return false;
// Date range
const ts = new Date(c.started_at).getTime();
if (fromMs !== null && ts < fromMs) return false;
if (toMs !== null && ts > toMs) return false;
// Free-text: talkgroup name, node_id, transcript, tags
if (q) {
const hay = [
@@ -67,12 +60,16 @@ function isActive(f: Filters) {
export default function CallsPage() {
const [limitCount, setLimitCount] = useState(100);
const { calls, loading } = useCalls(limitCount);
const [filters, setFilters] = useState<Filters>(DEFAULT_FILTERS);
const dateFrom = filters.dateFrom ? new Date(filters.dateFrom + "T00:00:00") : undefined;
const dateTo = filters.dateTo ? new Date(filters.dateTo + "T23:59:59") : undefined;
const { calls, loading } = useCalls(limitCount, dateFrom, dateTo);
const { systems } = useSystems();
const { isAdmin } = useAuth();
const systemMap = Object.fromEntries(systems.map((s) => [s.system_id, s]));
const [filters, setFilters] = useState<Filters>(DEFAULT_FILTERS);
const [showFilters, setShowFilters] = useState(false);
function set<K extends keyof Filters>(key: K, value: string) {