trabajando en leer datos de tipo cubierta

This commit is contained in:
2025-10-09 21:59:59 +02:00
parent 328ff509e3
commit 6c4b63daa6
17 changed files with 573 additions and 116 deletions

View File

@ -35,7 +35,7 @@
<th:block layout:fragment="pagejs">
<div th:unless="${#authorization.expression('isAuthenticated()')}">
<script th:src="@{/assets/js/pages/imprimelibros/presupuestador/imagen-selector.js}"></script>
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/presupuestador.js}"></script>
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/wizard-home.js}"></script>
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/presupuesto-maquetacion.js}"></script>
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/presupuesto-marcapaginas.js}"></script>
</div>

View File

@ -21,29 +21,32 @@
<div class="ribbon-content mt-4">
<div class="row justify-content-center imagen-container-group mt-3">
<div id="tapaBlanda" class="tapa-cubierta image-container imagen-selector selected" th:attr="data-summary-text=#{presupuesto.tapa-blanda}">
<label id="tapaBlanda" class="tapa-cubierta image-container imagen-selector" th:attr="data-summary-text=#{presupuesto.tapa-blanda}">
<input type="radio" name="tipoCubierta" value="tapaBlanda" hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/tapa-blanda.png"
alt="">
<label for="titulo" class="form-label" th:text="#{presupuesto.tapa-blanda}">
<div class="form-label" th:text="#{presupuesto.tapa-blanda}">
Tapa blanda
</label>
</div>
</div>
</label>
<div id="tapaDura" class="tapa-cubierta image-container imagen-selector" th:attr="data-summary-text=#{presupuesto.tapa-dura}">
<label id="tapaDura" class="tapa-cubierta image-container imagen-selector" th:attr="data-summary-text=#{presupuesto.tapa-dura}">
<input type="radio" name="tipoCubierta" value="tapaDura" hidden>
<img class="image-presupuesto"
src="/assets/images/imprimelibros/presupuestador/tapa-dura-lomo-recto.png" alt="">
<label class="form-label" th:text="#{presupuesto.tapa-dura}">
<div class="form-label" th:text="#{presupuesto.tapa-dura}">
Tapa dura
</label>
</div>
</div>
</label>
<div id="tapaDuraLomoRedondo" class="tapa-cubierta image-container imagen-selector" th:attr="data-summary-text=#{presupuesto.tapa-dura-lomo-redondo}">
<label id="tapaDuraLomoRedondo" class="tapa-cubierta image-container imagen-selector" th:attr="data-summary-text=#{presupuesto.tapa-dura-lomo-redondo}">
<input type="radio" name="tipoCubierta" value="tapaDuraLomoRedondo" hidden>
<img class="image-presupuesto"
src="/assets/images/imprimelibros/presupuestador/tapa-dura-lomo-redondo.png" alt="">
<label class="form-label" th:text="#{presupuesto.tapa-dura-lomo-redondo}">
<div class="form-label" th:text="#{presupuesto.tapa-dura-lomo-redondo}">
Tapa dura lomo redondo
</label>
</div>
</div>
</label>
</div>
@ -53,21 +56,23 @@
<!-- Bloque de solapas -->
<div class="d-flex gap-3">
<div id="sin-solapas" class="image-container imagen-selector solapas-cubierta selected" th:attr="data-summary-text=#{app.no}">
<label id="sin-solapas" class="image-container imagen-selector solapas-cubierta" th:attr="data-summary-text=#{app.no}">
<input type="radio" name="solapasCubierta" value="sinSolapas" checked hidden>
<img class="image-presupuesto"
src="/assets/images/imprimelibros/presupuestador/sinSolapasCubierta.png" alt="">
<label class="form-label text-center d-block" th:text="#{presupuesto.sin-solapas}">
<div class="form-label text-center d-block" th:text="#{presupuesto.sin-solapas}">
Sin solapas
</label>
</div>
</div>
</label>
<div id="con-solapas" class="image-container imagen-selector solapas-cubierta" th:attr="data-summary-text=#{app.yes}">
<label id="con-solapas" class="image-container imagen-selector solapas-cubierta" th:attr="data-summary-text=#{app.yes}">
<input type="radio" name="solapasCubierta" value="conSolapas" hidden>
<img class="image-presupuesto"
src="/assets/images/imprimelibros/presupuestador/conSolapasCubierta.png" alt="">
<label class="form-label text-center d-block" th:text="#{presupuesto.con-solapas}">
<div class="form-label text-center d-block" th:text="#{presupuesto.con-solapas}">
Con solapas
</label>
</div>
</div>
</label>
</div>
<!-- Inputs -->

View File

@ -9,7 +9,7 @@
<div class="ribbon-content mt-4">
<div class="alert alert-danger alert-dismissible alert-label-icon rounded-label fade show material-shadow d-none"
<div class="alert alert-danger alert-label-icon rounded-label fade show material-shadow d-none"
role="alert" id="datos-generales-alert">
<i class="ri-error-warning-line label-icon"></i>
<strong th:text="#{presupuesto.errores-title}">Corrija los siguientes errores:</strong>
@ -81,7 +81,7 @@
<select class="form-select select2 datos-generales-data" id="formato">
<optgroup th:label="#{presupuesto.orientacion.vertical}">
<option data-ancho="148" data-alto="210" value="148x210">148x210 (A5)</option>
<option data-ancho="120" data-alto="170" value="120x170">120x170</option>
<option data-ancho="170" data-alto="240" value="170x240">170x240</option>
<option data-ancho="210" data-alto="297" value="210x297">210x297 (A4)</option>
</optgroup>
<optgroup th:label="#{presupuesto.orientacion.cuadrado}">
@ -195,56 +195,56 @@
<div class="d-flex flex-wrap justify-content-center gap-3 imagen-container-group">
<!-- Opción: Fresado -->
<div class="tipo-libro image-container imagen-selector selected datos-generales-data"
<label class="tipo-libro image-container imagen-selector datos-generales-data"
th:attr="data-summary-text=#{presupuesto.fresado}" id="fresado">
<input type="radio" name="tipoEncuadernacion" value="fresado" hidden>
<input type="radio" name="tipoEncuadernacion" value="fresado" checked hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/fresado.png"
alt="Fresado" />
<div class="form-text text-center" th:text="#{presupuesto.fresado-descripcion}">
Fresado (a partir de 32 páginas)</div>
</div>
</label>
<!-- Opción: Cosido -->
<div class="tipo-libro image-container imagen-selector datos-generales-data"
<label class="tipo-libro image-container imagen-selector datos-generales-data"
th:attr="data-summary-text=#{presupuesto.cosido}" id="cosido">
<input type="radio" name="tipoEncuadernacion" value="cosido" hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/cosido.png"
alt="Cosido" />
<div class="form-text text-center" th:text="#{presupuesto.cosido-descripcion}">
Cosido (a partir de 32 páginas)</div>
</div>
</label>
<!-- Opción: Grapado -->
<div class="tipo-libro image-container imagen-selector datos-generales-data"
<label class="tipo-libro image-container imagen-selector datos-generales-data"
th:attr="data-summary-text=#{presupuesto.grapado}" id="grapado">
<input type="radio" name="tipoEncuadernacion" value="grapado" hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/grapado.png"
alt="Grapado" />
<div class="form-text text-center" th:text="#{presupuesto.grapado-descripcion}">
Grapado (entre 12 y 40 páginas)</div>
</div>
</label>
<!-- Opción: Espiral -->
<div class="tipo-libro image-container imagen-selector datos-generales-data"
<label class="tipo-libro image-container imagen-selector datos-generales-data"
th:attr="data-summary-text=#{presupuesto.espiral}" id="espiral">
<input type="radio" name="tipoEncuadernacion" value="espiral" hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/espiral.png"
alt="Espiral" />
<div class="form-text text-center" th:text="#{presupuesto.espiral-descripcion}">
Espiral (a partir de 20 páginas)</div>
</div>
</label>
<!-- Opción: Wire-O -->
<div class="tipo-libro image-container imagen-selector datos-generales-data"
<label class="tipo-libro image-container imagen-selector datos-generales-data"
th:attr="data-summary-text=#{presupuesto.wire-o}" id="wireo">
<input type="radio" name="tipoEncuadernacion" value="wireo" hidden>
<img class="image-presupuesto" src="/assets/images/imprimelibros/presupuestador/wire-o.png"
alt="Wire-O" />
<div class="form-text text-center" th:text="#{presupuesto.wire-o-descripcion}">
Wire-O (a partir de 20 páginas)</div>
</div>
</label>
</div>
</div>

View File

@ -1,4 +1,8 @@
<div th:fragment="presupuestador">
<div id="presupuesto-app"
th:data-mode="${appMode} ?: 'public'"
th:data-id="${id} ?: ''"
th:fragment="presupuestador">
<!-- Modales-->
<div
th:replace="imprimelibros/partials/modal-form :: modal('maquetacionModal', 'presupuesto.maquetacion', 'modal-md', 'maquetacionModalBody')">

View File

@ -49,7 +49,9 @@
</script>
<!-- JS de Buttons y dependencias -->
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/presupuestador.js}"></script>
<div th:if="${appMode} == 'view'">
<script type="module" th:src="@{/assets/js/pages/imprimelibros/presupuestador/wizard-publicos.js}"></script>
</div>
</th:block>
</body>