@extends('tema.plantilla')

{{-- {} Título --}}
@section('titulo', 'Registros de Suplidores')

{{-- {} Ajustes, propiedades y estilos --}}
@section('cabeza')

{{-- ! --}}
@parent

{{-- ! Select 2 v4.1.0 --}}
<link rel="stylesheet" href="{{ asset('archivos/librerias/select2/v4.1.0/css/select2.min.css') }}">

{{-- ! Data Tables v1.13.2 --}}
@include('librerias.datatables.css')

{{-- ! --}}
<link
  rel="stylesheet"
  href="{{ asset('archivos/css/aplicacion/seccion/registros/suplidores.css') }}"
>

@endsection

{{-- {} Encabezado de la sección --}}
@section('encabezado')

@component('aplicacion.elementos.boton', [
  'tipo' => 'submit',
  'id' => 'botonGuardar',
  'atributos' => '
    form=formularioSuplidor
    formmethod=POST
    formaction=' . route('ejecutar') . '?0=0&procedimiento=p_registrar_suplidores
  '
])
  Guardar
@endcomponent

@component('aplicacion.elementos.boton', [
  'id' => 'botonLimpiar',
  'clases' => 'btn btn-warning',
  'atributos' => '
    form=formularioSuplidor
    data-accion=limpiar
  '
])
  Limpiar
@endcomponent

@endsection

{{-- {} Contenido de la sección --}}
@section('seccion')

<form class="form" id="formularioSuplidor" autocomplete="off">

	@csrf

	<input type="text" id="id_entidad" name="id_entidad" hidden>

	<div class="row">

		@component('aplicacion.elementos.grupo.campos')

			@component('aplicacion.elementos.campo.etiqueta', [
				'id' => 'id_suplidor',
				'mascara' => ['tipo' => 'entero'],
				'titulo' => 'Suplidor'
			])
			@endcomponent

			@component('aplicacion.elementos.campo', [
				'id' => 'suplidor',
				'clases' => '
					input-group-text
					col-9 col-sm-8 col-md-10 col-lg-11 col-xl-11 col-xxl-10
					text-start
				',
				'atributos' => 'disabled'
			])
			@endcomponent

			@component('aplicacion.elementos.boton', [
				'atributos' => '
					data-bs-toggle=modal
					data-bs-target=#ventanaEmergenteConsulta
					data-peticion-tabla=suplidores
					data-peticion-campo=suplidor
					data-ventana-emergente-titulo=Suplidores
				'
			])
				<i class="fa-solid fa-magnifying-glass"></i>
			@endcomponent

		@endcomponent

		<div class="list-group list-group-horizontal text-center" role="tablist">

			<a class="list-group-item list-group-item-action list-group-item-tertiary-opposite active" data-bs-toggle="list" href="#datosPersonales" role="tab" aria-selected="true">Datos</a>

		</div>

		<div class="tab-content">

			<div class="tab-pane active show" id="datosPersonales" role="tabpanel">
				<div class="row">

					<div class="col-12 col-sm-6 col-md-4 col-lg-5 col-xl-5 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'primer_nombre',
							'atributos' => 'maxlength=100',
							'titulo' => 'Nombre'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-2 col-md-2 col-lg-1 col-xl-1 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'referencia',
							'atributos' => 'maxlength=30',
							'titulo' => 'Referencia'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-4 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'identificacion',
							'mascara' => ['tipo' => 'cedula'],
							'titulo' => 'Identificación'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'select',
							'id' => 'id_genero',
							'atributos' => 'data-peticion-tabla=generos',
							'titulo' => 'Género'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'date',
							'id' => 'fecha_ingreso',
							'valor' => $fecha->valor,
							'atributos' => '
								min=' . $fecha->minima . '
								max=' . $fecha->maxima,
							'titulo' => 'Fecha de Ingreso'
						])
						@endcomponent
					</div>

					<div class="col-12 col-sm-6 col-md-6 col-lg-6 col-xl-6 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'contacto',
							'atributos' => 'maxlength=250',
							'titulo' => 'Contacto'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'telefono',
							'mascara' => ['tipo' => 'telefono'],
							'titulo' => 'Teléfono'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'celular',
							'mascara' => ['tipo' => 'telefono'],
							'titulo' => 'Celular'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-2 col-xl-2 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'whatsapp',
							'mascara' => ['tipo' => 'telefono'],
							'titulo' => 'WhatsApp'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-12 col-md-12 col-lg-6 col-xl-6 col-xxl-3">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'select',
							'id' => 'id_pais',
							'atributos' => 'data-peticion-tabla=paises',
							'titulo' => 'Pais'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-12 col-md-12 col-lg-3 col-xl-3 col-xxl-3">
						@component('aplicacion.elementos.grupo.campos')

							@component('aplicacion.elementos.campo.etiqueta', [
								'tipo' => 'select',
								'id' => 'id_sector',
								'titulo' => 'Sector',
								'atributos' => 'data-peticion-tabla=sectores'
							])
							@endcomponent

							@component('aplicacion.elementos.boton', [
								'clases' => 'btn btn-success',
								'atributos' => '
									data-accion=crear
									data-peticion-campo=id_sector
								'
							])
								<i class="fa-solid fa-plus"></i>
							@endcomponent

						@endcomponent
					</div>

					<div class="col-6 col-sm-12 col-md-12 col-lg-3 col-xl-3 col-xxl-3">
            @component('aplicacion.elementos.grupo.campos')

              @component('aplicacion.elementos.campo.etiqueta', [
                'tipo' => 'select',
                'id' => 'id_actividad',
                'atributos' => 'data-peticion-tabla=actividades',
                'titulo' => 'Actividad'
              ])
              @endcomponent

              @component('aplicacion.elementos.boton', [
                'clases' => 'btn btn-success',
                'atributos' => '
                  data-accion=crear
                  data-peticion-campo=id_actividad
                '
              ])
                <i class="fa-solid fa-plus"></i>
              @endcomponent

            @endcomponent
          </div>

					<div class="col-6 col-sm-12 col-md-12 col-lg-6 col-xl-6 col-xxl-6">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'email',
							'id' => 'correo',
							'atributos' => '
								inputmode=email
								maxlength=200
							',
							'titulo' => 'Correo'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-12 col-md-12 col-lg-6 col-xl-6 col-xxl-6">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'email',
							'id' => 'correo_departamento',
							'atributos' => '
								inputmode=email
								maxlength=250
							',
							'titulo' => 'Correo Departamento'
						])
						@endcomponent
					</div>

					<div class="col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12 col-xxl-12">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'direccion',
							'atributos' => 'maxlength=200',
							'titulo' => 'Dirección'
						])
						@endcomponent
					</div>
					<div class="col-12 col-sm-6 col-md-4 col-lg-3 col-xl-3 col-xxl-4">
						@component('aplicacion.elementos.campo.etiqueta', [
							'tipo' => 'select',
							'id' => 'id_tipo_cuenta',
							'atributos' => '
								data-peticion-procedimiento="p_traer_registros_consulta_principal"
								data-peticion-parametros="
									origen_registros: tipos_cuentas;
									campos: id_tipo_cuenta AS valor, tipo_cuenta AS descripcion;
									sql: renglon = `CXP`
								"
							',
							'titulo' => 'Tipo de Cuenta'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-3 col-md-2 col-lg-1 col-xl-1 col-xxl-2">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'porciento_descuento',
							'mascara' => [
								'tipo' => 'numerico',
								'valor' => ['maximo' => '100']
							],
							'titulo' => '% Descuento'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-3 col-xl-2 col-xxl-2">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'limite',
							'mascara' => ['tipo' => 'numerico'],
							'titulo' => 'Límite'
						])
						@endcomponent
					</div>

					<div class="col-6 col-sm-6 col-md-2 col-lg-3 col-xl-3 col-xxl-2">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'condicion',
							'mascara' => [
								'tipo' => 'entero',
								'valor' => ['maximo' => '1000']
							],
							'titulo' => 'Condición'
						])
						@endcomponent
					</div>

					<div class="col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12 col-xxl-12">
						@component('aplicacion.elementos.campo.etiqueta', [
							'id' => 'detalle',
							'atributos' => 'maxlength=250',
							'titulo' => 'Detalle'
						])
						@endcomponent
					</div>

				</div>
			</div>

		</div>

	</div>


</form>

@include('aplicacion.elementos.VentanaEmergenteConsulta')

@endsection

{{-- {} Programación de la sección --}}
@section('programacion')

{{-- ! --}}
@parent

{{-- ! Select 2 v4.1.0 --}}
<script src="{{ asset('archivos/librerias/select2/v4.1.0/js/select2.min.js') }}"></script>

{{-- ! Data Tables v1.13.2 --}}
@include('librerias.datatables.js')

{{-- ! iMask v6.4.3 --}}
<script src="{{ asset('archivos/librerias/imask/v6.4.3/imask.js') }}"></script>

{{-- ! --}}
<script type="module" src="{{ asset('archivos/js/aplicacion/seccion/registros/suplidores.js') }}"></script>

@endsection
