Base
This commit is contained in:
129
app/Controller/Propietarios.php
Normal file
129
app/Controller/Propietarios.php
Normal file
@ -0,0 +1,129 @@
|
||||
<?php
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Definition\Controller;
|
||||
use Incoviba\old\Venta\Propietario;
|
||||
use Incoviba\old\Common\Region;
|
||||
use Incoviba\old\Common\Direccion;
|
||||
use Incoviba\old\Venta\Venta;
|
||||
|
||||
class Propietarios
|
||||
{
|
||||
use Controller;
|
||||
|
||||
public static function edit()
|
||||
{
|
||||
$id = get('venta');
|
||||
$venta = model(Venta::class)->findOne($id);
|
||||
$propietario = $venta->propietario();
|
||||
$regiones = model(Region::class)->orderByAsc('numeracion')->findMany();
|
||||
|
||||
return view('ventas.propietarios.edit', compact('venta', 'propietario', 'regiones'));
|
||||
}
|
||||
public static function editar()
|
||||
{
|
||||
$id = get('venta');
|
||||
$venta = model(Venta::class)->findOne($id);
|
||||
|
||||
$info = post();
|
||||
list($info['rut'], $info['dv']) = explode('-', str_replace('.', '', $info['rut']));
|
||||
$propietario = model(Propietario::class)->findOne($info['rut']);
|
||||
if (!$propietario) {
|
||||
$propietario = model(Propietario::class)->create();
|
||||
}
|
||||
if ($propietario->direccion != 0) {
|
||||
$direccion = $propietario->direccion();
|
||||
} else {
|
||||
$direccion = model(Direccion::class)
|
||||
->where('calle', post('calle'))
|
||||
->where('numero', post('numero'))
|
||||
->where('extra', post('extra'))
|
||||
->where('comuna', post('comuna'))
|
||||
->findOne();
|
||||
if (!$direccion) {
|
||||
$data = [
|
||||
'calle' => post('calle'),
|
||||
'numero' => post('numero'),
|
||||
'extra' => post('extra'),
|
||||
'comuna' => post('comuna')
|
||||
];
|
||||
$direccion = model(Direccion::class)->create($data);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($info['empresa'])) {
|
||||
$info['apellido_paterno'] = '';
|
||||
$info['apellido_materno'] = '';
|
||||
}
|
||||
|
||||
if ($propietario->representante != 0) {
|
||||
list($info['rep_rut'], $info['rep_dv']) = explode('-', str_replace('.', '', $info['rep_rut']));
|
||||
$representante = $propietario->representante();
|
||||
} elseif (isset($info['rep_rut'])) {
|
||||
list($info['rep_rut'], $info['rep_dv']) = explode('-', str_replace('.', '', $info['rep_rut']));
|
||||
$representante= model(Propietario::class)->findOne($info['rep_rut']);
|
||||
if (!$representante) {
|
||||
$representante= model(Propietario::class)->create();
|
||||
}
|
||||
}
|
||||
|
||||
$fields = ['rut', 'dv', 'nombres', 'apellido_paterno', 'apellido_materno'];
|
||||
$change = false;
|
||||
foreach ($fields as $key) {
|
||||
if ($propietario->$key != $info[$key]) {
|
||||
$propietario->$key = $info[$key];
|
||||
$change = true;
|
||||
}
|
||||
}
|
||||
if ($direccion->isNew()) {
|
||||
$direccion->save();
|
||||
}
|
||||
if ($propietario->direccion != $direccion->id) {
|
||||
$propietario->direccion = $direccion->id;
|
||||
$change = true;
|
||||
}
|
||||
if ($change) {
|
||||
d($propietario);
|
||||
$propietario->save();
|
||||
}
|
||||
|
||||
if (isset($info['rep_rut'])) {
|
||||
$change = false;
|
||||
if ($representante->rut != $info['rep_rut']) {
|
||||
$representante->rut = $info['rep_rut'];
|
||||
$representante->dv = $info['rep_dv'];
|
||||
$change = true;
|
||||
}
|
||||
if ($representante->nombres != $info['rep_nombres']) {
|
||||
$representante->nombres = $info['rep_nombres'];
|
||||
$change = true;
|
||||
}
|
||||
if ($representante->apellido_paterno != $info['rep_apaterno']) {
|
||||
$representante->apellido_paterno = $info['rep_apaterno'];
|
||||
$change = true;
|
||||
}
|
||||
if ($representante->apellido_materno != $info['rep_amaterno']) {
|
||||
$representante->apellido_materno = $info['rep_amaterno'];
|
||||
$change = true;
|
||||
}
|
||||
if ($representante->direccion != $direccion->id) {
|
||||
$representante->direccion = $direccion->id;
|
||||
$change = true;
|
||||
}
|
||||
if ($change) {
|
||||
$representante->save();
|
||||
}
|
||||
if ($propietario->representante != $representante->rut) {
|
||||
$propietario->representante = $representante->rut;
|
||||
$propietario->save();
|
||||
}
|
||||
}
|
||||
|
||||
if ($venta->propietario != $propietario->rut) {
|
||||
$venta->propietario = $propietario->rut;
|
||||
$venta->save();
|
||||
}
|
||||
header('Location: ' . url('', ['p' => 'ventas', 'a' => 'show', 'venta' => $venta->id]));
|
||||
}
|
||||
}
|
||||
?>
|
Reference in New Issue
Block a user