Commit 85c0fafd by Angel MAS

variables adicionales en la orden

parent 072c5667
...@@ -13,6 +13,7 @@ use Onestartup\Shop\Model\ExtraField as Extra; ...@@ -13,6 +13,7 @@ use Onestartup\Shop\Model\ExtraField as Extra;
use Onestartup\Shop\Model\ProductShopInfo as ProductInfo; use Onestartup\Shop\Model\ProductShopInfo as ProductInfo;
use Onestartup\Shop\Model\CategoriaSat; use Onestartup\Shop\Model\CategoriaSat;
use Onestartup\Shop\Model\Billing; use Onestartup\Shop\Model\Billing;
use Onestartup\Shop\Model\VariableExtra as Variable;
use Onestartup\Shop\DataTables\ClientDataTable; use Onestartup\Shop\DataTables\ClientDataTable;
use Onestartup\Shop\DataTables\OrderDataTable; use Onestartup\Shop\DataTables\OrderDataTable;
...@@ -302,6 +303,9 @@ class AdminProductController extends Controller ...@@ -302,6 +303,9 @@ class AdminProductController extends Controller
$promo = null; $promo = null;
$shipping = null; $shipping = null;
$shipping_price = null; $shipping_price = null;
$var = Variable::first();
$variable = $var != null ? $var : new Variable();
if ($sale->coupon != null) { if ($sale->coupon != null) {
$promo = $this->util->getDiscount($sale, $sale->coupon); $promo = $this->util->getDiscount($sale, $sale->coupon);
...@@ -335,13 +339,14 @@ class AdminProductController extends Controller ...@@ -335,13 +339,14 @@ class AdminProductController extends Controller
} }
return view('shop::clients.orden') return view('shop::clients.orden')
->with('sale', $sale) ->with('sale', $sale)
->with('client', $client) ->with('client', $client)
->with('orden', $orden) ->with('orden', $orden)
->with('estado', $estado) ->with('estado', $estado)
->with('promo', $promo) ->with('promo', $promo)
->with('shipping_price', $shipping_price) ->with('shipping_price', $shipping_price)
->with('shipping', $shipping); ->with('variable', $variable)
->with('shipping', $shipping);
} }
public function updateShipping(Request $request, $id) public function updateShipping(Request $request, $id)
...@@ -660,4 +665,35 @@ class AdminProductController extends Controller ...@@ -660,4 +665,35 @@ class AdminProductController extends Controller
->with('message_success', 'Información actualizada'); ->with('message_success', 'Información actualizada');
} }
public function showVars()
{
$variable = Variable::first();
if ($variable == null) {
$variable = new Variable();
}
return view('shop::variable.edit')
->with('variable', $variable);
}
public function postVars(Request $request)
{
$variable = Variable::first();
if ($variable == null) {
$variable = new Variable();
}
$variable->fill($request->all());
$variable->save();
return redirect()
->back()
->with('message_success', 'Información actualizada');
}
} }
...@@ -37,6 +37,8 @@ use PayPal\Api\ItemList; ...@@ -37,6 +37,8 @@ use PayPal\Api\ItemList;
use PayPal\Api\Details; use PayPal\Api\Details;
use Onestartup\Shop\Libs\Util; use Onestartup\Shop\Libs\Util;
use Onestartup\Shop\Model\VariableExtra as Variable;
use Onestartup\Shop\Model\ExtraSaleInfo;
class CartController extends Controller class CartController extends Controller
...@@ -251,6 +253,13 @@ public function shipping() ...@@ -251,6 +253,13 @@ public function shipping()
$sale->save(); $sale->save();
} }
if ($request->additional) {
$additional = new ExtraSaleInfo($request->all());
$sale->info_extra()->save($additional);
}
\Session::put('sale', $sale); \Session::put('sale', $sale);
\Session::put('client', $client); \Session::put('client', $client);
......
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateExtraSaleInfosTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('extra_sale_infos', function (Blueprint $table) {
$table->increments('id');
$table->string('extra1', 455)->nullable();
$table->string('extra2', 455)->nullable();
$table->string('extra3', 455)->nullable();
$table->string('extra4', 455)->nullable();
$table->string('extra5', 455)->nullable();
$table->string('extra6', 455)->nullable();
$table->string('extra7', 455)->nullable();
$table->string('extra8', 455)->nullable();
$table->string('extra9', 455)->nullable();
$table->string('extra10', 455)->nullable();
$table->integer('sale_id')->unsigned();
$table->foreign('sale_id')->references('id')->on('sale_shops');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('extra_sale_infos');
}
}
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateVariableExtrasTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('variable_extras', function (Blueprint $table) {
$table->increments('id');
$table->string('alias1', 455)->nullable();
$table->string('alias2', 455)->nullable();
$table->string('alias3', 455)->nullable();
$table->string('alias4', 455)->nullable();
$table->string('alias5', 455)->nullable();
$table->string('alias6', 455)->nullable();
$table->string('alias7', 455)->nullable();
$table->string('alias8', 455)->nullable();
$table->string('alias9', 455)->nullable();
$table->string('alias10', 455)->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('variable_extras');
}
}
<?php
namespace Onestartup\Shop\Model;
use Illuminate\Database\Eloquent\Model;
class ExtraSaleInfo extends Model
{
protected $table = 'extra_sale_infos';
protected $fillable = [
'extra1',
'extra2',
'extra3',
'extra4',
'extra5',
'extra6',
'extra7',
'extra8',
'extra9',
'extra10',
'sale_id'
];
public function sale()
{
return $this->belongsTo(SaleShop::class, 'sale_id');
}
}
...@@ -50,4 +50,9 @@ class SaleShop extends Model ...@@ -50,4 +50,9 @@ class SaleShop extends Model
return $this->hasOne('Onestartup\Shop\Model\Billing', 'sale_id'); return $this->hasOne('Onestartup\Shop\Model\Billing', 'sale_id');
} }
public function info_extra()
{
return $this->hasOne(ExtraSaleInfo::class, 'sale_id');
}
} }
<?php
namespace Onestartup\Shop\Model;
use Illuminate\Database\Eloquent\Model;
class VariableExtra extends Model
{
protected $table = 'variable_extras';
protected $fillable = [
'alias1',
'alias2',
'alias3',
'alias4',
'alias5',
'alias6',
'alias7',
'alias8',
'alias9',
'alias10',
'alias11'
];
}
...@@ -103,6 +103,12 @@ Route::group(['middleware' => ['web', 'auth', 'is_admin']], function(){ ...@@ -103,6 +103,12 @@ Route::group(['middleware' => ['web', 'auth', 'is_admin']], function(){
'Onestartup\Shop\Controller\AdminProductController@postConfigs') 'Onestartup\Shop\Controller\AdminProductController@postConfigs')
->name('admin.shop.config_factura.store'); ->name('admin.shop.config_factura.store');
Route::get('admin/shop/variable', 'Onestartup\Shop\Controller\AdminProductController@showVars')
->name('admin.shop.variable');
Route::post('admin/shop/variable', 'Onestartup\Shop\Controller\AdminProductController@postVars')
->name('admin.shop.variable.store');
}); });
......
@extends('crm-admin::main-layout') @extends('crm-admin::main-layout')
@section('breadcrumb') @section('breadcrumb')
<li class="breadcrumb-item"> <li class="breadcrumb-item">
<a href="{{route('home')}}">Home</a> <a href="{{route('home')}}">Home</a>
</li> </li>
<li class="breadcrumb-item"> <li class="breadcrumb-item">
<a href="{{route('admin-shop-client.orders')}}">Tienda</a> <a href="{{route('admin-shop-client.orders')}}">Tienda</a>
</li> </li>
<li class="breadcrumb-item active"> <li class="breadcrumb-item active">
Detalle orden #{{$sale->id}} Detalle orden #{{$sale->id}}
</li> </li>
@endsection @endsection
@section('content') @section('content')
...@@ -37,6 +37,13 @@ setlocale(LC_MONETARY, 'en_US'); ...@@ -37,6 +37,13 @@ setlocale(LC_MONETARY, 'en_US');
<h6>Envio y factura</h6> <h6>Envio y factura</h6>
</a> </a>
</li> </li>
@if($variable->count() > 0)
<li class="nav-item">
<a class="nav-link block" href="" data-toggle="tab" data-target="#tab-4">
<h6>Detalles adicionales</h6>
</a>
</li>
@endif
</ul> </ul>
</div> </div>
...@@ -157,12 +164,12 @@ setlocale(LC_MONETARY, 'en_US'); ...@@ -157,12 +164,12 @@ setlocale(LC_MONETARY, 'en_US');
</tr> </tr>
@endforeach @endforeach
@if($sale->coupon != null) @if($sale->coupon != null)
<tr> <tr>
<td>1</td> <td>1</td>
<td>Descuento {{$sale->coupon}}</td> <td>Descuento {{$sale->coupon}}</td>
<td> - {{$promo['amount']}}</td> <td> - {{$promo['amount']}}</td>
<td> - {{$promo['amount']}}</td> <td> - {{$promo['amount']}}</td>
</tr> </tr>
@endif @endif
@if($shipping_price != null) @if($shipping_price != null)
<tr> <tr>
...@@ -184,17 +191,17 @@ setlocale(LC_MONETARY, 'en_US'); ...@@ -184,17 +191,17 @@ setlocale(LC_MONETARY, 'en_US');
</table> </table>
@if($sale->status == 2) @if($sale->status == 2)
@if($sale->payment_type == 'Tarjeta') @if($sale->payment_type == 'Tarjeta')
{!! Form::model($sale,['route'=> ['admin-shop-client.refund', $sale->id],"method"=>"PUT", "onsubmit"=>"if(!confirm('¿Estas seguro de devolver el dinero?')){return false;}"]) !!} {!! Form::model($sale,['route'=> ['admin-shop-client.refund', $sale->id],"method"=>"PUT", "onsubmit"=>"if(!confirm('¿Estas seguro de devolver el dinero?')){return false;}"]) !!}
{!! Form::submit('Reembolsar efectivo a tarjeta', ['class'=>'btn btn-warning']) !!} {!! Form::submit('Reembolsar efectivo a tarjeta', ['class'=>'btn btn-warning']) !!}
{!! Form::close() !!} {!! Form::close() !!}
@endif @endif
@if($sale->payment_type == 'Pay Pal') @if($sale->payment_type == 'Pay Pal')
{!! Form::model($sale,['route'=> ['admin-shop-client.refundPaypal', $sale->id],"method"=>"PUT", "onsubmit"=>"if(!confirm('¿Estas seguro de devolver el dinero?')){return false;}"]) !!} {!! Form::model($sale,['route'=> ['admin-shop-client.refundPaypal', $sale->id],"method"=>"PUT", "onsubmit"=>"if(!confirm('¿Estas seguro de devolver el dinero?')){return false;}"]) !!}
{!! Form::submit('Reembolsar efectivo a cuenta de paypal', ['class'=>'btn btn-warning']) !!} {!! Form::submit('Reembolsar efectivo a cuenta de paypal', ['class'=>'btn btn-warning']) !!}
{!! Form::close() !!} {!! Form::close() !!}
@endif @endif
@endif @endif
...@@ -216,99 +223,210 @@ setlocale(LC_MONETARY, 'en_US'); ...@@ -216,99 +223,210 @@ setlocale(LC_MONETARY, 'en_US');
<div class="box-body"> <div class="box-body">
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<h4>Datos de facturación</h4> <h4>Datos de facturación</h4>
<p> <p>
¿Requiere factura? <b>{{$sale->facturacion}}</b> ¿Requiere factura? <b>{{$sale->facturacion}}</b>
</p> </p>
@if($sale->billing()->count() > 0) @if($sale->billing()->count() > 0)
@if($sale->billing->status == 0) @if($sale->billing->status == 0)
<b>Factura Pendiente</b><br> <b>Factura Pendiente</b><br>
{!! Form::model($sale,['route'=> ['admin.shop.facturar',$sale->id],"method"=>"PUT"]) !!} {!! Form::model($sale,['route'=> ['admin.shop.facturar',$sale->id],"method"=>"PUT"]) !!}
{!! Form::submit('Crear y enviar factura', ['class'=>'btn-xs primary']) !!} {!! Form::submit('Crear y enviar factura', ['class'=>'btn-xs primary']) !!}
{!! Form::close() !!} {!! Form::close() !!}
<br> <br>
@endif @endif
@if($sale->billing->status == 1) @if($sale->billing->status == 1)
<b>Factura Enviada</b><br> <b>Factura Enviada</b><br>
{!! Form::model($sale->billing,['route'=> ['admin.shop.facturaEnviar',$sale->billing->id],"method"=>"PUT"]) !!} {!! Form::model($sale->billing,['route'=> ['admin.shop.facturaEnviar',$sale->billing->id],"method"=>"PUT"]) !!}
{!! Form::submit('Reenviar factura por correo', ['class'=>'btn-xs primary']) !!} {!! Form::submit('Reenviar factura por correo', ['class'=>'btn-xs primary']) !!}
{!! Form::close() !!} {!! Form::close() !!}
<br> <br>
{!! Form::model($sale->billing,['route'=> ['admin.shop.facturaCancelar',$sale->billing->id],"method"=>"PUT"]) !!} {!! Form::model($sale->billing,['route'=> ['admin.shop.facturaCancelar',$sale->billing->id],"method"=>"PUT"]) !!}
<button class='btn btn-xs btn-danger button-mb' onclick="return confirm('¿Estás seguro de cancelar esta factura?');" type='submit'> <button class='btn btn-xs btn-danger button-mb' onclick="return confirm('¿Estás seguro de cancelar esta factura?');" type='submit'>
<i class='fas fa-trash-alt icon-special-size'></i> <i class='fas fa-trash-alt icon-special-size'></i>
Cancelar factura Cancelar factura
</button> </button>
{!! Form::close() !!} {!! Form::close() !!}
<br> <br>
UUID: <b>{{$sale->billing->uuid}}</b><br> UUID: <b>{{$sale->billing->uuid}}</b><br>
PDF: <a href="{{$sale->billing->pdf}}" target="blank">{{$sale->billing->pdf}}</a><br> PDF: <a href="{{$sale->billing->pdf}}" target="blank">{{$sale->billing->pdf}}</a><br>
XML: <a href="{{$sale->billing->xml}}" target="blank">{{$sale->billing->xml}}</a><br> XML: <a href="{{$sale->billing->xml}}" target="blank">{{$sale->billing->xml}}</a><br>
@endif @endif
@if($sale->billing->status == 2)
<b> Factura Cancelada</b><br>
@endif
<br>Dirección: <br>
Calle {{$sale->billing->calle}} numero {{$sale->billing->numero}}, Col. {{$sale->billing->colonia}}
<br>
{{$sale->billing->ciudad}}, {{$sale->billing->estado}}. C.P. {{$sale->billing->cp}}
<br>
Razón social: <b>{{$sale->billing->razon}}</b><br>
R.F.C. <b>{{$sale->billing->rfc}}</b><br>
Correo electrónico:<b>{{$sale->billing->correo}}</b>
<br><br>
<h6>Liga de formulario de facturación</h6>
<a target="blank" href="{{route('cart.facturacion', \Crypt::encryptString($sale->id))}}">
Visitar link
</a>
@else
<br><br>
<h6>Liga de formulario de facturación</h6>
<a target="blank" href="{{route('cart.facturacion', \Crypt::encryptString($sale->id))}}">
Visitar link
</a>
@endif
</div>
@if($sale->billing->status == 2)
<b> Factura Cancelada</b><br>
@endif
<br>Dirección: <br>
Calle {{$sale->billing->calle}} numero {{$sale->billing->numero}}, Col. {{$sale->billing->colonia}}
<br>
{{$sale->billing->ciudad}}, {{$sale->billing->estado}}. C.P. {{$sale->billing->cp}}
<br>
Razón social: <b>{{$sale->billing->razon}}</b><br>
R.F.C. <b>{{$sale->billing->rfc}}</b><br>
Correo electrónico:<b>{{$sale->billing->correo}}</b>
<br><br>
<h6>Liga de formulario de facturación</h6>
<a target="blank" href="{{route('cart.facturacion', \Crypt::encryptString($sale->id))}}">
Visitar link
</a>
@else
<br><br>
<h6>Liga de formulario de facturación</h6>
<a target="blank" href="{{route('cart.facturacion', \Crypt::encryptString($sale->id))}}">
Visitar link
</a>
@endif
</div>
<div class="col-md-6">
@if($shipping != null)
<div class="col-md-6"> Direccion de entrega:<br>
@if($shipping != null) <b>{{$shipping->calle}}, # {{$shipping->numero}}, col. {{$shipping->colonia}}</b><br>
<b>{{$shipping->ciudad}}, {{$shipping->estado}}</b><br>
C.P. <b>{{$shipping->cp}}</b><br>
Referencias:<br>
<b>{{$shipping->referencias}}</b><br>
Direccion de entrega:<br> Estatus del envio: <a href="javascript::void()" data-target="#m-a-a" data-toggle="modal" href="#" ui-target="#animate" ui-toggle-class="zoom"><i class="fa fa-edit"></i></a><br>
<b>{{$shipping->calle}}, # {{$shipping->numero}}, col. {{$shipping->colonia}}</b><br>
<b>{{$shipping->ciudad}}, {{$shipping->estado}}</b><br>
C.P. <b>{{$shipping->cp}}</b><br>
Referencias:<br>
<b>{{$shipping->referencias}}</b><br>
Estatus del envio: <a href="javascript::void()" data-target="#m-a-a" data-toggle="modal" href="#" ui-target="#animate" ui-toggle-class="zoom"><i class="fa fa-edit"></i></a><br> <span class="label warning">{{$sale->shipping_status}}</span>
@else
<h6>
No hay datos de envio, el cliente pasará a la tienda a recoger el producto
</h6>
@endif
<span class="label warning">{{$sale->shipping_status}}</span> </div>
@else
<h6>
No hay datos de envio, el cliente pasará a la tienda a recoger el producto
</h6>
@endif
</div>
</div>
</div> </div>
</div> </div>
</div><!-- end tab-3 --> </div>
</div><!-- end tab-3 -->
@if($variable->count() > 0)
<div class="tab-pane" id="tab-4">
<div class="p-a-md dark _600">Detalles adicionales</div>
<div class="box">
<div class="box-body">
@if($sale->info_extra != null)
<div class="row">
<div class="col-md-6">
@if($variable->alias1 != null)
<p>
{{$variable->alias1}} :
<b>
{{$sale->info_extra->extra1}}
</b>
</p>
@endif
@if($variable->alias2 != null)
<p>
{{$variable->alias2}} :
<b>
{{$sale->info_extra->extra2}}
</b>
</p>
@endif
@if($variable->alias3 != null)
<p>
{{$variable->alias3}} :
<b>
{{$sale->info_extra->extra3}}
</b>
</p>
@endif
@if($variable->alias4 != null)
<p>
{{$variable->alias4}} :
<b>
{{$sale->info_extra->extra4}}
</b>
</p>
@endif
@if($variable->alias5 != null)
<p>
{{$variable->alias5}} :
<b>
{{$sale->info_extra->extra5}}
</b>
</p>
@endif
</div>
<div class="col-md-6">
@if($variable->alias6 != null)
<p>
{{$variable->alias6}} :
<b>
{{$sale->info_extra->extra6}}
</b>
</p>
@endif
@if($variable->alias7 != null)
<p>
{{$variable->alias7}} :
<b>
{{$sale->info_extra->extra7}}
</b>
</p>
@endif
@if($variable->alias8 != null)
<p>
{{$variable->alias8}} :
<b>
{{$sale->info_extra->extra8}}
</b>
</p>
@endif
@if($variable->alias9 != null)
<p>
{{$variable->alias9}} :
<b>
{{$sale->info_extra->extra9}}
</b>
</p>
@endif
@if($variable->alias10 != null)
<p>
{{$variable->alias10}} :
<b>
{{$sale->info_extra->extra10}}
</b>
</p>
@endif
</div>
</div>
@endif
</div>
</div>
</div><!-- end tab-4 -->
@endif
</div> </div>
</div> </div>
</div> </div>
<div class="modal fade animate" data-backdrop="true" id="m-a-a"> <div class="modal fade animate" data-backdrop="true" id="m-a-a">
......
...@@ -60,6 +60,19 @@ setlocale(LC_MONETARY, 'en_US'); ...@@ -60,6 +60,19 @@ setlocale(LC_MONETARY, 'en_US');
<br> <br>
</section> </section>
<section>
<h4>Información adicional</h4>
{!! Form::hidden('additional', true) !!}
<div class="form-group">
{!! Form::label('extra1', 'Fecha de envío', ['class'=>'']) !!}
{!! Form::text('extra1', null, ['class'=>'form-control', 'required'=>'required']) !!}
</div>
<div>
{!! Form::label('extra2', 'Dedicatoria', ['class'=>'']) !!}
{!! Form::text('extra2', null, ['class'=>'form-control', 'required'=>'required']) !!}
</div>
</section>
{!! Form::submit('Enviar información', ['class'=>'']) !!} {!! Form::submit('Enviar información', ['class'=>'']) !!}
{!! Form::close() !!} {!! Form::close() !!}
......
...@@ -5,12 +5,12 @@ ...@@ -5,12 +5,12 @@
<div class='col-md-12'> <div class='col-md-12'>
<div class='box'> <div class='box'>
<div class='box-header dark'> <div class='box-header dark'>
<h2>Mapeo de variables extras</h2> <h2>Variables extras de información adicional a una compra</h2>
</div> </div>
<div class='box-body'> <div class='box-body'>
<div class='col-md-12'> <div class='col-md-12'>
{!! Form::model($variable,['route'=> ['admin.product.variable.store'],"method"=>"POST"]) !!} {!! Form::model($variable,['route'=> ['admin.shop.variable.store'],"method"=>"POST"]) !!}
@include('product::variable.fields') @include('shop::variable.fields')
</div> </div>
</div> </div>
<div class='dker p-a text-right'> <div class='dker p-a text-right'>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment