Para hacer uso de la carta porte necesitaremos extender los campos de la tabla vehículos ya que vamos a necesitar los siguientes campos nuevos

  • permSCT
  • numPermisoSCT
  • configVehicular
  • pesoBrutoVehicular
  • anioModelo
  • aseguraRespCivil
  • polizaRespCivil

Primero creamos el archivo de migración con el siguiente comando

php spark migrate:create camposUbicacionesCartaPorte

Dentro del archivo creado metemos el siguiente código

<?php

namespace App\Database\Migrations;

use CodeIgniter\Database\Migration;

class CamposUbicacionesCartaPorte extends Migration {

    public function up() {

        $campos = [
            'permSCT' => [
                'type' => 'varchar',
                'constraint' => 64,
                'null' => true,
            ],
            'numPermisoSCT' => [
                'type' => 'varchar',
                'constraint' => 64,
                'null' => true,
            ],
            'configVehicular' => [
                'type' => 'varchar',
                'constraint' => 256,
                'null' => true,
            ],
            'pesoBrutoVehicular' => [
                'type' => 'varchar',
                'constraint' => 16,
                'null' => true,
            ],
            'anioModelo' => [
                'type' => 'varchar',
                'constraint' => 8,
                'null' => true,
            ],
            'aseguraRespCivil' => [
                'type' => 'varchar',
                'constraint' => 8,
                'null' => true,
            ],
            'polizaRespCivil' => [
                'type' => 'varchar',
                'constraint' => 256,
                'null' => true,
            ],
        ];

        $this->forge->addColumn('ubicaciones', $campos);
    }

    public function down() {
        
    }

}

Modificamos App/Models/VehiculosModels.php para los nuevos campos, quedaría de la siguiente forma

<?php

namespace App\Models;

use CodeIgniter\Model;

class VehiculosModel extends Model {

    protected $table = 'vehiculos';
    protected $primaryKey = 'id';
    protected $useAutoIncrement = true;
    protected $returnType = 'array';
    protected $useSoftDeletes = true;
    protected $allowedFields = ['id'
        , 'idEmpresa'
        , 'idTipoVehiculo'
        , 'descripcion'
        , 'placas'
        , 'permSCT'
        , 'numPermisoSCT'
        , 'configVehicular'
        , 'pesoBrutoVehicular'
        , 'anioModelo'
        , 'aseguraRespCivil'
        , 'polizaRespCivil'
        , 'created_at'
        , 'updated_at'
        , 'deleted_at'];
    protected $useTimestamps = true;
    protected $createdField = 'created_at';
    protected $deletedField = 'deleted_at';
    protected $validationRules = [
    ];
    protected $validationMessages = [];
    protected $skipValidation = false;

    public function mdlGetVehiculos($idEmpresas) {

        $result = $this->db->table('vehiculos a, empresas b, tipovehiculo c')
                ->select('a.id
                         ,b.nombre as nombreEmpresa
                         ,a.idEmpresa
                         ,a.idTipoVehiculo
                         ,c.codigo as codigoTipo
                         ,c.descripcion as descripcionTipo
                         ,a.descripcion
                         ,a.placas
                         ,a.permSCT
                         ,a.numPermisoSCT
                         ,a.configVehicular
                         ,a.pesoBrutoVehicular
                         ,a.anioModelo
                         ,a.aseguraRespCivil
                         ,a.polizaRespCivil
                         ,a.created_at
                         ,a.updated_at
                         ,a.deleted_at 
                         ,b.nombre as nombreEmpresa')
                ->where('a.idEmpresa', 'b.id', FALSE)
                ->where('a.idTipoVehiculo', 'c.id', FALSE)
                ->whereIn('a.idEmpresa', $idEmpresas);

        return $result;
    }

}

En App/Controllers/VehiculosController.php no se le hizo ningún cambio

En el archivo principal de la vista App/Views/vehiculos.php quedaria de la siguiente forma.

<?= $this->include('julio101290\boilerplate\Views\load\select2') ?>
<?= $this->include('julio101290\boilerplate\Views\load\datatables') ?>
<?= $this->include('julio101290\boilerplate\Views\load\nestable') ?>
<!-- Extend from layout index -->
<?= $this->extend('julio101290\boilerplate\Views\layout\index') ?>

<!-- Section content -->
<?= $this->section('content') ?>

<?= $this->include('modulesVehiculos/modalCaptureVehiculos') ?>

<!-- SELECT2 EXAMPLE -->
<div class="card card-default">
    <div class="card-header">
        <div class="float-right">
            <div class="btn-group">

                <button class="btn btn-primary btnAddVehiculos" data-toggle="modal" data-target="#modalAddVehiculos"><i class="fa fa-plus"></i>

                    <?= lang('vehiculos.add') ?>

                </button>

            </div>
        </div>
    </div>
    <div class="card-body">
        <div class="row">
            <div class="col-md-12">
                <div class="table-responsive">
                    <table id="tableVehiculos" class="table table-striped table-hover va-middle tableVehiculos">
                        <thead>
                            <tr>

                                <th>#</th>
                                <th><?= lang('vehiculos.fields.idEmpresa') ?></th>
                                <th><?= lang('vehiculos.fields.idTipoVehiculo') ?></th>
                                <th><?= lang('vehiculos.fields.descripcion') ?></th>
                                <th><?= lang('vehiculos.fields.placas') ?></th>
                                <th><?= lang('vehiculos.fields.created_at') ?></th>
                                <th><?= lang('vehiculos.fields.updated_at') ?></th>
                                <th><?= lang('vehiculos.fields.deleted_at') ?></th>

                                <th><?= lang('vehiculos.fields.actions') ?> </th>

                            </tr>
                        </thead>
                        <tbody>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- /.card -->

<?= $this->endSection() ?>


<?= $this->section('js') ?>
<script>

    /**
     * Cargamos la tabla
     */

    var tableVehiculos = $('#tableVehiculos').DataTable({
        processing: true,
        serverSide: true,
        responsive: true,
        autoWidth: false,
        order: [[1, 'asc']],

        ajax: {
            url: '<?= base_url('admin/vehiculos') ?>',
            method: 'GET',
            dataType: "json"
        },
        columnDefs: [{
                orderable: false,
                targets: [8],
                searchable: false,
                targets: [8]

            }],
        columns: [{
                'data': 'id'
            },

            {
                'data': 'nombreEmpresa'
            },

            {
                'data': 'descripcionTipo'
            },

            {
                'data': 'descripcion'
            },

            {
                'data': 'placas'
            },

            {
                'data': 'created_at'
            },

            {
                'data': 'updated_at'
            },

            {
                'data': 'deleted_at'
            },

            {
                "data": function (data) {
                    return `<td class="text-right py-0 align-middle">
                         <div class="btn-group btn-group-sm">
                             <button class="btn btn-warning btnEditVehiculos" data-toggle="modal" idVehiculos="${data.id}" data-target="#modalAddVehiculos">  <i class=" fa fa-edit"></i></button>
                             <button class="btn btn-danger btn-delete" data-id="${data.id}"><i class="fas fa-trash"></i></button>
                         </div>
                         </td>`
                }
            }
        ]
    });



    $(document).on('click', '#btnSaveVehiculos', function (e) {


        var idVehiculos = $("#idVehiculos").val();
        var idEmpresa = $("#idEmpresaVehiculos").val();
        var idTipoVehiculo = $("#idTipoVehiculo").val();
        var descripcion = $("#descripcion").val();
        var placas = $("#placas").val();

        var permisoSCT = $("#permisoSCT").val();
        var numPermisoSCT = $("#numPermisoSCT").val();
        var configVehicular = $("#configVehicular").val();
        var pesoBrutoVehicular = $("#pesoBrutoVehicular").val();
        var anioModelo = $("#anioModelo").val();
        var aseguraRespCivil = $("#aseguraRespCivil").val();
        var polizaRespCivil = $("#polizaRespCivil").val();



        if (idEmpresa == 0 || idEmpresa == null) {

            Toast.fire({
                icon: 'error',
                title: "Tiene que seleccionar la empresa"
            });
            return;
        }

        if (idTipoVehiculo == 0 || idTipoVehiculo == null) {

            Toast.fire({
                icon: 'error',
                title: "Tiene que seleccionar el tipo de vehiculo"
            });
            return;
        }



        $("#btnSaveVehiculos").attr("disabled", true);

        var datos = new FormData();
        datos.append("idVehiculos", idVehiculos);
        datos.append("idEmpresa", idEmpresa);
        datos.append("idTipoVehiculo", idTipoVehiculo);
        datos.append("descripcion", descripcion);
        datos.append("placas", placas);

        datos.append("permSCT", permisoSCT);
        datos.append("numPermisoSCT", numPermisoSCT);
        datos.append("configVehicular", configVehicular);
        datos.append("pesoBrutoVehicular", pesoBrutoVehicular);
        datos.append("anioModelo", anioModelo);
        datos.append("aseguraRespCivil", aseguraRespCivil);
        datos.append("polizaRespCivil", polizaRespCivil);


        $.ajax({

            url: "<?= base_url('admin/vehiculos/save') ?>",
            method: "POST",
            data: datos,
            cache: false,
            contentType: false,
            processData: false,
            success: function (respuesta) {
                if (respuesta.match(/Correctamente.*/)) {

                    Toast.fire({
                        icon: 'success',
                        title: "Guardado Correctamente"
                    });

                    tableVehiculos.ajax.reload();
                    $("#btnSaveVehiculos").removeAttr("disabled");


                    $('#modalAddVehiculos').modal('hide');
                } else {

                    Toast.fire({
                        icon: 'error',
                        title: respuesta
                    });

                    $("#btnSaveVehiculos").removeAttr("disabled");


                }

            }

        }

        )

    });



    /**
     * Carga datos actualizar
     */


    /*=============================================
     EDITAR Vehiculos
     =============================================*/
    $(".tableVehiculos").on("click", ".btnEditVehiculos", function () {

        var idVehiculos = $(this).attr("idVehiculos");

        var datos = new FormData();
        datos.append("idVehiculos", idVehiculos);

        $.ajax({

            url: "<?= base_url('admin/vehiculos/getVehiculos') ?>",
            method: "POST",
            data: datos,
            cache: false,
            contentType: false,
            processData: false,
            dataType: "json",
            success: function (respuesta) {
                $("#idVehiculos").val(respuesta["id"]);

                $("#idEmpresaVehiculos").val(respuesta["idEmpresa"]);
                $("#idEmpresaVehiculos").trigger("change");
                $("#idTipoVehiculo").val(respuesta["idTipoVehiculo"]);
                $("#idTipoVehiculo").trigger("change");
                $("#descripcion").val(respuesta["descripcion"]);
                $("#placas").val(respuesta["placas"]);

                var newOption = new Option(respuesta["idTipoVehiculo"] + ' ' + respuesta["descripcionTipo"], respuesta["idTipoVehiculo"], true, true);
                $('#idTipoVehiculo').append(newOption).trigger('change');
                $("#idTipoVehiculo").val(respuesta["idTipoVehiculo"]);

                $("#permisoSCT").val(respuesta["permSCT"]);
                $("#permisoSCT").trigger("change");
                $("#numPermisoSCT").val(respuesta["numPermisoSCT"]);
                $("#configVehicular").val(respuesta["configVehicular"]);
                $("#pesoBrutoVehicular").val(respuesta["pesoBrutoVehicular"]);
                $("#anioModelo").val(respuesta["anioModelo"]);
                $("#aseguraRespCivil").val(respuesta["aseguraRespCivil"]);
                $("#polizaRespCivil").val(respuesta["polizaRespCivil"]);


            }

        })

    })


    /*=============================================
     ELIMINAR vehiculos
     =============================================*/
    $(".tableVehiculos").on("click", ".btn-delete", function () {

        var idVehiculos = $(this).attr("data-id");

        Swal.fire({
            title: '<?= lang('boilerplate.global.sweet.title') ?>',
            text: "<?= lang('boilerplate.global.sweet.text') ?>",
            icon: 'warning',
            showCancelButton: true,
            confirmButtonColor: '#3085d6',
            cancelButtonColor: '#d33',
            confirmButtonText: '<?= lang('boilerplate.global.sweet.confirm_delete') ?>'
        })
                .then((result) => {
                    if (result.value) {
                        $.ajax({
                            url: `<?= base_url('admin/vehiculos') ?>/` + idVehiculos,
                            method: 'DELETE',
                        }).done((data, textStatus, jqXHR) => {
                            Toast.fire({
                                icon: 'success',
                                title: jqXHR.statusText,
                            });


                            tableVehiculos.ajax.reload();
                        }).fail((error) => {
                            Toast.fire({
                                icon: 'error',
                                title: error.responseJSON.messages.error,
                            });
                        })
                    }
                })
    })

    $(function () {
        $("#modalAddVehiculos").draggable();

    });



    $("#idTipoVehiculo").select2({
        ajax: {
            url: "<?= site_url('admin/vehiculos/getTipoVehiculoAjax') ?>",
            type: "post",
            dataType: 'json',
            delay: 250,
            data: function (params) {
                // CSRF Hash
                var csrfName = $('.txt_csrfname').attr('name'); // CSRF Token name
                var csrfHash = $('.txt_csrfname').val(); // CSRF hash
                var idEmpresa = $('.idEmpresaVehiculos').val(); // CSRF hash

                return {
                    searchTerm: params.term, // search term
                    [csrfName]: csrfHash, // CSRF Token
                    idEmpresa: idEmpresa // search term
                };
            },
            processResults: function (response) {

                // Update CSRF Token
                $('.txt_csrfname').val(response.token);
                return {
                    results: response.data
                };
            },
            cache: true
        }
    });


</script>
<?= $this->endSection() ?>
        

El modal lo dividimos entre 3 archivo por que agregamos TABS “Pestañas” el archivo App/Views/modulesVehiculos/modalCaptureVehiculos.php quedaria con el siguiente código

<!-- Modal Vehiculos -->
<div class="modal fade" id="modalAddVehiculos" tabindex="-1" role="dialog" aria-labelledby="modalAddVehiculos" aria-hidden="true">
    <div class="modal-dialog modal-lg" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title"><?= lang('vehiculos.createEdit') ?></h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">


                <ul class="nav nav-tabs" id="myTab" role="tablist">
                    <li class="nav-item" role="presentation">
                        <button class="nav-link active" id="home-tab" data-toggle="tab" data-target="#generales" type="button" role="tab" aria-controls="home" aria-selected="true">Generales</button>
                    </li>
                    <li class="nav-item" role="presentation">
                        <button class="nav-link" id="profile-tab" data-toggle="tab" data-target="#cartaPorte" type="button" role="tab" aria-controls="profile" aria-selected="false">Datos Carta Porte</button>
                    </li>

                </ul>


                <form id="form-vehiculos" class="form-horizontal">
                    <input type="hidden" id="idVehiculos" name="idVehiculos" value="0">

                    <div class="tab-content" id="myTabContent">


                        <div class="tab-pane fade show active" id="generales" role="tabpanel" aria-labelledby="generales">

                            <?= $this->include('modulesVehiculos/datosGenerales') ?>

                        </div>

                        <div class="tab-pane fade" id="cartaPorte" role="tabpanel" aria-labelledby="datosFacturacion">

                            <?= $this->include('modulesVehiculos/datosCartaPorte') ?>

                        </div>

                    </div>

                </form>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary btn-sm" data-dismiss="modal"><?= lang('boilerplate.global.close') ?></button>
                <button type="button" class="btn btn-primary btn-sm" id="btnSaveVehiculos"><?= lang('boilerplate.global.save') ?></button>
            </div>
        </div>
    </div>
</div>

<?= $this->section('js') ?>


<script>

    $(document).on('click', '.btnAddVehiculos', function (e) {




        $("#idVehiculos").val("0");

        $("#idEmpresaVehiculos").val("0");

        $(".datosVehiculos").val("");

        $("#idEmpresaVehiculos").trigger("change");


        $("#idTipoVehiculo").val("0");

        $("#idTipoVehiculo").trigger("change");


        $("#btnSaveVehiculos").removeAttr("disabled");

    });

    /* 
     * AL hacer click al editar
     */



    $(document).on('click', '.btnEditVehiculos', function (e) {


        var idVehiculos = $(this).attr("idVehiculos");

        //LIMPIAMOS CONTROLES
        $(".form-control").val("");

        $("#idVehiculos").val(idVehiculos);
        $("#btnGuardarVehiculos").removeAttr("disabled");

    });



    $("#idEmpresaVehiculos").select2();
    $("#permisoSCT").select2();
    $("#configVehicular").select2();

</script>


<?= $this->endSection() ?>
        

El código App/Views/modulesVehiculos/datosGenerales.php quedaría con el siguiente código

<p>
<h3>Datos Generales</h3>
<div class="form-group row">
    <label for="idEmpresa" class="col-sm-2 col-form-label">Empresa</label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>

            <select class="form-control idEmpresaVehiculos form-controlVehiculos" name="idEmpresaVehiculos" id="idEmpresaVehiculos" style="width:80%;">
                <option value="0">Seleccione empresa</option>
                <?php
                foreach ($empresas as $key => $value) {

                    echo "<option value='$value[id]'>$value[id] - $value[nombre] </option>  ";
                }
                ?>

            </select>

        </div>
    </div>
</div>
<div class="form-group row">
    <label for="idEmpresa" class="col-sm-2 col-form-label">Tipo Vehiculo</label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>

            <select class="form-control idTipoVehiculo form-controlVehiculos " name="idTipoVehiculo" id="idTipoVehiculo" style="width:80%;">
                <option value="0">Seleccione tipo Vehiculo</option>


            </select>

        </div>
    </div>
</div>
<div class="form-group row">
    <label for="descripcion" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.descripcion') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="descripcion" id="descripcion" class="form-control datosVehiculos <?= session('error.descripcion') ? 'is-invalid' : '' ?>" value="<?= old('descripcion') ?>" placeholder="<?= lang('vehiculos.fields.descripcion') ?>" autocomplete="off">
        </div>
    </div>
</div>
<div class="form-group row">
    <label for="placas" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.placas') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="placas" id="placas" class="form-control datosVehiculos <?= session('error.placas') ? 'is-invalid' : '' ?>" value="<?= old('placas') ?>" placeholder="<?= lang('vehiculos.fields.placas') ?>" autocomplete="off">
        </div>
    </div>
</div>


</p>

El archivo App/Views/modulesVehiculos/datosCartaPorte.php quedaría con el siguiente código

<p>
<h3>Datos Carta Porte</h3>


<div class="form-group row">
    <label for="permisoSCT" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.permisoSCT') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>

            <select class="form-control permisoSCT form-controlVehiculos " name="permisoSCT" id="permisoSCT" style="width:80%;">
                <option value="0">Seleccione tipo permiso</option>

                <option value="TPAF01">TPAF01 - Autotransporte Federal de carga general</option>
                <option value="TPAF02">TPAF02 - Transporte privado de carga</option>
                <option value="TPAF03">TPAF03 - Autotransporte Federal de Carga Especializada de materiales y residuos peligrosos</option>
                <option value="TPAF04">TPAF04 - Transporte de automóviles sin rodar en vehículo tipo góndola</option>
                <option value="TPAF05">TPAF05 - Transporte de carga de gran peso y/o volumen de hasta 90 toneladas</option>
                <option value="TPAF06">TPAF06 - Transporte de carga especializada de gran peso y/o volumen de más 90 toneladas</option>
                <option value="TPAF07">TPAF07 - Transporte Privado de materiales y residuos peligrosos</option>
                <option value="TPAF08">TPAF08 - Autotransporte internacional de carga de largo recorrido</option>
                <option value="TPAF09">TPAF09 - Autotransporte internacional de carga especializada de materiales y residuos peligrosos de largo recorrido</option>
                <option value="TPAF10">TPAF10 - Autotransporte Federal de Carga General cuyo ámbito de aplicación comprende la franja fronteriza con Estados Unidos</option>
                <option value="TPAF11">TPAF11 - Autotransporte Federal de Carga Especializada cuyo ámbito de aplicación comprende la franja fronteriza con Estados Unidos</option>
                <option value="TPAF12">TPAF12 - Servicio auxiliar de arrastre en las vías generales de comunicación</option>
                <option value="TPAF13">TPAF13 - Servicio auxiliar de servicios de arrastre, arrastre y salvamento, y depósito de vehículos en las vías generales de comunicación</option>
                <option value="TPAF14">TPAF14 - Servicio de paquetería y mensajería en las vías generales de comunicación</option>
                <option value="TPAF15">TPAF15 - Transporte especial para el tránsito de grúas industriales con peso máximo de 90 toneladas</option>
                <option value="TPAF16">TPAF16 - Servicio federal para empresas arrendadoras servicio público federal</option>
                <option value="TPAF17">TPAF17 - Empresas trasladistas de vehículos nuevos</option>
                <option value="TPAF18">TPAF18 - Empresas fabricantes o distribuidoras de vehículos nuevos</option>
                <option value="TPAF19">TPAF19 - Autorización expresa para circular en los caminos y puentes de jurisdicción federal con configuraciones de tractocamión doblemente articulado</option>
                <option value="TPAF20">TPAF20 - Autotransporte Federal de Carga Especializada de fondos y valores</option>
                <option value="TPTM01">TPTM01 - Permiso temporal para navegación de cabotaje</option>
                <option value="TPTA01">TPTA01 - Concesión y/o autorización para el servicio regular nacional y/o internacional para empresas mexicanas</option>
                <option value="TPTA02">TPTA02 - Permiso para el servicio aéreo regular de empresas extranjeras</option>
                <option value="TPTA03">TPTA03 - Permiso para el servicio nacional e internacional no regular de fletamento</option>
                <option value="TPTA04">TPTA04 - Permiso para el servicio nacional e internacional no regular de taxi aéreo</option>
                <option value="TPXX00">TPXX00 - Permiso no contemplado en el catálogo</option>
            </select>

        </div>
    </div>
</div>

<div class="form-group row">
    <label for="numPermisoSCT" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.numPermisoSCT') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="numPermisoSCT" id="numPermisoSCT" class="form-control datosVehiculos <?= session('error.numPermisoSCT') ? 'is-invalid' : '' ?>" value="<?= old('numPermisoSCT') ?>" placeholder="<?= lang('vehiculos.fields.numPermisoSCT') ?>" autocomplete="off">
        </div>
    </div>
</div>

<div class="form-group row">
    <label for="configVehicular" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.configVehicular') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>

            <select class="form-control configVehicular form-controlVehiculos " name="configVehicular" id="configVehicular" style="width:80%;">
                <option value="0">Seleccione Configuracion Vehicular</option>
                <option value="VL">VL - Vehículo ligero de carga</option>
                <option value="C2">C2 - Camión Unitario</option>
                <option value="C3">C3 - Camión Unitario</option>
                <option value="C2R2">C2R2 - Camión-Remolque</option>
                <option value="C3R2">C3R2 - Camión-Remolque</option>
                <option value="C2R3">C2R3 - Camión-Remolque</option>
                <option value="C3R3">C3R3 - Camión-Remolque</option>
                <option value="T2S1">T2S1 - Tractocamión Articulado</option>
                <option value="T2S2">T2S2 - Tractocamión Articulado</option>
                <option value="T2S3">T2S3 - Tractocamión Articulado</option>
                <option value="T3S1">T3S1 - Tractocamión Articulado</option>
                <option value="T3S2">T3S2 - Tractocamión Articulado</option>
                <option value="T3S3">T3S3 - Tractocamión Articulado</option>
                <option value="T2S1R2">T2S1R2 - Tractocamión Semirremolque-Remolque</option>
                <option value="T2S2R2">T2S2R2 - Tractocamión Semirremolque-Remolque</option>
                <option value="T2S1R3">T2S1R3 - Tractocamión Semirremolque-Remolque</option>
                <option value="T3S1R2">T3S1R2 - Tractocamión Semirremolque-Remolque</option>
                <option value="T3S1R3">T3S1R3 - Tractocamión Semirremolque-Remolque</option>
                <option value="T3S2R2">T3S2R2 - Tractocamión Semirremolque-Remolque</option>
                <option value="T3S2R3">T3S2R3 - Tractocamión Semirremolque-Remolque</option>
                <option value="T3S2R4">T3S2R4 - Tractocamión Semirremolque-Remolque</option>
                <option value="T2S2S2">T2S2S2 - Tractocamión Semirremolque-Semirremolque</option>
                <option value="OTROEVGP">OTROEVGP - Especializado de carga Voluminosa y/o Gran Peso</option>
                <option value="OTROSG">OTROSG - Servicio de Grúas</option>
                <option value="GPLUTA">GPLUTA - Grúa de Pluma Tipo A</option>
                <option value="GPLUTB">GPLUTB - Grúa de Pluma Tipo B</option>
                <option value="GPLUTC">GPLUTC - Grúa de Pluma Tipo C</option>
                <option value="GPLUTD">GPLUTD - Grúa de Pluma Tipo D</option>
                <option value="GPLATA">GPLATA - Grúa de Plataforma Tipo A</option>
                <option value="GPLATB">GPLATB - Grúa de Plataforma Tipo B</option>
                <option value="GPLATC">GPLATC - Grúa de Plataforma Tipo C</option>
                <option value="GPLATD">GPLATD - Grúa de Plataforma Tipo D</option>

            </select>
        </div>
    </div>
</div>

<div class="form-group row">
    <label for="pesoBrutoVehicular" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.pesoBrutoVehicular') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="pesoBrutoVehicular" id="pesoBrutoVehicular" class="form-control datosVehiculos <?= session('error.pesoBrutoVehicular') ? 'is-invalid' : '' ?>" value="<?= old('pesoBrutoVehicular') ?>" placeholder="<?= lang('vehiculos.fields.pesoBrutoVehicular') ?>" autocomplete="off">
        </div>
    </div>
</div>

<div class="form-group row">
    <label for="anioModelo" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.anioModelo') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="anioModelo" id="anioModelo" class="form-control datosVehiculos <?= session('error.anioModelo') ? 'is-invalid' : '' ?> anioModelo" value="<?= old('anioModelo') ?>" placeholder="<?= lang('vehiculos.fields.anioModelo') ?>" autocomplete="off">
        </div>
    </div>
</div>

<div class="form-group row">
    <label for="aseguraRespCivil" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.aseguraRespCivil') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="aseguraRespCivil" id="aseguraRespCivil" class="form-control datosVehiculos <?= session('error.aseguraRespCivil') ? 'is-invalid' : '' ?>" value="<?= old('aseguraRespCivil') ?>" placeholder="<?= lang('vehiculos.fields.aseguraRespCivil') ?>" autocomplete="off">
        </div>
    </div>
</div>

<div class="form-group row">
    <label for="polizaRespCivil" class="col-sm-2 col-form-label"><?= lang('vehiculos.fields.polizaRespCivil') ?></label>
    <div class="col-sm-10">
        <div class="input-group">
            <div class="input-group-prepend">
                <span class="input-group-text"><i class="fas fa-pencil-alt"></i></span>
            </div>
            <input type="text" name="polizaRespCivil" id="polizaRespCivil" class="form-control datosVehiculos <?= session('error.polizaRespCivil') ? 'is-invalid' : '' ?>" value="<?= old('polizaRespCivil') ?> polizaRespCivil" placeholder="<?= lang('vehiculos.fields.polizaRespCivil') ?>" autocomplete="off">
        </div>
    </div>
</div>

</p>

Y listo ya es posible capturar los datos de vehículo para la carta porte