Point::class, 'operating_hours' => 'array', 'commission_rate_percent' => 'integer', ]; } public function getRouteKeyName(): string { return 'uuid'; } protected static function booted(): void { static::creating(function (self $s): void { if (empty($s->uuid)) $s->uuid = (string) Str::uuid(); }); } public function owner(): BelongsTo { return $this->belongsTo(User::class, 'owner_user_id'); } public function barangay(): BelongsTo { return $this->belongsTo(Barangay::class); } public function inventory(): HasOne { return $this->hasOne(StoreInventory::class, 'store_id'); } public function purchases(): HasMany { return $this->hasMany(StorePurchase::class, 'store_id'); } public function sales(): HasMany { return $this->hasMany(StoreSale::class, 'store_id'); } }