Add TODO.md and update visits components with search parameters and UI improvements
This commit is contained in:
parent
96f3b14fd4
commit
69f2fd6956
7
TODO.md
Normal file
7
TODO.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# TODO
|
||||||
|
|
||||||
|
## Backend
|
||||||
|
- [ ] Work on patvisit backend
|
||||||
|
|
||||||
|
## Frontend
|
||||||
|
- [ ] Visits index: add search parameter, remove type, show visitdate
|
||||||
@ -256,7 +256,7 @@
|
|||||||
<!-- NumRefType -->
|
<!-- NumRefType -->
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<label class="text-xs text-gray-600 mb-0.5">Type</label>
|
<label class="text-xs text-gray-600 mb-0.5">Type</label>
|
||||||
<select class="select select-sm select-bordered w-20" bind:value={simpleRefNum.NumRefType}>
|
<select class="select select-sm select-bordered w-full" bind:value={simpleRefNum.NumRefType}>
|
||||||
{#each numRefTypeOptions as opt (opt.value)}
|
{#each numRefTypeOptions as opt (opt.value)}
|
||||||
<option value={opt.value}>{opt.label}</option>
|
<option value={opt.value}>{opt.label}</option>
|
||||||
{/each}
|
{/each}
|
||||||
|
|||||||
@ -274,7 +274,7 @@
|
|||||||
<!-- NumRefType -->
|
<!-- NumRefType -->
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<label class="text-xs text-gray-600 mb-0.5">Type</label>
|
<label class="text-xs text-gray-600 mb-0.5">Type</label>
|
||||||
<select class="select select-sm select-bordered w-20" bind:value={thresholdData.NumRefType}>
|
<select class="select select-sm select-bordered w-full" bind:value={thresholdData.NumRefType}>
|
||||||
{#each numRefTypeOptions as opt (opt.value)}
|
{#each numRefTypeOptions as opt (opt.value)}
|
||||||
<option value={opt.value}>{opt.label}</option>
|
<option value={opt.value}>{opt.label}</option>
|
||||||
{/each}
|
{/each}
|
||||||
@ -324,7 +324,7 @@
|
|||||||
<!-- Age Unit -->
|
<!-- Age Unit -->
|
||||||
<div class="flex flex-col">
|
<div class="flex flex-col">
|
||||||
<label class="text-xs text-gray-600 mb-0.5">Unit</label>
|
<label class="text-xs text-gray-600 mb-0.5">Unit</label>
|
||||||
<select class="select select-sm select-bordered w-20" bind:value={thresholdData.AgeUnit}>
|
<select class="select select-sm select-bordered w-full" bind:value={thresholdData.AgeUnit}>
|
||||||
{#each ageUnits as opt (opt.value)}
|
{#each ageUnits as opt (opt.value)}
|
||||||
<option value={opt.value}>{opt.label}</option>
|
<option value={opt.value}>{opt.label}</option>
|
||||||
{/each}
|
{/each}
|
||||||
|
|||||||
@ -84,35 +84,9 @@
|
|||||||
params.Location = searchFilters.location;
|
params.Location = searchFilters.location;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Replace with actual API call
|
const response = await fetchVisits(params);
|
||||||
// const response = await fetchVisits(params);
|
visits = Array.isArray(response.data) ? response.data : [];
|
||||||
// visits = Array.isArray(response.data) ? response.data : [];
|
totalItems = response.total || visits.length;
|
||||||
|
|
||||||
// Mock data for now
|
|
||||||
visits = [
|
|
||||||
{
|
|
||||||
InternalPVID: 'V001',
|
|
||||||
PVID: 'V2024001',
|
|
||||||
PatientID: 'P001',
|
|
||||||
PatientName: 'John Doe',
|
|
||||||
PVCreateDate: new Date().toISOString(),
|
|
||||||
ADTCode: 'A01',
|
|
||||||
LocCode: 'ICU-101',
|
|
||||||
AttDoc: 'Dr. Smith'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
InternalPVID: 'V002',
|
|
||||||
PVID: 'V2024002',
|
|
||||||
PatientID: 'P002',
|
|
||||||
PatientName: 'Jane Smith',
|
|
||||||
PVCreateDate: new Date(Date.now() - 86400000).toISOString(),
|
|
||||||
ADTCode: 'A04',
|
|
||||||
LocCode: 'OPD-205',
|
|
||||||
AttDoc: 'Dr. Johnson',
|
|
||||||
EndDate: new Date().toISOString()
|
|
||||||
}
|
|
||||||
];
|
|
||||||
totalItems = visits.length;
|
|
||||||
totalPages = Math.ceil(totalItems / perPage) || 1;
|
totalPages = Math.ceil(totalItems / perPage) || 1;
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
toastError(err.message || 'Failed to load visits');
|
toastError(err.message || 'Failed to load visits');
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
import { ChevronLeft, ChevronRight, Calendar } from 'lucide-svelte';
|
import { ChevronLeft, ChevronRight, Calendar, Edit2, History } from 'lucide-svelte';
|
||||||
import VisitCard from './VisitCard.svelte';
|
import VisitCard from './VisitCard.svelte';
|
||||||
import DataTable from '$lib/components/DataTable.svelte';
|
import DataTable from '$lib/components/DataTable.svelte';
|
||||||
import { formatPatientName } from '$lib/utils/patients.js';
|
import { formatPatientName } from '$lib/utils/patients.js';
|
||||||
@ -95,14 +95,14 @@
|
|||||||
title="Edit"
|
title="Edit"
|
||||||
onclick={() => onEditVisit(row)}
|
onclick={() => onEditVisit(row)}
|
||||||
>
|
>
|
||||||
<span class="text-xs">Edit</span>
|
<Edit2 class="w-3 h-3" />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="btn btn-xs btn-ghost"
|
class="btn btn-xs btn-ghost"
|
||||||
title="History"
|
title="History"
|
||||||
onclick={() => onViewHistory(row)}
|
onclick={() => onViewHistory(row)}
|
||||||
>
|
>
|
||||||
<span class="text-xs">Hist</span>
|
<History class="w-3 h-3" />
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
{:else}
|
{:else}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user