calibration_date && $this->calibration_frequency) { try { $calibrationDate = Carbon::parse($this->calibration_date); $frequency = (int) $this->calibration_frequency; if ($frequency > 0) { $this->calibration_due_date = $calibrationDate->copy()->addDays($frequency)->format('Y-m-d'); } } catch (\Exception $e) { // If date parsing fails, don't set due_date // Log error if needed: \Log::error('Calibration date calculation failed: ' . $e->getMessage()); } } } /** * Mutator: Calculate due_date when calibration_date is set */ public function setCalibrationDateAttribute($value) { $this->attributes['calibration_date'] = $value; $this->calculateDueDate(); } /** * Mutator: Calculate due_date when calibration_frequency is set */ public function setCalibrationFrequencyAttribute($value) { $this->attributes['calibration_frequency'] = $value; $this->calculateDueDate(); } }