modal-domicilio.html 10.4 KB
<div class="modal-header py-1">
    <div class="row w-100 justify-content-between">
        <div class="col-auto">
            <h5 class="modal-title my-1" ng-hide="ingreso">Búsqueda de Domicilios</h5>
            <h5 class="modal-title my-1" ng-show="ingreso">Crear domicilios de descarga</h5>
        </div>
        <div class="col-auto pr-0 my-2">
            <button 
                class="btn btn-outline-debo mr-2"
                ng-click="ingreso = true"
                ng-show="!ingreso"
                title="Nuevo">
                <i class="fa fa-plus"></i>
            </button>
        </div>
    </div>
</div>
<div class="modal-body" id="modal-body">

    <div ng-show="!primerBusqueda">Debe realizar una primer búsqueda.</div>

    <div ng-show="!ingreso">
        <table ng-show="!ingreso" class="table table-striped table-sm">
            <thead>
                <tr>
                    <th>Titulo</th>
                    <th>Calle</th>
                    <th>Localidad</th>
                    <th>Provincia</th>
                    <th></th>
                    <th></th>
                </tr>
            </thead>
            <tbody>
                <tr ng-show="currentPageDomicilios.length == 0 && primerBusqueda">
                    <td colspan="5">No se encontraron resultados.</td>
                </tr>
                <tr class="selectable"
                    ng-repeat="(key,domicilio) in currentPageDomicilios">
                    <td 
                        ng-bind="domicilio.titulo"
                        ng-click="select(domicilio)">
                    </td>
                    <td 
                        ng-bind="domicilio.Calle + ' ' + domicilio.Numero"
                        ng-click="select(domicilio)">
                    </td>
                    <td 
                        ng-bind="domicilio.Localidad"
                        ng-click="select(domicilio)">
                    </td>
                    <td 
                        ng-bind="domicilio.Provincia"
                        ng-click="select(domicilio)">
                    </td>
                    <td>
                        <button 
                            class="btn btn-sm p-1 float-right btn-secondary"
                            ng-click="verPuntosDescarga(key)"
                            title="Puntos de descarga">
                            <small>PD</small>
                        </button>
                    </td>
                    <td>
                        <button 
                            class="btn btn-sm p-1 float-right"
                            ng-class="{
                                'btn-secondary': selectedDomicilio != key + 1,
                                'btn-primary': selectedDomicilio == key + 1 
                            }"
                            foca-focus="selectedDomicilio == {{key + 1}}"
                            ng-keydown="itemDomicilio($event.keyCode)"
                            ng-click="select(domicilio)"
                            title="Seleccionar">
                            <i class="fa fa-circle-thin"></i>
                        </button>
                    </td>
                </tr>
            </tbody>
        </table>
    </div>
    <form name="formDomicilio" ng-show="ingreso">
        <input 
            type="hidden" 
            ng-model="domicilio.latitud"
            ng-required="true">
        <input 
            type="hidden" 
            ng-model="domicilio.longitud"
            ng-required="true">
        <div class="row">
            <div class="col-4">
                <label>Tipo</label>
                <select
                    class="form-control"
                    ng-disabled="true">
                    <option ng-value="2">Entrega</option>
                </select>
            </div>
            <div class="col-8">
                <label>Titulo</label>
                <input
                    type="text"
                    foca-focus="ingreso"
                    class="form-control"
                    ng-model="domicilio.titulo"
                    placeholder="Ingrese título"
                    ng-required="true"
                    ng-keypress="next($event.keyCode)"
                    ng-focus="focused = 1"
                    foca-focus="focused == 1"
                    teclado-virtual/>
            </div>
            <div class="col-9">
                <label>Calle</label>
                <input
                    type="text"
                    class="form-control"
                    ng-model="domicilio.calle"
                    placeholder="Ingrese calle"
                    ng-required="true"
                    ng-keypress="next($event.keyCode)"
                    ng-focus="focused = 2"
                    foca-focus="focused == 2"
                    teclado-virtual/>
            </div>
            <div class="col-3">
                <label>Nº</label>
                <input
                    type="text"
                    class="form-control"
                    ng-model="domicilio.numeroCalle"
                    placeholder="Ingrese Numero"
                    ng-required="true"
                    ng-keypress="next($event.keyCode)"
                    ng-focus="focused = 3"
                    foca-focus="focused == 3"
                    only-numbers
                    teclado-virtual
                />
            </div>
            <div class="col-6">
                <label>Provincia</label>
                <div class="input-group">
                    <input
                        type="text"
                        class="form-control form-control-sm"
                        ng-model="domicilio.provincia.NOMBRE"
                        ng-keypress="seleccionarProvincia($event.keyCode)"
                        placeholder="Seleccione provincia"
                        ng-required="true"
                        ng-focus="focus(4)"
                        foca-focus="focused == 4"
                        ng-disabled="domicilio.provincia.ID"
                        teclado-virtual/>
                    <button 
                        ng-show="domicilio.provincia.NOMBRE.length"
                        class="clear-input simple-hover"
                        ng-click="domicilio.provincia.ID = null; domicilio.provincia.NOMBRE = ''">
                        <i class="fa fa-times"></i>
                    </button>
                    <div class="input-group-append">
                        <button
                            ladda="searchLoading"
                            class="btn btn-outline-secondary"
                            ng-click="seleccionarProvincia(13)">
                            <i class="fa fa-search"></i>
                        </button>
                    </div>
                </div>
            </div>
            <div class="col-6">
                <label>Localidad</label>
                <div class="input-group">
                    <input
                        type="text"
                        class="form-control form-control-sm"
                        ng-model="domicilio.localidad.NOMBRE"
                        ng-keypress="seleccionarLocalidad($event.keyCode)"
                        placeholder="Seleccione localidad"
                        ng-required="true"
                        foca-focus="focused == 5"
                        ng-focus="focus(5)"
                        ng-disabled="domicilio.localidad.ID"
                        teclado-virtual/>
                    <button 
                        ng-show="domicilio.localidad.NOMBRE.length"
                        class="clear-input simple-hover"
                        ng-click="domicilio.localidad.ID = null; domicilio.localidad.NOMBRE = ''">
                        <i class="fa fa-times"></i>
                    </button>
                    <div class="input-group-append">
                        <button
                            ladda="searchLoading"
                            class="btn btn-outline-secondary"
                            ng-click="seleccionarLocalidad(13)">
                            <i class="fa fa-search"></i>
                        </button>
                    </div>
                </div>
            </div>
        </div>
        <div class="row mt-3">
            <div class="col-12">
                <button 
                    class="btn btn-outline-debo float-right ml-3"
                    ng-click="localizarDomicilio()">Buscar</button>
                <button 
                    class="btn btn-outline-debo float-right"
                    ng-disabled="!domicilio.calle || !domicilio.numeroCalle || !domicilio.localidad || !domicilio.provincia"
                    ng-click="localizarDomicilio(true)">Localizar</button>
            </div>
        </div>
    </form>
</div>
<div class="modal-footer">
    <nav ng-show="currentPageDomicilios.length > 0 && !ingreso" class="mr-auto">
        <ul class="pagination pagination-sm mb-0 justify-content-end">
            <li class="page-item" ng-class="{'disabled': currentPage == 1}">
                <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage - 1)">
                    <span>&laquo;</span>
                    <span class="sr-only">Anterior</span>
                </a>
            </li>
            <li
                class="page-item" 
                ng-repeat="pagina in paginas" 
                ng-class="{'active': pagina == currentPage}">
                <a
                    class="page-link" 
                    href="javascript:void();" 
                    ng-click="selectPage(pagina)"
                    ng-bind="pagina">
                </a>
            </li>
            <li class="page-item" ng-class="{'disabled': currentPage == lastPage}">
                <a class="page-link" href="javascript:void();" ng-click="selectPage(currentPage + 1)">
                    <span>&raquo;</span>
                    <span class="sr-only">Siguiente</span>
                </a>
            </li>
        </ul>
    </nav>
    <button
        ng-show="!ingreso"
        class="btn btn-sm btn-secondary"
        ng-click="cancel()">
        Volver
    </button>
    <button
        ng-show="ingreso"
        class="btn btn-secondary btn-sm"
        ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]">
        Cancelar
    </button>
    <button
        ng-show="ingreso"
        class="btn btn-sm btn-primary"
        ng-click="agregarDomicilio()">
        Agregar domicilio
    </button>
</div>