formulario direcciones presupuestos 2

This commit is contained in:
2023-12-18 19:44:53 +01:00
parent ad4f804dc1
commit 8154619bbb
3 changed files with 102 additions and 29 deletions

View File

@ -52,29 +52,42 @@ class Clientedirecciones extends \App\Controllers\GoBaseResourceController
{
if ($this->request->isAJAX()) {
$reqData = $this->request->getPost();
if (!isset($reqData['draw']) || !isset($reqData['columns'])) {
$errstr = 'No data available in response to this specific request.';
$response = $this->respond(Collection::datatable([], 0, 0, $errstr), 400, $errstr);
return $response;
$tipo = $reqData['tipo'] ?? 0;
if(is_null($tipo)){
if (!isset($reqData['draw']) || !isset($reqData['columns'])) {
$errstr = 'No data available in response to this specific request.';
$response = $this->respond(Collection::datatable([], 0, 0, $errstr), 400, $errstr);
return $response;
}
$start = $reqData['start'] ?? 0;
$length = $reqData['length'] ?? 5;
$search = $reqData['search']['value'];
$requestedOrder = $reqData['order']['0']['column'] ?? 1;
$order = ClienteDireccionesModel::SORTABLE[$requestedOrder >= 0 ? $requestedOrder : 1];
$dir = $reqData['order']['0']['dir'] ?? 'asc';
$id_C = $reqData['cliente_id'] ?? -1;
$resourceData = $this->model->getResource($search, $id_C)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
return $this->respond(Collection::datatable(
$resourceData,
$this->model->getResource()->countAllResults(),
$this->model->getResource("", $id_C)->countAllResults()
));
}
$start = $reqData['start'] ?? 0;
$length = $reqData['length'] ?? 5;
$search = $reqData['search']['value'];
$requestedOrder = $reqData['order']['0']['column'] ?? 1;
$order = ClienteDireccionesModel::SORTABLE[$requestedOrder >= 0 ? $requestedOrder : 1];
$dir = $reqData['order']['0']['dir'] ?? 'asc';
else{
$id = $reqData['id'] ?? -1;
$id_C = $reqData['cliente_id'] ?? -1;
$resourceData = $this->model->getDireccion($id);
$resourceData = $this->model->getResource($search, $id_C)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
return $this->respond(Collection::datatable(
$resourceData,
$this->model->getResource()->countAllResults(),
$this->model->getResource("", $id_C)->countAllResults()
));
return $resourceData;
}
} else {
return $this->failUnauthorized('Invalid request', 403);
}

View File

@ -127,6 +127,26 @@ class ClienteDireccionesModel extends \App\Models\GoBaseModel
->groupEnd();
}
public function getDireccion($id = -1)
{
$builder = $this->db
->table($this->table . " t1")
->select(
"t1.id AS id, t1.cliente_id AS cliente_id, t2.nombre as cliente_nombre, t1.att AS att, t1.alias AS alias,
t1.email AS email, t1.direccion AS direccion, t1.pais_id AS pais_id, t3.nombre AS pais,
t1.ccaa_id AS ccaa_id, t4.nombre AS ccaa_nombre,
t1.municipio AS municipio, t1.provincia AS provincia, t1.cp AS cp, t1.telefono AS telefono"
);
$builder->where('t1.id', $id);
$builder->join("clientes t2", "t1.cliente_id = t2.id", "left");
$builder->join("lg_paises t3", "t1.pais_id = t3.id", "left");
$builder->join("lg_comunidades_autonomas t4", "t1.ccaa_id = t4.id", "left");
return $builder->get()->getResultObject();
}
public function getMenuDirecciones($cliente_id=-1){
$builder =

View File

@ -25,19 +25,19 @@
<label for="add_att" class="form-label">
<?= lang('PresupuestosDirecciones.att') ?>*
</label>
<input type="text" id="add_att" tabindex="1" maxLength="100" class="form-control">
<input type="text" id="add_att" tabindex="1" maxLength="100" class="form-control new-address">
</div><!--//.mb-3 -->
<div class="mb-3">
<label for="add_email" class="form-label">
<?= lang('PresupuestosDirecciones.email') ?>*
</label>
<input type="text" id="add_email" tabindex="2" maxLength="100" class="form-control">
<input type="text" id="add_email" tabindex="2" maxLength="100" class="form-control new-address">
</div><!--//.mb-3 -->
<div class="mb-3">
<label for="add_direccion" class="form-label">
<?= lang('PresupuestosDirecciones.direccion') ?>*
</label>
<input type="text" id="add_direccion" tabindex="3" maxLength="255" class="form-control">
<input type="text" id="add_direccion" tabindex="3" maxLength="255" class="form-control new-address">
</div><!--//.mb-3 -->
<div class='row'>
@ -47,7 +47,7 @@
<label for="add_pais_id" class="form-label">
<?=lang('PresupuestosDirecciones.pais') ?>*
</label>
<select id="add_pais_id" tabindex="4" class="form-control select2bs" style="width: 100%;" >
<select id="add_pais_id" tabindex="4" class="form-control select2bs new-address" style="width: 100%;" >
<option value="" disabled selected><?=lang('PresupuestosDirecciones.selectPais') ?></option>
<?php foreach ($paisList as $item) : ?>
<option value="<?=$item->id ?>">
@ -63,7 +63,7 @@
<label for="add_ccaa" class="form-label">
<?=lang('PresupuestosDirecciones.ccaa') ?>*
</label>
<select id="add_ccaa" tabindex="5" class="form-control select2bs" style="width: 100%;" >
<select id="add_ccaa" tabindex="5" class="form-control select2bs new-address" style="width: 100%;" >
<option value="" disabled selected><?=lang('PresupuestosDirecciones.selectCcaa') ?></option>
<?php foreach ($ccaaList as $item) : ?>
<option value="<?=$item->id ?>">
@ -83,7 +83,7 @@
<label for="add_municipio" class="form-label">
<?=lang('PresupuestosDirecciones.municipio') ?>*
</label>
<input type="text" id="add_municipio" tabindex="6" maxLength="100" class="form-control">
<input type="text" id="add_municipio" tabindex="6" maxLength="100" class="form-control new-address">
</div><!--//.mb-3 -->
</div>
@ -92,7 +92,7 @@
<label for="add_provincia" class="form-label">
<?=lang('PresupuestosDirecciones.provincia') ?>*
</label>
<input type="text" id="add_provincia" tabindex="7" maxLength="100" class="form-control">
<input type="text" id="add_provincia" tabindex="7" maxLength="100" class="form-control new-address">
</div><!--//.mb-3 -->
</div>
@ -105,7 +105,7 @@
<label for="add_cp" class="form-label">
<?=lang('PresupuestosDirecciones.cp') ?>*
</label>
<input type="text" id="add_cp" tabindex="8" maxLength="100" class="form-control">
<input type="text" id="add_cp" tabindex="8" maxLength="100" class="form-control new-address">
</div><!--//.mb-3 -->
</div>
@ -114,7 +114,7 @@
<label for="add_telefono" class="form-label">
<?=lang('PresupuestosDirecciones.telefono') ?>*
</label>
<input type="text" id="add_telefono" tabindex="9" maxLength="100" class="form-control"></input>
<input type="text" id="add_telefono" tabindex="9" maxLength="100" class="form-control new-address"></input>
</div><!--//.mb-3 -->
</div>
@ -177,6 +177,46 @@ $('#add_clientedAdd').select2({
}
})
$('#add_clientedAdd').on('select2:select', function (e) {
var data = e.params.data;
$.ajax({
type: "POST",
url: '<?=route_to('dataTableOfClienteDirecciones') ?>',
data: function (params) {
return {
id: data.id,
<?= csrf_token() ?? "token" ?> : <?= csrf_token() ?>v
};
},
success: function (data) {
console.log(data)
/*data.values.forEach((row) => {
tableServiciosAcabado.row.add([
row.tarifa_id,
row.tarifa_nombre,
'<span id="precio_unidad_acabado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_acabado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="acabado_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + row.tarifa_id +'"></i></a>'
]).draw(false)
});
yeniden(data.<?= csrf_token() ?>);
*/
return true;
},
error: function(e){
return false;
}
})
return false;
});
$('.new-address').on('change', function(){
$('#add_clientedAdd').val(null).trigger('change');
})
$('#add_pais_id').on('change', function(){
var nombre_pais = $("#add_pais_id option:selected" ).text().trim();