modal-domicilio.html 9.88 KB
<div class="modal-header py-1">
    <div class="row w-100">
        <div class="col-lg-6">
            <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="input-group col-lg-6 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" aria-hidden="true"></i>
            </button>
            <input 
                type="text" 
                class="form-control form-control-sm"
                id="search"
                placeholder="Búsqueda" 
                ng-model="filters" 
                ng-change="search()" 
                ng-keydown="busquedaDown($event.keyCode)"
                ng-keypress="busquedaPress($event.keyCode)"
                foca-focus="selectedDomicilio == -1"
                ng-focus="selectedDomicilio = -1"
                teclado-virtual
            >
            <div class="input-group-append">
                <button
                    ladda="searchLoading"
                    class="btn btn-outline-secondary"
                    type="button"
                    ng-click="busquedaPress(13)"
                >
                    <i class="fa fa-search" aria-hidden="true"></i>
                </button>
            </div>
        </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 
                            type="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 
                            type="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" aria-hidden="true"></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"
                    teclado-virtual
                />
            </div>
            <div class="col-6">
                <label>Localidad</label>
                <input
                    type="text"
                    class="form-control"
                    ng-model="domicilio.localidad"
                    placeholder="Ingrese localidad"
                    ng-required="true"
                    ng-keypress="next($event.keyCode)"
                    ng-focus="focused = 4"
                    foca-focus="focused == 4"
                    teclado-virtual
                />
            </div>
            <div class="col-6">
                <label>Provincia</label>
                <input
                    type="text"
                    class="form-control"
                    ng-model="domicilio.provincia"
                    placeholder="Ingrese provincia"
                    ng-required="true"
                    ng-keypress="next($event.keyCode)"
                    ng-focus="focused = 5"
                    foca-focus="focused == 5"
                    teclado-virtual
                />
            </div>
        </div>
        <div class="row mt-3">
            <div class="col-12">
                <button 
                    type="button"
                    class="btn btn-primary float-right ml-3"
                    ng-click="localizarDomicilio()">Buscar</button>
                <button 
                    type="button"
                    class="btn btn-primary 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 aria-hidden="true">&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 aria-hidden="true">&raquo;</span>
                    <span class="sr-only">Siguiente</span>
                </a>
            </li>
        </ul>
    </nav>
    <button
        ng-show="!ingreso"
        class="btn btn-sm btn-secondary"
        type="button"
        ng-click="cancel()"
    >Volver
    </button>
    <button
        ng-show="ingreso"
        class="btn btn-secondary btn-sm"
        type="button"
        ng-click="ingreso = !ingreso; domicilio = {}; contactos = [{}]"
    >Cancelar
    </button>
    <button
        ng-show="ingreso"
        class="btn btn-sm btn-primary"
        type="button"
        ng-click="agregarDomicilio()"        
    >Agregar domicilio
    </button>
</div>