schneespur/release/schneespur-1.0.2/app/Models/CustomerObject.php
Michael 7288b93500 Release v1.0.2: diagnostic infrastructure core
Add neutral diagnostic framework for future reporting modules:
- DiagnosticReporterInterface, Registry, Manager, PayloadSanitizer
- Laravel exception hook in bootstrap/app.php
- Module permission declarations (requires_permissions in module.json)
- Core diagnostic report points (module boot/install/update failures)
- Module documentation update (moduldoku.md)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 16:54:11 +00:00

59 lines
1.4 KiB
PHP

<?php
namespace App\Models;
use Database\Factories\CustomerObjectFactory;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class CustomerObject extends Model
{
/** @use HasFactory<CustomerObjectFactory> */
use HasFactory;
protected $fillable = [
'customer_id',
'name',
'street',
'zip',
'city',
'lat',
'lon',
'contact_name',
'contact_email',
'contact_phone',
'price_amount_cents',
'price_unit',
'plow_threshold_cm',
'salt_enabled',
'site_notes',
'access_notes',
'notify_recipients',
'auto_notify_email',
'notification_email',
];
protected function casts(): array
{
return [
'price_amount_cents' => 'integer',
'plow_threshold_cm' => 'integer',
'salt_enabled' => 'boolean',
'auto_notify_email' => 'boolean',
'lat' => 'decimal:7',
'lon' => 'decimal:7',
];
}
public function customer(): BelongsTo
{
return $this->belongsTo(Customer::class);
}
public function serviceJobs(): HasMany
{
return $this->hasMany(Job::class);
}
}