createsAffiliate = $createsAffiliate; } /** * @param Request $request * @return JsonResponse */ public function execute(Request $request): JsonResponse { $code = $request->input('code'); $code = $code !== null ? (string) $code : ''; $isActive = $request->input('is_active', true); // Convert string 'true'/'false' to boolean if needed if (is_string($isActive)) { $isActive = filter_var($isActive, FILTER_VALIDATE_BOOLEAN); } $isActive = (bool) $isActive; $object = new AffiliateObject( $code, $request->input('campaign_name'), $request->input('campaign_description'), $isActive ); $affiliate = $this->createsAffiliate->execute($object); return response()->json([ 'message' => 'Affiliate code created successfully', 'data' => $affiliate ]); } }