1 magasin en base

This commit is contained in:
Olivier Legat 2021-04-21 17:50:57 +02:00
parent fc2abf3b33
commit e32fc283f8
10 changed files with 119 additions and 6 deletions

View file

@ -0,0 +1,11 @@
<?php
namespace App\Http\Controllers\Bo;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class MagasinsController extends Controller
{
//
}

View file

@ -9,6 +9,7 @@ use App\Models\OrdersProducts;
use App\Models\OrdersStatus;
use App\Models\Product;
use App\Models\Timeslot;
use App\Models\Magasin;
use Illuminate\Support\Facades\Mail;
use App\Mail\OrderStatusMail;
use App\Mail\OrderConfirmMail;
@ -290,7 +291,10 @@ class OrdersController extends Controller
$idcommande = Session::get('idcommande');
$order = Order::where('reference', '=', $reference)->firstOrFail();
return view('sales.confirm', compact('activestep', 'order'));
//1 seul magasin en base pour le moment
$magasin = Magasin::first();
return view('sales.confirm', compact('activestep', 'order', 'magasin'));
}
/**

View file

@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use App\Http\Requests\ContactFormRequest;
use App\Mail\SendContactMail;
use App\Models\Magasin;
use App\Models\Setting;
use Illuminate\Support\Facades\Mail;
use Illuminate\Http\Request;
@ -14,7 +15,10 @@ class ContactController extends Controller
{
$status = $request->session()->get('status');
return view('contact', compact('status'));
//1 seul magasin en base pour le moment
$magasin = Magasin::first();
return view('contact', compact('status', 'magasin'));
}
public function contactSubmit(ContactFormRequest $request)

View file

@ -7,6 +7,7 @@ use App\Http\Requests\UpdateInfosRequest;
use App\Mail\PasswordResetMail;
use App\Mail\RegisterConfirmMail;
use App\Models\Customers;
use App\Models\Magasin;
use App\Models\Order;
use App\Models\PasswordReset;
use Exception;
@ -368,7 +369,9 @@ class CustomerController extends Controller
$order = Order::where('reference', '=', $reference)
->where('customer_id', Auth::guard('customer')->user()->id)
->firstOrFail();
return view('customer.order-detail', compact('order'));
$magasin = Magasin::first();
return view('customer.order-detail', compact('order', 'magasin'));
}
public function delete($id)

View file

@ -9,6 +9,9 @@ use Illuminate\Http\Request;
class IndexController extends Controller
{
/**
* deprecated
*/
public function contact(Request $request)
{
$content = Content::where('key', 'contact')->first();

View file

@ -2,6 +2,7 @@
namespace App\Mail;
use App\Models\Magasin;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
@ -30,7 +31,9 @@ class OrderConfirmMail extends Mailable
*/
public function build()
{
$order = $this->order;
return $this->subject("Votre commande - " . config('theme.site_name'))->view('mails.order-confirm', compact('order'));
$order = $this->order;
$magasin = Magasin::first();
return $this->subject("Votre commande - " . config('theme.site_name'))->view('mails.order-confirm', compact('order', 'magasin'));
}
}

View file

@ -2,6 +2,7 @@
namespace App\Mail;
use App\Models\Magasin;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
@ -31,6 +32,8 @@ class OrderStatusMail extends Mailable
public function build()
{
$order = $this->order;
return $this->subject("Votre commande - " . config('theme.site_name'))->view('mails.order-status', compact('order'));
$magasin = Magasin::first();
return $this->subject("Votre commande - " . config('theme.site_name'))->view('mails.order-status', compact('order', 'magasin'));
}
}

11
app/Models/Magasin.php Normal file
View file

@ -0,0 +1,11 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Magasin extends Model
{
use HasFactory;
}

View file

@ -0,0 +1,45 @@
<?php
use Database\Seeders\MagasinsSeeder;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateMagasinsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('magasins', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('address');
$table->string('postcode');
$table->string('city');
$table->string('phone')->nullable();
$table->string('latitude')->nullable();
$table->string('longitude')->nullable();
$table->text('gmaps_placeid')->nullable();
$table->text('gmaps_link_href')->nullable();
$table->text('gmaps_embed_href')->nullable();
$table->timestamps();
});
$seeder = new MagasinsSeeder;
$seeder->run();
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('magasins');
}
}

View file

@ -0,0 +1,26 @@
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use App\Models\Magasin;
class MagasinsSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$shop = new Magasin();
$shop->name = 'Boutique du Canard';
$shop->address = 'ZI Le Moulin du Lay';
$shop->postcode = '56660';
$shop->city = 'Saint-Jean-Brévelay';
$shop->gmaps_embed_href = 'https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d1338.6273890542313!2d-2.72895304171439!3d47.85402879462169!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x481027805e253b01%3A0x9238845cc1430920!2sCELVIA%20Centre%20d&#39;Elaboration%20des%20Viandes!5e0!3m2!1sfr!2sfr!4v1619018555708!5m2!1sfr!2sfr';
$shop->gmaps_link_href = 'https://goo.gl/maps/CPWELAXDLHAbUsgeA'
$shop->save();
}
}