'integer', 'stock_before' => 'integer', 'retail_stock_before' => 'integer', 'stock_after' => 'integer', 'retail_stock_after' => 'integer', ]; } public function getActivitylogOptions(): LogOptions { return LogOptions::defaults() ->logAll() ->logOnlyDirty() ->dontLogEmptyChanges(); } protected function formattedQuantity(): Attribute { return Attribute::make( get: fn () => number_format($this->quantity, 0, ',', '.'), ); } protected function formattedRetailStockBefore(): Attribute { return Attribute::make( get: fn () => number_format($this->retail_stock_before, 0, ',', '.'), ); } protected function formattedRetailStockAfter(): Attribute { return Attribute::make( get: fn () => number_format($this->retail_stock_after, 0, ',', '.'), ); } protected function formattedStockBefore(): Attribute { return Attribute::make( get: fn () => number_format($this->stock_before, 0, ',', '.'), ); } protected function formattedStockAfter(): Attribute { return Attribute::make( get: fn () => number_format($this->stock_after, 0, ',', '.'), ); } public function productVariant(): BelongsTo { return $this->belongsTo(ProductVariant::class); } public function user(): BelongsTo { return $this->belongsTo(User::class); } }