mirror of
https://git.imnavajas.es/jjimenez/erp-imprimelibros.git
synced 2026-01-13 08:58:48 +00:00
trabajando en añadir
This commit is contained in:
@ -0,0 +1,77 @@
|
||||
package com.imprimelibros.erp.direcciones;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.data.repository.query.Param;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface DireccionRepository
|
||||
extends JpaRepository<Direccion, Long>,
|
||||
JpaSpecificationExecutor<Direccion> {
|
||||
|
||||
@Query("""
|
||||
SELECT
|
||||
d.id AS id,
|
||||
d.alias AS alias,
|
||||
d.att AS att,
|
||||
d.direccion AS direccion,
|
||||
d.cp AS cp,
|
||||
d.ciudad AS ciudad,
|
||||
d.provincia AS provincia,
|
||||
d.paisCode3 AS paisCode3,
|
||||
p.keyword AS paisKeyword,
|
||||
d.telefono AS telefono,
|
||||
d.direccionFacturacion AS direccionFacturacion,
|
||||
d.razonSocial AS razonSocial,
|
||||
d.tipoIdentificacionFiscal AS tipoIdentificacionFiscal,
|
||||
d.identificacionFiscal AS identificacionFiscal,
|
||||
u.fullName AS cliente
|
||||
FROM Direccion d
|
||||
JOIN d.user u
|
||||
LEFT JOIN Paises p ON d.paisCode3 = p.code3
|
||||
WHERE (:userId IS NULL OR u.id = :userId)
|
||||
""")
|
||||
List<DireccionView> findAllWithPaisAndUser(@Param("userId") Long userId);
|
||||
|
||||
//findbyidwithPaisAndUser
|
||||
@Query("""
|
||||
SELECT
|
||||
d.id AS id,
|
||||
d.alias AS alias,
|
||||
d.att AS att,
|
||||
d.direccion AS direccion,
|
||||
d.cp AS cp,
|
||||
d.ciudad AS ciudad,
|
||||
d.provincia AS provincia,
|
||||
d.paisCode3 AS paisCode3,
|
||||
p.keyword AS paisKeyword,
|
||||
d.telefono AS telefono,
|
||||
d.direccionFacturacion AS direccionFacturacion,
|
||||
d.razonSocial AS razonSocial,
|
||||
d.tipoIdentificacionFiscal AS tipoIdentificacionFiscal,
|
||||
d.identificacionFiscal AS identificacionFiscal,
|
||||
u.fullName AS cliente
|
||||
FROM Direccion d
|
||||
JOIN d.user u
|
||||
LEFT JOIN Paises p ON d.paisCode3 = p.code3
|
||||
WHERE (d.id = :id)
|
||||
""")
|
||||
Optional<DireccionView> findByIdWithPaisAndUser(@Param("id") Long id);
|
||||
|
||||
|
||||
|
||||
@Query(value = "SELECT * FROM direcciones", nativeQuery = true)
|
||||
List<DireccionView> findAllWithDeleted();
|
||||
|
||||
// find by user_id
|
||||
List<Direccion> findByUserId(Long userId);
|
||||
|
||||
// find by user_id with deleted
|
||||
@Query(value = "SELECT * FROM direcciones WHERE user_id = :userId", nativeQuery = true)
|
||||
List<Direccion> findByUserIdWithDeleted(@Param("userId") Long userId);
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user