Edit File: DelegateJoinrequest.php
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use File; use App\Traits\Uploadable; use Illuminate\Database\Eloquent\Model; use Spatie\Translatable\HasTranslations; class DelegateJoinrequest extends Model { use Uploadable ,HasTranslations; protected $fillable = ['user_id', 'fullname' , 'identity_card' , 'car_license' , 'driver_date_of_birth' , 'sponsor_name' , 'region_id' , 'city_id','email' , 'country_key' , 'phone' , 'address' , 'bank_acc_number', 'bank_iban_number', 'bank_name' , 'iban_image' , 'car_type_id' , 'car_numbers', 'car_letters' , 'personal_image' , 'car_model' , 'manufacturing_year' , 'driving_license' , 'identity_card_image' , 'car_front' , 'car_back' ,'seen' , 'status' , 'nationality_id' , 'city_id' , 'citc_errorCodes', 'citc_notification' , ' citc_refrenceCode','car_numbers','car_letters']; public $translatable = ['fullname' ,'car_numbers', 'car_letters' ]; public function setDrivingLicenseAttribute($value) { if ($value && is_file($value)) { $this->attributes['driving_license'] = $this->uploadFile($value, 'users', true, 250, null); } } public function setIbanImageAttribute($value) { if ($value && is_file($value)) { $this->attributes['iban_image'] = $this->uploadFile($value, 'users', true, 250, null); } } public function setCarLicenseAttribute($value) { if ($value && is_file($value)) { $this->attributes['car_license'] = $this->uploadFile($value, 'users', true, 250, null); } } public function setIdentityCardImageAttribute($value) { if ($value && is_file($value)) { $this->attributes['identity_card_image'] = $this->uploadFile($value, 'users', true, 250, null); } } public function scopeSearch($query, $searchArray = []) { $query->where(function ($query) use ($searchArray) { if ($searchArray) { foreach ($searchArray as $key => $value) { if (str_contains($key, '_id')) { if (null != $value) { $query->Where($key, $value); } } elseif ('order' == $key) { } elseif ('created_at_min' == $key) { if (null != $value) { $query->WhereDate('created_at', '>=', $value); } } elseif ('created_at_max' == $key) { if (null != $value) { $query->WhereDate('created_at', '<=', $value); } } else { $query->Where($key, 'like', '%' . $value . '%'); } } } }); return $query->orderBy('created_at', request()->searchArray && request()->searchArray['order'] ? request()->searchArray['order'] : 'DESC'); } public function nationality() { return $this->belongsTo(Nationality::class); } public function region() { return $this->belongsTo(Region::class); } public function city() { return $this->belongsTo(City::class); } public function carType() { return $this->belongsTo(Cartype::class); } public function user() { return $this->belongsTo(User::class); } public function setPersonalImageAttribute($value) { if ($value && is_file($value) ) { File::delete(public_path('assets/uploads/users/' . $this->personal_image)); $this->attributes['personal_image'] = $this->uploadFile($value, 'users', true, 250, null); } else { $this->attributes['personal_image'] = $value; } } public function setCarBackAttribute($value) { if ( is_file($value)) { File::delete(public_path('assets/uploads/users/' . $this->car_back)); $this->attributes['car_back'] = $this->uploadFile($value, 'users', true, 250, null); } } public function setCarFrontAttribute($value) { if ($value && is_file($value)) { File::delete(public_path('assets/uploads/users/' . $this->car_front)); $this->attributes['car_front'] = $this->uploadFile($value, 'users', true, 250, null); } } }
Back to File Manager