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
f77f42cd
Commit
f77f42cd
authored
Aug 24, 2023
by
Joel Andres Molina Velez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Se modifican el servicio de editar de ServiceUzyTavConvoca
parent
c07eca0f
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
86 additions
and
9 deletions
+86
-9
UzyTavConvocaController.java
...lidad/MovilidadWS/Controller/UzyTavConvocaController.java
+6
-4
DaoUzyTavConvoca.java
.../edu/espe/movilidad/MovilidadWS/Dao/DaoUzyTavConvoca.java
+2
-1
DtoUzyTavConvoca.java
.../edu/espe/movilidad/MovilidadWS/Dto/DtoUzyTavConvoca.java
+1
-1
GlobalExceptionHandler.java
...adWS/Exceptions/Configuration/GlobalExceptionHandler.java
+5
-0
DuplicateStateException.java
...lidad/MovilidadWS/Exceptions/DuplicateStateException.java
+11
-0
IServiceUzyTavConvoca.java
...ilidadWS/Service/UzyTavConvoca/IServiceUzyTavConvoca.java
+3
-0
ServiceUzyTavConvoca.java
...vilidadWS/Service/UzyTavConvoca/ServiceUzyTavConvoca.java
+58
-3
No files found.
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Controller/UzyTavConvocaController.java
View file @
f77f42cd
...
...
@@ -2,11 +2,11 @@ package ec.edu.espe.movilidad.MovilidadWS.Controller;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavConvoca
;
import
ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavConvoca.IServiceUzyTavConvoca
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.validation.Valid
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.NoSuchElementException
;
...
...
@@ -18,10 +18,8 @@ import static ec.edu.espe.movilidad.MovilidadWS.Constant.GlobalConstants.V1_API_
@RequestMapping
(
V1_API_VERSION
+
"/convoca"
)
public
class
UzyTavConvocaController
{
private
final
IServiceUzyTavConvoca
serviceUzyTavConvoca
;
@Autowired
public
UzyTavConvocaController
(
IServiceUzyTavConvoca
serviceUzyTavConvoca
)
{
this
.
serviceUzyTavConvoca
=
serviceUzyTavConvoca
;
}
...
...
@@ -42,7 +40,7 @@ public class UzyTavConvocaController {
}
}
@PutMapping
(
"editar/{uzytavconvoca_id}"
)
@PutMapping
(
"editar
conPDF
/{uzytavconvoca_id}"
)
public
ResponseEntity
<
DtoUzyTavConvoca
>
edit
(
@PathVariable
(
"uzytavconvoca_id"
)
Long
uzytavconvocaId
,
@ModelAttribute
DtoUzyTavConvoca
dtoUzyTavConvoca
)
{
...
...
@@ -60,6 +58,10 @@ public class UzyTavConvocaController {
return
ResponseEntity
.
status
(
HttpStatus
.
INTERNAL_SERVER_ERROR
).
build
();
}
}
@PutMapping
(
"/editar/{id}"
)
public
DtoUzyTavConvoca
editar
(
@PathVariable
Long
id
,
@Valid
@RequestBody
DtoUzyTavConvoca
dtoUzyTavConvoca
)
{
return
serviceUzyTavConvoca
.
editar
(
id
,
dtoUzyTavConvoca
);
}
@GetMapping
(
"/exampleFindId/{id}"
)
public
ResponseEntity
<
DtoUzyTavConvoca
>
listarPorID
(
@PathVariable
(
"id"
)
Long
id
)
{
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Dao/DaoUzyTavConvoca.java
View file @
f77f42cd
...
...
@@ -12,6 +12,7 @@ public interface DaoUzyTavConvoca extends JpaRepository<ModelUzyTavConvoca, Long
@Query
(
"SELECT c FROM ModelUzyTavConvoca c ORDER BY c.uzytavconvoca_id DESC"
)
List
<
ModelUzyTavConvoca
>
findAll
();
@Query
(
"SELECT CASE WHEN COUNT(c) > 0 THEN true ELSE false END FROM ModelUzyTavConvoca c WHERE c.uzytavconvoca_estado IN ('A', 'I')"
)
boolean
existsByUzytavconvocaEstadoAorI
();
}
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Dto/DtoUzyTavConvoca.java
View file @
f77f42cd
...
...
@@ -19,7 +19,7 @@ public class DtoUzyTavConvoca {
@Size
(
max
=
150
)
private
String
uzytavconvoca_observacion
;
@Size
(
max
=
1
)
@Pattern
(
regexp
=
"[AI]"
,
message
=
"El campo uzytavconvoca_estado solo puede ser A=Activ
o
a; I= Inactiva"
)
@Pattern
(
regexp
=
"[AI]"
,
message
=
"El campo uzytavconvoca_estado solo puede ser A=Activa; I= Inactiva"
)
private
String
uzytavconvoca_estado
;
private
Date
uzytavconvoca_fecha_inicio
;
private
Date
uzytavconvoca_fecha_fin
;
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Exceptions/Configuration/GlobalExceptionHandler.java
View file @
f77f42cd
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Exceptions
.
Configuration
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.DuplicateStateException
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.ErrorResponse
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.InvalidArgumentException
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException
;
...
...
@@ -116,6 +117,10 @@ public class GlobalExceptionHandler {
return
ResponseEntity
.
status
(
HttpStatus
.
INTERNAL_SERVER_ERROR
)
.
body
(
"Error de entrada/salida: "
+
ex
.
getMessage
());
}
@ExceptionHandler
(
DuplicateStateException
.
class
)
public
ResponseEntity
<
String
>
handleDuplicateStateException
(
DuplicateStateException
ex
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
CONFLICT
).
body
(
ex
.
getMessage
());
}
//Se maneja la excepcion para se intenta acceder a un objeto nullo
@ExceptionHandler
(
NullPointerException
.
class
)
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Exceptions/DuplicateStateException.java
0 → 100644
View file @
f77f42cd
package
ec
.
edu
.
espe
.
movilidad
.
MovilidadWS
.
Exceptions
;
public
class
DuplicateStateException
extends
RuntimeException
{
public
DuplicateStateException
(
String
message
)
{
super
(
message
);
}
}
\ No newline at end of file
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Service/UzyTavConvoca/IServiceUzyTavConvoca.java
View file @
f77f42cd
...
...
@@ -13,8 +13,11 @@ public interface IServiceUzyTavConvoca {
DtoUzyTavConvoca
save
(
DtoUzyTavConvoca
convocatoriaDTO
)
throws
IOException
;
DtoUzyTavConvoca
edit
(
Long
uzytavconvocaId
,
DtoUzyTavConvoca
convocatoriaDTO
)
throws
IOException
;
DtoUzyTavConvoca
guardar
(
DtoUzyTavConvoca
dtoUzyTavConvoca
);
DtoUzyTavConvoca
editar
(
Long
id
,
DtoUzyTavConvoca
dtoUzyTavConvoca
);
void
eliminar
(
Long
id
);
byte
[]
obtenerContenidoPDF
(
Long
convocaId
);
String
obtenerUrlPDF
(
Long
uzytavconvocaId
);
...
...
src/main/java/ec/edu/espe/movilidad/MovilidadWS/Service/UzyTavConvoca/ServiceUzyTavConvoca.java
View file @
f77f42cd
...
...
@@ -2,6 +2,8 @@ package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavConvoca;
import
ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTavConvoca
;
import
ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavConvoca
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.DuplicateStateException
;
import
ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException
;
import
ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class.UzyTavConvocaMapper
;
import
ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavConvoca
;
import
ec.edu.espe.movilidad.MovilidadWS.Service.FileStorage.IFileStorageService
;
...
...
@@ -9,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.transaction.Transactional
;
import
java.io.IOException
;
import
java.nio.file.*
;
import
java.util.*
;
...
...
@@ -195,9 +198,61 @@ public class ServiceUzyTavConvoca implements IServiceUzyTavConvoca{
}
@Override
public
DtoUzyTavConvoca
guardar
(
DtoUzyTavConvoca
dtoUzyTavConvoca
)
{
ModelUzyTavConvoca
entityw
=
modelMapper
.
dtoToEntity
(
dtoUzyTavConvoca
);
ModelUzyTavConvoca
nuevoEntity
=
daoUzyTavConvoca
.
save
(
entityw
);
return
modelMapper
.
entityToDto
(
nuevoEntity
);
boolean
existsWithStateAorI
=
daoUzyTavConvoca
.
existsByUzytavconvocaEstadoAorI
();
if
(
existsWithStateAorI
)
{
throw
new
DuplicateStateException
(
"Solo puede haber un registro con un estado A o I"
);
}
try
{
ModelUzyTavConvoca
entityw
=
modelMapper
.
dtoToEntity
(
dtoUzyTavConvoca
);
ModelUzyTavConvoca
nuevoEntity
=
daoUzyTavConvoca
.
save
(
entityw
);
return
modelMapper
.
entityToDto
(
nuevoEntity
);
}
catch
(
Exception
ex
)
{
throw
new
RuntimeException
(
"Error al guardar el registro: "
+
ex
.
getMessage
());
}
}
@Override
@Transactional
public
DtoUzyTavConvoca
editar
(
Long
id
,
DtoUzyTavConvoca
dtoUzyTavConvoca
)
{
if
(
id
<=
0
)
{
throw
new
IllegalArgumentException
(
"El ID del registro debe ser válido y mayor que cero."
);
}
try
{
ModelUzyTavConvoca
entity
=
daoUzyTavConvoca
.
findById
(
id
).
get
();
if
(
entity
!=
null
)
{
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_nombre
()!=
null
){
entity
.
setUzytavconvoca_nombre
(
dtoUzyTavConvoca
.
getUzytavconvoca_nombre
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_observacion
()!=
null
){
entity
.
setUzytavconvoca_observacion
(
dtoUzyTavConvoca
.
getUzytavconvoca_observacion
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_estado
()!=
null
){
entity
.
setUzytavconvoca_estado
(
dtoUzyTavConvoca
.
getUzytavconvoca_estado
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_fecha_inicio
()!=
null
){
entity
.
setUzytavconvoca_fecha_inicio
(
dtoUzyTavConvoca
.
getUzytavconvoca_fecha_inicio
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_fecha_fin
()!=
null
){
entity
.
setUzytavconvoca_fecha_fin
(
dtoUzyTavConvoca
.
getUzytavconvoca_fecha_fin
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_digital_nombre
()!=
null
){
entity
.
setUzytavconvoca_digital_nombre
(
dtoUzyTavConvoca
.
getUzytavconvoca_digital_nombre
());
}
if
(
dtoUzyTavConvoca
.
getUzytavconvoca_digital_url
()!=
null
){
entity
.
setUzytavconvoca_digital_url
(
dtoUzyTavConvoca
.
getUzytavconvoca_digital_url
());
}
ModelUzyTavConvoca
updatedEntity
=
daoUzyTavConvoca
.
save
(
entity
);
return
modelMapper
.
entityToDto
(
updatedEntity
);
}
else
{
throw
new
ResourceNotFoundException
(
"No se encontró el registro con ID: "
+
id
);
}
}
catch
(
Exception
e
)
{
throw
new
ResourceNotFoundException
(
"Error al editar el registro: "
+
e
.
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