Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
BackEnd-V2
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Joel Andres Molina Velez
BackEnd-V2
Commits
f6d10269
Commit
f6d10269
authored
Aug 14, 2023
by
Joel Andres Molina Velez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Se realizan los servicios de ModelUzyTavInstituc
parent
bc787285
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
336 additions
and
43 deletions
+336
-43
UzyTavInstProyController.java
...idad/MovilidadWS/Controller/UzyTavInstProyController.java
+60
-0
DaoUzyTavInstProy.java
...edu/espe/movilidad/MovilidadWS/Dao/DaoUzyTavInstProy.java
+7
-0
DtoUzyTavInstProy.java
...edu/espe/movilidad/MovilidadWS/Dto/DtoUzyTavInstProy.java
+30
-16
GlobalExceptionHandler.java
...adWS/Exceptions/Configuration/GlobalExceptionHandler.java
+2
-0
UzyTavInstProyMapper.java
...lidadWS/Mapper/Components_Class/UzyTavInstProyMapper.java
+33
-0
ModelUzyTavInstProy.java
...espe/movilidad/MovilidadWS/Model/ModelUzyTavInstProy.java
+32
-27
ModelUzyTavInstituc.java
...espe/movilidad/MovilidadWS/Model/ModelUzyTavInstituc.java
+10
-0
IServiceUzyTavInstProy.java
...idadWS/Service/UzyTavInstProy/IServiceUzyTavInstProy.java
+22
-0
ServiceUzyTavInstProy.java
...lidadWS/Service/UzyTavInstProy/ServiceUzyTavInstProy.java
+140
-0
No files found.
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Controller/UzyTavInstProyController.java
0 → 100644
View file @
f6d10269
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Controller
;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavInstProy.IServiceUzyTavInstProy
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
import
static
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Constant
.
GlobalConstants
.
V1_API_VERSION
;
@RestController
@CrossOrigin
(
origins
=
"*"
)
@RequestMapping
(
V1_API_VERSION
+
"/instproy"
)
public
class
UzyTavInstProyController
{
private
final
IServiceUzyTavInstProy
serviceUzyTavInstProy
;
public
UzyTavInstProyController
(
IServiceUzyTavInstProy
serviceUzyTavInstProy
)
{
this
.
serviceUzyTavInstProy
=
serviceUzyTavInstProy
;
}
@GetMapping
(
"/exampleFindId/{id}"
)
public
DtoUzyTavInstProy
ListarPorID
(
@PathVariable
Long
id
)
{
return
serviceUzyTavInstProy
.
ListarPorID
(
id
);
}
@GetMapping
(
"/getAll"
)
public
List
<
DtoUzyTavInstProy
>
ListarRegistros
()
{
return
serviceUzyTavInstProy
.
ListarRegistros
();
}
@GetMapping
(
"/obtenerRegistrosTavInsituc/{uzytavinstituc_id}"
)
public
List
<
DtoUzyTavInstProy
>
obtenerRegistrosTavInsituc
(
@PathVariable
Long
uzytavinstituc_id
)
{
return
serviceUzyTavInstProy
.
obtenerRegistrosTavInsituc
(
uzytavinstituc_id
);
}
@PostMapping
(
"/guardar"
)
public
DtoUzyTavInstProy
guardar
(
@Valid
@RequestBody
DtoUzyTavInstProy
dtoUzyTavInstProy
)
{
return
serviceUzyTavInstProy
.
guardar
(
dtoUzyTavInstProy
);
}
@PutMapping
(
"/editar/{id}"
)
public
DtoUzyTavInstProy
editar
(
@PathVariable
Long
id
,
@Valid
@RequestBody
DtoUzyTavInstProy
dtoUzyTavInstProy
)
{
return
serviceUzyTavInstProy
.
editar
(
id
,
dtoUzyTavInstProy
);
}
@DeleteMapping
(
"/eliminar/{id}"
)
public
ResponseEntity
<
String
>
eliminar
(
@PathVariable
Long
id
)
{
boolean
eliminado
=
serviceUzyTavInstProy
.
eliminar
(
id
);
if
(
eliminado
)
{
return
ResponseEntity
.
ok
(
"El registro se eliminó exitosamente."
);
}
else
{
return
ResponseEntity
.
notFound
().
build
();
}
}
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Dao/DaoUzyTavInstProy.java
View file @
f6d10269
...
@@ -2,8 +2,15 @@ package ec.edu.espe.movilidad.MovilidadWS.Dao;
...
@@ -2,8 +2,15 @@ package ec.edu.espe.movilidad.MovilidadWS.Dao;
import
ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavInstProy
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.data.repository.query.Param
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
@Repository
@Repository
public
interface
DaoUzyTavInstProy
extends
JpaRepository
<
ModelUzyTavInstProy
,
Long
>
{
public
interface
DaoUzyTavInstProy
extends
JpaRepository
<
ModelUzyTavInstProy
,
Long
>
{
@Query
(
"SELECT ti FROM ModelUzyTavInstProy ti JOIN ti.uzytavinstituc tic WHERE tic.uzytavinstituc_id = :uzytavinstituc_id"
)
List
<
ModelUzyTavInstProy
>
obtenerRegistrosTavInsituc
(
@Param
(
"uzytavinstituc_id"
)
Long
uzytavinstituc_id
);
}
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Dto/DtoUzyTavInstProy.java
View file @
f6d10269
...
@@ -3,24 +3,38 @@ package ec.edu.espe.movilidad.MovilidadWS.Dto;
...
@@ -3,24 +3,38 @@ package ec.edu.espe.movilidad.MovilidadWS.Dto;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.Date
;
import
javax.validation.constraints.Positive
;
import
javax.validation.constraints.Size
;
import
java.time.LocalDateTime
;
@Data
@Data
public
class
DtoUzyTavInstProy
{
public
class
DtoUzyTavInstProy
{
@Positive
(
message
=
"El campo uzytavinstproy_id debe ser un número positivo"
)
private
Long
UZYTAVINSTPROY_ID
;
private
Long
uzytavinstproy_id
;
private
Long
UZYTAVPROYEC_ID
;
@Positive
(
message
=
"El campo uzytavproyec_id debe ser un número positivo"
)
private
Long
UZYTAVINSTITUC_ID
;
private
Long
uzytavproyec_id
;
private
Long
UZYTPARAMETROS_DET_ID_ORGANIZACION
;
@Positive
(
message
=
"El campo uzytavinstituc_id debe ser un número positivo"
)
private
Long
UZYTPARAMETROS_DET_ID_ENTIDAD
;
private
Long
uzytavinstituc_id
;
private
String
UZYTAVINSTPROY_DETAOTRO
;
@Positive
(
message
=
"El campo uzytparametros_det_id_organizacion debe ser un número positivo"
)
private
String
UZYTAVINSTPROY_DECLARACION
;
private
Long
uzytparametros_det_id_organizacion
;
private
Date
UZYTAVINSTPROY_FECHA_CREA
;
@Positive
(
message
=
"El campo uzytparametros_det_id_entidad debe ser un número positivo"
)
private
Integer
UZYTAVINSTPROY_DIR_HOMBRES
;
private
Long
uzytparametros_det_id_entidad
;
private
Integer
UZYTAVINSTPROY_DIR_MUJERES
;
@Size
(
max
=
100
)
private
Integer
UZYTAVINSTPROY_DIR_NINIOS
;
private
String
uzytavinstproy_detaotro
;
private
Integer
UZYTAVINSTPROY_DIR_DISCAPACIDAD
;
@Size
(
max
=
2000
)
private
Integer
UZYTAVINSTPROY_INDIRECTOS
;
private
String
uzytavinstproy_declaracion
;
private
String
UZYTAVINSTPROY_DESC_BENEFIC
;
private
LocalDateTime
uzytavinstproy_fecha_crea
;
@Positive
(
message
=
"El campo uzytavinstproy_dir_hombres debe ser un número positivo"
)
private
Integer
uzytavinstproy_dir_hombres
;
@Positive
(
message
=
"El campo uzytavinstproy_dir_mujeres debe ser un número positivo"
)
private
Integer
uzytavinstproy_dir_mujeres
;
@Positive
(
message
=
"El campo uzytavinstproy_dir_ninios debe ser un número positivo"
)
private
Integer
uzytavinstproy_dir_ninios
;
@Positive
(
message
=
"El campo uzytavinstproy_dir_discapacidad debe ser un número positivo"
)
private
Integer
uzytavinstproy_dir_discapacidad
;
@Positive
(
message
=
"El campo uzytavinstproy_indirectos debe ser un número positivo"
)
private
Integer
uzytavinstproy_indirectos
;
@Size
(
max
=
150
)
private
String
uzytavinstproy_desc_benefic
;
}
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Exceptions/Configuration/GlobalExceptionHandler.java
View file @
f6d10269
...
@@ -37,6 +37,8 @@ public class GlobalExceptionHandler {
...
@@ -37,6 +37,8 @@ public class GlobalExceptionHandler {
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
body
(
ex
.
getMessage
());
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
body
(
ex
.
getMessage
());
}
}
@ExceptionHandler
(
NoSuchElementException
.
class
)
@ExceptionHandler
(
NoSuchElementException
.
class
)
public
ResponseEntity
<
String
>
handleNoSuchElementException
(
NoSuchElementException
ex
)
{
public
ResponseEntity
<
String
>
handleNoSuchElementException
(
NoSuchElementException
ex
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
body
(
ex
.
getMessage
());
return
ResponseEntity
.
status
(
HttpStatus
.
NOT_FOUND
).
body
(
ex
.
getMessage
());
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Mapper/Components_Class/UzyTavInstProyMapper.java
0 → 100644
View file @
f6d10269
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Mapper
.
Components_Class
;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavInstProy
;
import
org.modelmapper.ModelMapper
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Component
public
class
UzyTavInstProyMapper
{
private
final
ModelMapper
mapper
;
public
UzyTavInstProyMapper
(
ModelMapper
mapper
)
{
this
.
mapper
=
mapper
;
}
public
DtoUzyTavInstProy
entityToDto
(
ModelUzyTavInstProy
entity
)
{
return
mapper
.
map
(
entity
,
DtoUzyTavInstProy
.
class
);
}
public
ModelUzyTavInstProy
dtoToEntity
(
DtoUzyTavInstProy
dto
)
{
return
mapper
.
map
(
dto
,
ModelUzyTavInstProy
.
class
);
}
public
List
<
DtoUzyTavInstProy
>
entitiesToDtos
(
List
<
ModelUzyTavInstProy
>
entities
)
{
return
entities
.
stream
()
.
map
(
this
::
entityToDto
)
.
collect
(
Collectors
.
toList
());
}
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Model/ModelUzyTavInstProy.java
View file @
f6d10269
...
@@ -7,66 +7,71 @@ import lombok.Setter;
...
@@ -7,66 +7,71 @@ import lombok.Setter;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
javax.validation.constraints.Size
;
import
javax.validation.constraints.Size
;
import
java.
util.Dat
e
;
import
java.
time.LocalDateTim
e
;
import
java.util.LinkedHashSet
;
import
java.util.LinkedHashSet
;
import
java.util.Set
;
import
java.util.Set
;
@Getter
@Getter
@Setter
@Setter
@Entity
@Entity
@Table
(
name
=
"
UZYTAVINSTPROY
"
,
schema
=
"UTIC1"
)
@Table
(
name
=
"
uzytavinstproy
"
,
schema
=
"UTIC1"
)
public
class
ModelUzyTavInstProy
{
public
class
ModelUzyTavInstProy
{
@Id
@Id
@Column
(
name
=
"UZYTAVINSTPROY_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
SEQUENCE
,
generator
=
"uzytavinstproy_seq"
)
private
Long
UZYTAVINSTPROY_ID
;
@SequenceGenerator
(
name
=
"uzytavinstproy_seq"
,
sequenceName
=
"SEQ_UZYTAVINSTPROY"
,
allocationSize
=
1
)
@Column
(
name
=
"uzytavinstproy_id"
)
private
Long
uzytavinstproy_id
;
//RELACION CON PROYECTO- TABLA PADRE
//RELACION CON PROYECTO- TABLA PADRE
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinColumn
(
name
=
"
UZYTAVPROYEC_ID
"
)
@JoinColumn
(
name
=
"
uzytavproyec_id
"
)
private
ModelUzyTavProyec
uzytavproyec
;
private
ModelUzyTavProyec
uzytavproyec
;
@Column
(
name
=
"UZYTAVINSTITUC_ID"
)
private
Long
UZYTAVINSTITUC_ID
;
//RELACION CON TavInstituc- TABLA PADRE
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinColumn
(
name
=
"uzytavinstituc_id"
)
private
ModelUzyTavInstituc
uzytavinstituc
;
//RELACIÓN CON PARAMETROS_DET- TABLA PADRE
//RELACIÓN CON PARAMETROS_DET- TABLA PADRE
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinColumn
(
name
=
"
UZYTPARAMETROS_DET_ID_ORGANIZACION
"
)
@JoinColumn
(
name
=
"
uzytparametros_det_id_organizacion
"
)
private
ModelUzyTavParametros_Det
uzytparametrosDetIdOrganizacion
;
private
ModelUzyTavParametros_Det
uzytparametrosDetIdOrganizacion
;
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@ManyToOne
(
fetch
=
FetchType
.
LAZY
)
@JoinColumn
(
name
=
"
UZYTPARAMETROS_DET_ID_ENTIDAD
"
)
@JoinColumn
(
name
=
"
uzytparametros_det_id_entidad
"
)
private
ModelUzyTavParametros_Det
uzytparametrosDetIdEntidad
;
private
ModelUzyTavParametros_Det
uzytparametrosDetIdEntidad
;
@Size
(
max
=
100
)
@Size
(
max
=
100
)
@Column
(
name
=
"
UZYTAVINSTPROY_DETAOTRO
"
,
length
=
100
)
@Column
(
name
=
"
uzytavinstproy_detaotro
"
,
length
=
100
)
private
String
UZYTAVINSTPROY_DETAOTRO
;
private
String
uzytavinstproy_detaotro
;
@Size
(
max
=
2000
)
@Size
(
max
=
2000
)
@Column
(
name
=
"
UZYTAVINSTPROY_DECLARACION
"
,
length
=
2000
)
@Column
(
name
=
"
uzytavinstproy_declaracion
"
,
length
=
2000
)
private
String
UZYTAVINSTPROY_DECLARACION
;
private
String
uzytavinstproy_declaracion
;
@Column
(
name
=
"
UZYTAVINSTPROY_FECHA_CREA
"
)
@Column
(
name
=
"
uzytavinstproy_fecha_crea
"
)
private
Date
UZYTAVINSTPROY_FECHA_CREA
;
private
LocalDateTime
uzytavinstproy_fecha_crea
;
@Column
(
name
=
"
UZYTAVINSTPROY_DIR_HOMBRES
"
)
@Column
(
name
=
"
uzytavinstproy_dir_hombres
"
)
private
Integer
UZYTAVINSTPROY_DIR_HOMBRES
;
private
Integer
uzytavinstproy_dir_hombres
;
@Column
(
name
=
"
UZYTAVINSTPROY_DIR_MUJERES
"
)
@Column
(
name
=
"
uzytavinstproy_dir_mujeres
"
)
private
Integer
UZYTAVINSTPROY_DIR_MUJERES
;
private
Integer
uzytavinstproy_dir_mujeres
;
@Column
(
name
=
"
UZYTAVINSTPROY_DIR_NINIOS
"
)
@Column
(
name
=
"
uzytavinstproy_dir_ninios
"
)
private
Integer
UZYTAVINSTPROY_DIR_NINIOS
;
private
Integer
uzytavinstproy_dir_ninios
;
@Column
(
name
=
"
UZYTAVINSTPROY_DIR_DISCAPACIDAD
"
)
@Column
(
name
=
"
uzytavinstproy_dir_discapacidad
"
)
private
Integer
UZYTAVINSTPROY_DIR_DISCAPACIDAD
;
private
Integer
uzytavinstproy_dir_discapacidad
;
@Column
(
name
=
"
UZYTAVINSTPROY_INDIRECTOS
"
)
@Column
(
name
=
"
uzytavinstproy_indirectos
"
)
private
Integer
UZYTAVINSTPROY_INDIRECTOS
;
private
Integer
uzytavinstproy_indirectos
;
@Size
(
max
=
150
)
@Size
(
max
=
150
)
@Column
(
name
=
"
UZYTAVINSTPROY_DESC_BENEFIC
"
,
length
=
150
)
@Column
(
name
=
"
uzytavinstproy_desc_benefic
"
,
length
=
150
)
private
String
UZYTAVINSTPROY_DESC_BENEFIC
;
private
String
uzytavinstproy_desc_benefic
;
//RELACIÓN CON uzytavinstproy- TABLA HIJA
//RELACIÓN CON uzytavinstproy- TABLA HIJA
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Model/ModelUzyTavInstituc.java
View file @
f6d10269
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Model
;
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Model
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.LinkedHashSet
;
import
java.util.Set
;
@Getter
@Getter
@Setter
@Setter
...
@@ -47,4 +50,11 @@ public class ModelUzyTavInstituc {
...
@@ -47,4 +50,11 @@ public class ModelUzyTavInstituc {
@ManyToOne
(
fetch
=
FetchType
.
EAGER
)
@ManyToOne
(
fetch
=
FetchType
.
EAGER
)
@JoinColumn
(
name
=
"uzytparroquia_id"
,
referencedColumnName
=
"uzytparroquia_id"
)
@JoinColumn
(
name
=
"uzytparroquia_id"
,
referencedColumnName
=
"uzytparroquia_id"
)
private
ModelUzyTParroquia
uzytparroquia
;
private
ModelUzyTParroquia
uzytparroquia
;
//RELACIÓN CON ModelUzyTavInstProy TABLA HIJA
@JsonIgnore
@OneToMany
(
mappedBy
=
"uzytavinstituc"
)
private
Set
<
ModelUzyTavInstProy
>
modelUzyTavInstProySet
=
new
LinkedHashSet
<>();
}
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Service/UzyTavInstProy/IServiceUzyTavInstProy.java
0 → 100644
View file @
f6d10269
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Service
.
UzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavInstProy
;
import
java.util.List
;
public
interface
IServiceUzyTavInstProy
{
DtoUzyTavInstProy
ListarPorID
(
Long
id
);
List
<
DtoUzyTavInstProy
>
ListarRegistros
();
List
<
DtoUzyTavInstProy
>
obtenerRegistrosTavInsituc
(
Long
uzytavinstituc_id
);
DtoUzyTavInstProy
guardar
(
DtoUzyTavInstProy
dtoUzyTavInstProy
);
DtoUzyTavInstProy
editar
(
Long
id
,
DtoUzyTavInstProy
dtoUzyTavInstProy
);
boolean
eliminar
(
Long
id
);
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Service/UzyTavInstProy/ServiceUzyTavInstProy.java
0 → 100644
View file @
f6d10269
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Service
.
UzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavInstProy
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException
;
import
ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class.UzyTavInstProyMapper
;
import
ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavInstProy
;
import
org.springframework.dao.DataIntegrityViolationException
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
public
class
ServiceUzyTavInstProy
implements
IServiceUzyTavInstProy
{
private
final
UzyTavInstProyMapper
mapper
;
private
final
DaoUzyTavInstProy
daoUzyTavInstProy
;
private
static
final
String
MESSAGE
=
"No se encontró el registro con ID: "
;
public
ServiceUzyTavInstProy
(
UzyTavInstProyMapper
mapper
,
DaoUzyTavInstProy
daoUzyTavInstProy
)
{
this
.
mapper
=
mapper
;
this
.
daoUzyTavInstProy
=
daoUzyTavInstProy
;
}
@Override
public
DtoUzyTavInstProy
ListarPorID
(
Long
id
)
{
if
(
id
<=
0
)
{
throw
new
IllegalArgumentException
(
"El parámetro 'id' debe ser un valor positivo."
);
}
try
{
ModelUzyTavInstProy
entity
=
daoUzyTavInstProy
.
findById
(
id
)
.
orElseThrow
(()
->
new
ResourceNotFoundException
(
MESSAGE
+
id
));
return
mapper
.
entityToDto
(
entity
);
}
catch
(
ResourceNotFoundException
ex
)
{
throw
ex
;
}
catch
(
Exception
ex
)
{
// Manejo de cualquier error en el servidor
throw
new
RuntimeException
(
"Error al buscar el registro con ID: "
+
id
);
}
}
@Override
public
List
<
DtoUzyTavInstProy
>
ListarRegistros
()
{
try
{
List
<
ModelUzyTavInstProy
>
entities
=
daoUzyTavInstProy
.
findAll
();
return
mapper
.
entitiesToDtos
(
entities
);
}
catch
(
Exception
ex
)
{
throw
new
RuntimeException
(
"Error al listar los registros: "
+
ex
.
getMessage
());
}
}
@Override
public
List
<
DtoUzyTavInstProy
>
obtenerRegistrosTavInsituc
(
Long
uzytavinstituc_id
)
{
try
{
List
<
ModelUzyTavInstProy
>
entities
=
daoUzyTavInstProy
.
obtenerRegistrosTavInsituc
(
uzytavinstituc_id
);
return
mapper
.
entitiesToDtos
(
entities
);
}
catch
(
Exception
ex
)
{
throw
new
RuntimeException
(
"Error al listar los registros: "
+
ex
.
getMessage
());
}
}
@Override
public
DtoUzyTavInstProy
guardar
(
DtoUzyTavInstProy
dtoUzyTavInstProy
)
{
try
{
ModelUzyTavInstProy
entity
=
mapper
.
dtoToEntity
(
dtoUzyTavInstProy
);
ModelUzyTavInstProy
nuevoEntity
=
daoUzyTavInstProy
.
save
(
entity
);
return
mapper
.
entityToDto
(
nuevoEntity
);
}
catch
(
DataIntegrityViolationException
ex
)
{
throw
ex
;
}
catch
(
Exception
ex
)
{
// Manejo para otras excepciones
throw
new
RuntimeException
(
"Error al guardar el registro: "
+
ex
.
getMessage
());
}
}
@Override
public
DtoUzyTavInstProy
editar
(
Long
id
,
DtoUzyTavInstProy
dtoUzyTavInstProy
)
{
if
(
id
<=
0
)
{
throw
new
IllegalArgumentException
(
"El ID del registro debe ser válido y mayor que cero."
);
}
try
{
ModelUzyTavInstProy
entity
=
daoUzyTavInstProy
.
findById
(
id
)
.
orElseThrow
(()
->
new
ResourceNotFoundException
(
MESSAGE
+
id
));
if
(
entity
!=
null
)
{
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_detaotro
()
!=
null
)
{
entity
.
setUzytavinstproy_detaotro
(
dtoUzyTavInstProy
.
getUzytavinstproy_detaotro
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_declaracion
()
!=
null
)
{
entity
.
setUzytavinstproy_declaracion
(
dtoUzyTavInstProy
.
getUzytavinstproy_declaracion
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_fecha_crea
()
!=
null
)
{
entity
.
setUzytavinstproy_fecha_crea
(
dtoUzyTavInstProy
.
getUzytavinstproy_fecha_crea
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_hombres
()
!=
null
)
{
entity
.
setUzytavinstproy_dir_hombres
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_hombres
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_mujeres
()
!=
null
)
{
entity
.
setUzytavinstproy_dir_mujeres
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_mujeres
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_ninios
()
!=
null
)
{
entity
.
setUzytavinstproy_dir_ninios
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_ninios
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_discapacidad
()
!=
null
)
{
entity
.
setUzytavinstproy_dir_discapacidad
(
dtoUzyTavInstProy
.
getUzytavinstproy_dir_discapacidad
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_indirectos
()
!=
null
)
{
entity
.
setUzytavinstproy_indirectos
(
dtoUzyTavInstProy
.
getUzytavinstproy_indirectos
());
}
if
(
dtoUzyTavInstProy
.
getUzytavinstproy_desc_benefic
()
!=
null
)
{
entity
.
setUzytavinstproy_desc_benefic
(
dtoUzyTavInstProy
.
getUzytavinstproy_desc_benefic
());
}
ModelUzyTavInstProy
updatedEntity
=
daoUzyTavInstProy
.
save
(
entity
);
return
mapper
.
entityToDto
(
updatedEntity
);
}
else
{
throw
new
ResourceNotFoundException
(
MESSAGE
+
id
);
}
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"Error al editar el registro: "
+
e
.
getMessage
());
}
}
@Override
public
boolean
eliminar
(
Long
id
)
{
if
(
id
==
null
||
id
<=
0
)
{
throw
new
IllegalArgumentException
(
"El ID del registro debe ser válido y mayor que cero."
);
}
try
{
ModelUzyTavInstProy
entity
=
daoUzyTavInstProy
.
findById
(
id
)
.
orElseThrow
(()
->
new
ResourceNotFoundException
(
"Registro no encontrado con ID: "
+
id
));
if
(
entity
!=
null
)
{
daoUzyTavInstProy
.
delete
(
entity
);
return
true
;
}
return
false
;
}
catch
(
ResourceNotFoundException
ex
)
{
throw
ex
;
}
catch
(
Exception
ex
)
{
throw
new
RuntimeException
(
"Error al eliminar el registro: "
+
ex
.
getMessage
());
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment