fix date filter
This commit is contained in:
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user