Mixed
This commit is contained in:
@ -434,7 +434,7 @@ class Informes
|
||||
|
||||
$columnas = [
|
||||
'Propietario',
|
||||
['name' => 'Departamento', 'style' => 'number'],
|
||||
'Departamento',
|
||||
['name' => 'Estacionamientos', 'style' => 'number'],
|
||||
['name' => 'Bodegas', 'style' => 'number'],
|
||||
'Fecha Venta',
|
||||
@ -457,7 +457,8 @@ class Informes
|
||||
['name' => 'Valor Neto', 'style' => 'amount'],
|
||||
['name' => 'UF/m²*', 'style' => 'amount'],
|
||||
['name' => 'Comision', 'style' => 'amount'],
|
||||
['name' => 'Venta s/Comision', 'style' => 'amount']
|
||||
['name' => 'Venta s/Comision', 'style' => 'amount'].
|
||||
['name' => 'Precio', 'style' => 'Amount']
|
||||
];
|
||||
//$informe->addColumns($columnas);
|
||||
|
||||
@ -465,28 +466,14 @@ class Informes
|
||||
foreach ($ventas as $venta) {
|
||||
$info = [];
|
||||
$info['Propietario'] = mb_strtoupper($venta->propietario()->nombreCompleto());
|
||||
$info['Departamento'] = trim(array_reduce($venta->propiedad()->departamentos(), function($carry, $item) {
|
||||
return implode(' - ', [$carry, $item->descripcion]);
|
||||
}), ' -');
|
||||
//$ests = [];
|
||||
$info['Departamento'] = implode(' - ', array_map(function($item) {
|
||||
return $item->descripcion;
|
||||
}, $venta->propiedad()->departamentos()));
|
||||
$es = $venta->propiedad()->estacionamientos();
|
||||
/*if (count($es) > 0) {
|
||||
foreach ($es as $e) {
|
||||
$ests []= $e->descripcion;
|
||||
}
|
||||
}
|
||||
$info['Estacionamientos'] = implode(', ', $ests);*/
|
||||
$info['Estacionamientos'] = implode(', ', array_map(function($item) {
|
||||
return $item->descripcion;
|
||||
}, $es));
|
||||
//$bods = [];
|
||||
$bs = $venta->propiedad()->bodegas();
|
||||
/*if (count($bs) > 0) {
|
||||
foreach ($bs as $b) {
|
||||
$bods []= $b->descripcion;
|
||||
}
|
||||
}
|
||||
$info['Bodegas'] = implode(', ', $bods);*/
|
||||
$info['Bodegas'] = implode(', ', array_map(function($item) {
|
||||
return $item->descripcion;
|
||||
}, $bs));
|
||||
@ -495,7 +482,7 @@ class Informes
|
||||
$info['Tipo'] = $venta->unidad()->abreviacion;
|
||||
$info['m² Ponderados'] = $venta->unidad()->m2('vendible');
|
||||
$info['Valor Promesa'] = $venta->valor_uf;
|
||||
$info['Pie'] = $venta->pie()->valor;
|
||||
$info['Pie'] = $venta->pie()->valor;
|
||||
$info['Pie Pagado'] = 0;
|
||||
$info['% Pie Pagado'] = 0;
|
||||
if ($venta->pie()) {
|
||||
@ -508,12 +495,6 @@ class Informes
|
||||
$info['Valor Operador'] = $venta->valorComision();
|
||||
//$promos = 0;
|
||||
$ps = $venta->promociones();
|
||||
/*if (count($ps) > 0) {
|
||||
foreach ($ps as $promo) {
|
||||
$promos += $promo->valor;
|
||||
}
|
||||
}
|
||||
$info['Premios'] = $promos;*/
|
||||
$info['Premios'] = array_reduce($ps, function($sum, $item) {
|
||||
return $sum + $item->valor;
|
||||
});
|
||||
@ -536,31 +517,17 @@ class Informes
|
||||
$info['UF/m²*'] = $venta->uf_m2();
|
||||
$info['Comision'] = $venta->valorFinal() * $comision;
|
||||
$info['Venta s/Comision'] = $venta->valorFinal() - $info['Comision'];
|
||||
$fecha = $venta->fecha();
|
||||
$info['Precio'] = 0;
|
||||
try {
|
||||
$info['Precio'] = array_reduce($venta->propiedad()->departamentos(), function($sum, $item) use ($fecha) {
|
||||
return $sum + $item->precio($fecha)->valor;
|
||||
});
|
||||
} catch (\Exception $e) {
|
||||
}
|
||||
|
||||
$data []= $info;
|
||||
}
|
||||
/*$informe->addData($data);
|
||||
|
||||
$totals = [
|
||||
'Propietario' => 'TOTAL',
|
||||
'Departamento' => 'count',
|
||||
'Estacionamientos' => 'count',
|
||||
'Bodegas' => 'count',
|
||||
'm² Ponderados' => 'sum',
|
||||
'Valor Promesa' => 'sum',
|
||||
'Bono Pie' => 'sum',
|
||||
'Subsidio' => 'sum',
|
||||
'Ahorro' => 'sum',
|
||||
'Credito' => 'sum',
|
||||
'Valor Operador' => 'sum',
|
||||
'Premios' => 'sum',
|
||||
'Valor Ests & Bods' => 'sum',
|
||||
'Valor Neto' => 'sum',
|
||||
'Comision' => 'sum'
|
||||
];
|
||||
$informe->addTotals($totals);
|
||||
|
||||
return $informe->informe();*/
|
||||
|
||||
$body = [
|
||||
"Proyecto" => $proyecto->descripcion,
|
||||
|
@ -163,53 +163,25 @@ class Ventas
|
||||
$unis = json_decode(post('unidades'));
|
||||
$id_principal = array_shift($unis);
|
||||
$principal = model(Unidad::class)->findOne(post('unidad' . $id_principal));
|
||||
$propiedad = model(Propiedad::class)
|
||||
->select('propiedad.*')
|
||||
->join('unidad', ['unidad.id', '=', 'propiedad.unidad_principal'])
|
||||
->where('propiedad.unidad_principal', $principal->id)
|
||||
->where('unidad.proyecto', post('proyecto'))
|
||||
->orderByDesc('propiedad.id')
|
||||
->findOne();
|
||||
// Revisar si existe la propiedad y si está vigente.
|
||||
if (!$propiedad or ($propiedad->venta() and $propiedad->venta()->estado() and $propiedad->venta()->estado()->tipo()->descripcion != 'vigente')) {
|
||||
if (!$propiedad) {
|
||||
$propiedad = model(Propiedad::class)->create();
|
||||
}
|
||||
$propiedad->unidad_principal = $principal->id;
|
||||
$propiedad->save();
|
||||
$propiedad = model(Propiedad::class)->create();
|
||||
$propiedad->unidad_principal = $principal->id;
|
||||
$propiedad->save();
|
||||
$data = [
|
||||
'propiedad' => $propiedad->id,
|
||||
'unidad' => $principal->id,
|
||||
'principal' => 1
|
||||
];
|
||||
$pu = model(PropiedadUnidad::class)->create($data);
|
||||
$pu->save();
|
||||
foreach ($unis as $id_unidad) {
|
||||
$data = [
|
||||
'propiedad' => $propiedad->id,
|
||||
'unidad' => $principal->id,
|
||||
'principal' => 1
|
||||
'unidad' => post('unidad' . $id_unidad),
|
||||
'principal' => 0
|
||||
];
|
||||
$pu = model(PropiedadUnidad::class)->create($data);
|
||||
$pu->save();
|
||||
foreach ($unis as $id_unidad) {
|
||||
$data = [
|
||||
'propiedad' => $propiedad->id,
|
||||
'unidad' => post('unidad' . $id_unidad),
|
||||
'principal' => 0
|
||||
];
|
||||
$pu = model(PropiedadUnidad::class)->create($data);
|
||||
$pu->save();
|
||||
}
|
||||
/*$ests = [];
|
||||
$bods = [];
|
||||
foreach ($unis as $id_unidad) {
|
||||
$unidad = model(Unidad::class)->findOne(post('unidad' . $id_unidad));
|
||||
if ($unidad->tipo == 2) {
|
||||
$ests []= $unidad->id;
|
||||
}
|
||||
if ($unidad->tipo == 3) {
|
||||
$bods []= $unidad->id;
|
||||
}
|
||||
}
|
||||
$propiedad->estacionamientos = implode(';', $ests);
|
||||
$propiedad->bodegas = implode(';', $bods);
|
||||
$propiedad->save();*/
|
||||
} elseif ($propiedad->venta() and $propiedad->venta()->estado()->tipo()->descripcion == 'vigente') {
|
||||
// Existe la propiedad en este proyecto y está vigente. Error, no se debiese vender si está vigente.
|
||||
throw new \Exception('Existe la propiedad en este proyecto y está vigente. Error, no se debiese vender si está vigente.');
|
||||
}
|
||||
|
||||
$venta = model(Venta::class)->create();
|
||||
|
@ -16,7 +16,7 @@ def format_data(data):
|
||||
df[col] = pd.to_numeric(df[col], errors='ignore')
|
||||
float_columns = ['Valor Promesa', 'Pie', 'Pie Pagado', '% Pie Pagado', 'Bono Pie', 'Valor Operador',
|
||||
'Premios', 'Subsidio', 'Ahorro', 'Credito', 'Valor Ests & Bods', 'Valor Neto',
|
||||
'UF/m²*', 'Comision', 'Venta s/Comision']
|
||||
'UF/m²*', 'Comision', 'Venta s/Comision', 'Precio']
|
||||
for col in float_columns:
|
||||
if col in df.columns:
|
||||
df[col] = pd.to_numeric(df[col], errors='coerce')
|
||||
@ -38,7 +38,7 @@ def format_columns(workbook, columns):
|
||||
|
||||
amount_columns = ['m² Ponderados', 'Valor Promesa', 'Pie', 'Pie Pagado', 'Bono Pie', 'Valor Operador', 'Premios',
|
||||
'Subsidio', 'Ahorro', 'Credito', 'Valor Ests & Bods', 'Valor Neto', 'UF/m²*', 'Comision',
|
||||
'Venta s/Comision']
|
||||
'Venta s/Comision', 'Precio']
|
||||
center_columns = ['Departamento', 'Estacionamientos', 'Bodegas']
|
||||
sum_columns = ['m² Ponderados', 'Valor Promesa', 'Pie', 'Pie Pagado', 'Bono Pie', 'Subsidio', 'Ahorro', 'Credito',
|
||||
'Valor Operador', 'Premios', 'Valor Ests & Bods', 'Valor Neto', 'Comision']
|
||||
@ -68,7 +68,7 @@ def format_excel(workbook, worksheet, data):
|
||||
|
||||
amount_columns = ['m² Ponderados', 'Valor Promesa', 'Pie', 'Pie Pagado', 'Bono Pie', 'Valor Operador', 'Premios',
|
||||
'Subsidio', 'Ahorro', 'Credito', 'Valor Ests & Bods', 'Valor Neto', 'UF/m²*', 'Comision',
|
||||
'Venta s/Comision']
|
||||
'Venta s/Comision', 'Precio']
|
||||
center_columns = ['Departamento', 'Estacionamientos', 'Bodegas']
|
||||
|
||||
for col in amount_columns:
|
||||
|
@ -131,7 +131,7 @@ class Proyecto extends Model
|
||||
$unidades['disponibles'] = (array) $this->unidades->disponibles;
|
||||
}
|
||||
}
|
||||
$q_s = "SELECT u.*
|
||||
/*$q_s = "SELECT u.*
|
||||
FROM
|
||||
(SELECT * FROM unidad WHERE proyecto = ? ORDER BY tipo) AS u
|
||||
LEFT JOIN
|
||||
@ -158,7 +158,18 @@ class Proyecto extends Model
|
||||
OR propiedad.bodegas LIKE CONCAT('%;', unidad.id)
|
||||
OR propiedad.bodegas LIKE CONCAT('%;', unidad.id, ';%')
|
||||
WHERE venta.estado = 1) AS b ON b.id = u.id
|
||||
WHERE v.id IS NULL AND e.id IS NULL AND b.id IS NULL";
|
||||
WHERE v.id IS NULL AND e.id IS NULL AND b.id IS NULL";*/
|
||||
$q_s = "SELECT u.*
|
||||
FROM
|
||||
(SELECT * FROM unidad WHERE proyecto = ? ORDER BY tipo) AS u
|
||||
LEFT JOIN (SELECT unidad.*
|
||||
FROM unidad
|
||||
JOIN propiedad_unidad pu ON pu.unidad = unidad.id
|
||||
JOIN venta ON venta.propiedad = pu.propiedad
|
||||
JOIN (SELECT e1.* FROM estado_venta e1
|
||||
JOIN (SELECT venta, MAX(id) AS id FROM estado_venta GROUP BY venta) e0 ON e0.id = e1.id) ev ON ev.venta = venta.id
|
||||
WHERE ev.estado = 1) AS v ON v.id = u.id
|
||||
WHERE v.id IS NULL";
|
||||
$q_p = " ORDER BY u.tipo, LPAD(u.descripcion, 4, '0')";
|
||||
switch (strtolower($id_tipo)) {
|
||||
case null:
|
||||
|
@ -8,7 +8,7 @@
|
||||
<div class="col-md-3">
|
||||
<select name="asociado" class="form-control">
|
||||
@foreach ($pie->venta()->propietario()->ventas() as $v)
|
||||
@if ($v->unidad()->id == $pie->venta()->unidad()->id)
|
||||
@if ($v->unidad()->id == $pie->venta()->unidad()->id or $v->pie == 0)
|
||||
@continue
|
||||
@endif
|
||||
<option value="{{$v->pie()->id}}">
|
||||
|
Reference in New Issue
Block a user