diff --git a/app/Http/Controllers/Api/V4/ClaimController.php b/app/Http/Controllers/Api/V4/ClaimController.php index f2e5fd2..08c2aa4 100644 --- a/app/Http/Controllers/Api/V4/ClaimController.php +++ b/app/Http/Controllers/Api/V4/ClaimController.php @@ -6,6 +6,7 @@ use App\Exceptions\Api\V4\CrmException; use App\Http\Controllers\Controller; use App\Http\Requests\Api\V4\SendClaimRequest; use App\Models\Claim; +use App\Models\CustomerInfo; use App\Models\Service; use Illuminate\Support\Arr; use Uwil\LaravelCommon\Helpers\FileHelper; @@ -24,7 +25,17 @@ class ClaimController extends Controller { $claimModel = (new Claim())->fill(Arr::except($request->validated(), 'file')); if ($request->filled('file')) { - $claimModel->file = FileHelper::storeBase64File('claim', $request->file, private: true); + $claimModel->file = FileHelper::storeBase64File( + tableName: 'claim', + fileBase64: $request->file, + private: true, + ); + } + + // Add customer relation if exist. + $crmCustomer = CustomerInfo::getFromEmail($claimModel->brand, $claimModel->email)->first(); + if (!is_null($crmCustomer)) { + $claimModel->hashcode = $crmCustomer->hashcode; } if (!$claimModel->saveOrFail()) { diff --git a/app/Http/Requests/Api/V4/SendClaimRequest.php b/app/Http/Requests/Api/V4/SendClaimRequest.php index a6c232f..145aab7 100644 --- a/app/Http/Requests/Api/V4/SendClaimRequest.php +++ b/app/Http/Requests/Api/V4/SendClaimRequest.php @@ -82,7 +82,6 @@ class SendClaimRequest extends BaseApiRequest 'message' => 'required|string|min:3', 'brand_id' => 'required|integer|exists:brands,id', 'subject_id' => 'required|integer|exists:claim_subjects,id', - 'hashcode' => 'sometimes|nullable|string|size:36', ]; } }