'decimal:2', 'material_result' => 'integer', ]; } protected function formattedMaterialResult(): Attribute { return Attribute::make( get: fn () => number_format($this->material_result, 0, ',', '.'), ); } protected function formattedMaterialUsage(): Attribute { return Attribute::make( get: fn () => number_format((float) $this->material_usage, 2, ',', '.'), ); } public function combination(): BelongsTo { return $this->belongsTo(CuttingMaterialCombination::class, 'combination_id'); } public function cutting(): BelongsTo { return $this->belongsTo(Cutting::class); } public function rawMaterialPrice(): BelongsTo { return $this->belongsTo(RawMaterialPrice::class)->withTrashed(); } public function user(): BelongsTo { return $this->belongsTo(User::class); } }