Notification updates

This commit is contained in:
Eric Gullickson
2025-12-21 19:56:52 -06:00
parent 144f1d5bb0
commit 719c80ecd8
80 changed files with 7552 additions and 678 deletions

View File

@@ -63,9 +63,9 @@ export const MaintenanceRecordEditDialog: React.FC<MaintenanceRecordEditDialogPr
category: record.category,
subtypes: record.subtypes,
date: record.date,
odometer_reading: record.odometer_reading || undefined,
odometerReading: record.odometerReading || undefined,
cost: record.cost ? Number(record.cost) : undefined,
shop_name: record.shop_name || undefined,
shopName: record.shopName || undefined,
notes: record.notes || undefined,
});
setError(null);
@@ -172,7 +172,7 @@ export const MaintenanceRecordEditDialog: React.FC<MaintenanceRecordEditDialogPr
fullWidth
disabled
value={(() => {
const vehicle = vehicles?.find((v: Vehicle) => v.id === record.vehicle_id);
const vehicle = vehicles?.find((v: Vehicle) => v.id === record.vehicleId);
if (!vehicle) return 'Unknown Vehicle';
if (vehicle.nickname?.trim()) return vehicle.nickname.trim();
const parts = [vehicle.year, vehicle.make, vehicle.model, vehicle.trimLevel].filter(Boolean);
@@ -246,10 +246,10 @@ export const MaintenanceRecordEditDialog: React.FC<MaintenanceRecordEditDialogPr
label="Odometer Reading"
type="number"
fullWidth
value={formData.odometer_reading || ''}
value={formData.odometerReading || ''}
onChange={(e) =>
handleInputChange(
'odometer_reading',
'odometerReading',
e.target.value ? parseInt(e.target.value) : undefined
)
}
@@ -278,8 +278,8 @@ export const MaintenanceRecordEditDialog: React.FC<MaintenanceRecordEditDialogPr
<TextField
label="Shop/Location"
fullWidth
value={formData.shop_name || ''}
onChange={(e) => handleInputChange('shop_name', e.target.value || undefined)}
value={formData.shopName || ''}
onChange={(e) => handleInputChange('shopName', e.target.value || undefined)}
helperText="Service location"
inputProps={{ maxLength: 200 }}
/>

View File

@@ -92,13 +92,13 @@ export const MaintenanceRecordForm: React.FC = () => {
const onSubmit = async (data: FormData) => {
try {
const payload: CreateMaintenanceRecordRequest = {
vehicle_id: data.vehicle_id,
vehicleId: data.vehicle_id,
category: data.category as MaintenanceCategory,
subtypes: data.subtypes,
date: data.date,
odometer_reading: data.odometer_reading ? Number(data.odometer_reading) : undefined,
odometerReading: data.odometer_reading ? Number(data.odometer_reading) : undefined,
cost: data.cost ? Number(data.cost) : undefined,
shop_name: data.shop_name || undefined,
shopName: data.shop_name || undefined,
notes: data.notes || undefined,
};

View File

@@ -83,7 +83,7 @@ export const MaintenanceRecordsList: React.FC<MaintenanceRecordsListProps> = ({
{sortedRecords.map((record) => {
const dateText = new Date(record.date).toLocaleDateString();
const categoryDisplay = getCategoryDisplayName(record.category);
const subtypeCount = record.subtype_count || record.subtypes?.length || 0;
const subtypeCount = record.subtypeCount || record.subtypes?.length || 0;
return (
<Card key={record.id} variant="outlined">
@@ -105,9 +105,9 @@ export const MaintenanceRecordsList: React.FC<MaintenanceRecordsListProps> = ({
{categoryDisplay} ({subtypeCount})
</Typography>
<Stack direction="row" spacing={1} flexWrap="wrap" sx={{ mt: 1 }}>
{record.odometer_reading && (
{record.odometerReading && (
<Chip
label={`${Number(record.odometer_reading).toLocaleString()} miles`}
label={`${Number(record.odometerReading).toLocaleString()} miles`}
size="small"
variant="outlined"
/>
@@ -120,9 +120,9 @@ export const MaintenanceRecordsList: React.FC<MaintenanceRecordsListProps> = ({
variant="outlined"
/>
)}
{record.shop_name && (
{record.shopName && (
<Chip
label={record.shop_name}
label={record.shopName}
size="small"
variant="outlined"
/>