diff --git a/.gitignore b/.gitignore index 8b137891..61ead866 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ - +/vendor diff --git a/app/Http/Controllers/ShopViewsController.php b/app/Http/Controllers/ShopViewsController.php index e77cb9ca..4feb60c4 100644 --- a/app/Http/Controllers/ShopViewsController.php +++ b/app/Http/Controllers/ShopViewsController.php @@ -54,14 +54,14 @@ class ShopViewsController extends Controller } */ /* Paso 3 informacion personal */ - /* public function personal_account() { + // public function personal_account() { - return view('frontend.registro-comercio.views.personal-account'); - } */ + // return view('frontend.registro-comercio.views.personal-account'); + // } - /* Paso 4 informacion de la tienda */ - /* public function personal_shop() { + // /* Paso 4 informacion de la tienda */ + // public function personal_shop() { - return view('frontend.registro-comercio.views.personal-shop'); - } */ + // return view('frontend.registro-comercio.views.personal-shop'); + // } } diff --git a/app/Http/Controllers/TypeBusinessController.php b/app/Http/Controllers/TypeBusinessController.php index 6abab429..f6cabe93 100644 --- a/app/Http/Controllers/TypeBusinessController.php +++ b/app/Http/Controllers/TypeBusinessController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Mail\VerificationEmail; +use App\Models\Shop; use App\Models\User; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -127,4 +128,42 @@ class TypeBusinessController extends Controller { // } + + public function business_complete_index() + { + $user = auth()->user(); + + return view('frontend.registro-comercio.views.business.business_complete', compact('user')); + } + + public function business_complete_store(Request $request, Shop $shop) + { + // Validación de los campos + $validator = Validator::make($request->all(), [ + 'name' => ['required'], + 'address' => ['required'], + ]); + + // Si la validación falla, puedes redirigir de vuelta con los errores + if ($validator->fails()) { + return redirect()->back()->withErrors($validator)->withInput(); + } + + // Guardar los campos en el modelo Shop + $shop->user_id = $request->user()->id; + $shop->name = $request->name; + $shop->address = $request->address; + // Aquí puedes guardar otros campos si los tienes + + // Guardar el modelo Shop en la base de datos + $shop->save(); + + // Marcar el campo "shop_verified_at" como verificado en el modelo User + $request->user()->shop_verified_at = now(); // Puedes usar la función "now()" para establecer la fecha y hora actual + + // Guardar el modelo User en la base de datos + $request->user()->save(); + + return redirect()->route('seller.dashboard'); + } } diff --git a/app/Http/Controllers/TypeWorkshopController.php b/app/Http/Controllers/TypeWorkshopController.php index 0411cf73..48934ce4 100644 --- a/app/Http/Controllers/TypeWorkshopController.php +++ b/app/Http/Controllers/TypeWorkshopController.php @@ -3,7 +3,9 @@ namespace App\Http\Controllers; use App\Mail\VerificationEmail; +use App\Models\Shop; use App\Models\User; +use App\Models\Workshop; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Hash; @@ -126,4 +128,42 @@ class TypeWorkshopController extends Controller { // } + + public function workshop_complete_index() + { + $user = auth()->user(); + + return view('frontend.registro-comercio.views.workshops.workshop_complete', compact('user')); + } + + public function workshop_complete_store(Request $request, Workshop $workshop) + { + // Validación de los campos + $validator = Validator::make($request->all(), [ + 'name' => ['required'], + 'address' => ['required'], + ]); + + // Si la validación falla, puedes redirigir de vuelta con los errores + if ($validator->fails()) { + return redirect()->back()->withErrors($validator)->withInput(); + } + + // Guardar los campos en el modelo Workshop + $workshop->name = $request->name; + $workshop->address = $request->address; + // Aquí puedes guardar otros campos si los tienes + + // Guardar el modelo Workshop en la base de datos + $workshop->save(); + + // Asignar el ID del taller al campo "workshop_id" en el modelo User + + // Marcar el campo "shop_verified_at" como verificado en el modelo User + $request->user()->shop_verified_at = now(); // Puedes usar la función "now()" para establecer la fecha y hora actual + $request->user()->workshop_id = $workshop->id; + $request->user()->save(); + + return redirect()->route('workshop.dashboard'); + } } diff --git a/app/Models/Shop.php b/app/Models/Shop.php index 662bf03b..775e2afc 100644 --- a/app/Models/Shop.php +++ b/app/Models/Shop.php @@ -9,6 +9,8 @@ class Shop extends Model protected $with = ['user']; + protected $fillable = ['name', 'address', 'user_id']; + public function user() { return $this->belongsTo(User::class); @@ -20,4 +22,10 @@ class Shop extends Model public function followers(){ return $this->hasMany(FollowSeller::class); } + + //URL AMIGABLES + public function getRouteKeyName() + { + return 'slug'; + } } diff --git a/app/Models/User.php b/app/Models/User.php index 63ada76a..142e75bc 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -148,5 +148,10 @@ class User extends Authenticatable implements MustVerifyEmail public function uploads(){ return $this->hasMany(Upload::class); } + + public function workshop() + { + return $this->hasOne(Workshop::class); + } } diff --git a/app/Models/Workshop.php b/app/Models/Workshop.php new file mode 100644 index 00000000..448ab8ca --- /dev/null +++ b/app/Models/Workshop.php @@ -0,0 +1,18 @@ +belongsTo(User::class); + } +} diff --git a/resources/views/frontend/registro-comercio/views/business/business_complete.blade.php b/resources/views/frontend/registro-comercio/views/business/business_complete.blade.php new file mode 100644 index 00000000..e6bb14b1 --- /dev/null +++ b/resources/views/frontend/registro-comercio/views/business/business_complete.blade.php @@ -0,0 +1,141 @@ + + +
+ + + + + + +¡Gracias por registrarte! Para poder completar tu registro,
necesitamos que agregues los siguientes campos de negocio:
Bienvenido a La Pieza.DO, en breve nuestro departamento de servicios te enviara un email con todos los detalles de tu cuenta y la confirmación de tu registro.
- @if($user->user_type == 'customer') - Ir al Panel + {{-- @if($user->user_type == 'customer') + Ir al Panel @elseif($user->user_type == 'seller') - Ir al Panel + Ir al Panel @elseif($user->user_type == 'repair') - Ir al Panel - @endif + Ir al Panel + @endif --}} + {{-- @if($user->user_type == 'customer') + + @elseif($user->user_type == 'seller') + + @elseif($user->user_type == 'repair') + + @endif --}} + + + @if($user->user_type == 'customer') + + @elseif($user->user_type == 'seller') + + @elseif($user->user_type == 'repair') + + @endif