Se corrigen los servicios de ModelUzyTCatalogosGenerales

parent 6b0785ff
package ec.edu.espe.movilidad.MovilidadWS.Controller; package ec.edu.espe.movilidad.MovilidadWS.Controller;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTPerfilMenu;
import ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales.IServiceUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales.IServiceUzyTCatalogosGenerales;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -16,35 +14,44 @@ import static ec.edu.espe.movilidad.MovilidadWS.Constant.GlobalConstants.V1_API_ ...@@ -16,35 +14,44 @@ import static ec.edu.espe.movilidad.MovilidadWS.Constant.GlobalConstants.V1_API_
@CrossOrigin(origins = "*") @CrossOrigin(origins = "*")
@RequestMapping(V1_API_VERSION+"/catalagosgen") @RequestMapping(V1_API_VERSION+"/catalagosgen")
public class UzyTCatalogosGeneralesController { public class UzyTCatalogosGeneralesController {
@Autowired
IServiceUzyTCatalogosGenerales serviceUzyTCatalogosGenerales; private final IServiceUzyTCatalogosGenerales serviceUzyTCatalogosGenerales;
public UzyTCatalogosGeneralesController(IServiceUzyTCatalogosGenerales serviceUzyTCatalogosGenerales) {
this.serviceUzyTCatalogosGenerales = serviceUzyTCatalogosGenerales;
}
@GetMapping("/exampleFindId/{id}") @GetMapping("/exampleFindId/{id}")
public ResponseEntity<ModelUzyTCatalogosGenerales> ListarPorID(@PathVariable Long id) { public ResponseEntity<DtoUzyTCatalogosGenerales> ListarPorID(@PathVariable Long id) {
return new ResponseEntity<>(serviceUzyTCatalogosGenerales.ListarPorID(id), HttpStatus.OK); return new ResponseEntity<>(serviceUzyTCatalogosGenerales.ListarPorID(id), HttpStatus.OK);
} }
@GetMapping("/getAll") @GetMapping("/getAll")
public ResponseEntity<List<ModelUzyTCatalogosGenerales>> ListarRegistros() { public ResponseEntity<List<DtoUzyTCatalogosGenerales>> ListarRegistros() {
return new ResponseEntity<>(serviceUzyTCatalogosGenerales.ListarRegistros(), HttpStatus.OK); return new ResponseEntity<>(serviceUzyTCatalogosGenerales.ListarRegistros(), HttpStatus.OK);
} }
@PostMapping("/guardar") @PostMapping("/guardar")
public ResponseEntity<ModelUzyTCatalogosGenerales> guardar(@RequestBody ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales) { public ResponseEntity<DtoUzyTCatalogosGenerales> guardar(@RequestBody DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales) {
return new ResponseEntity<>(serviceUzyTCatalogosGenerales.guardar(modelUzyTCatalogosGenerales), HttpStatus.OK); return new ResponseEntity<>(serviceUzyTCatalogosGenerales.guardar(dtoUzyTCatalogosGenerales), HttpStatus.OK);
} }
@PutMapping("/editar/{id}") @PutMapping("/editar/{id}")
public ResponseEntity<ModelUzyTCatalogosGenerales> editar(@PathVariable Long id, @RequestBody ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales) { public ResponseEntity<DtoUzyTCatalogosGenerales> editar(@PathVariable Long id, @RequestBody DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales) {
return new ResponseEntity<>(serviceUzyTCatalogosGenerales.editar(id, modelUzyTCatalogosGenerales), HttpStatus.OK); return new ResponseEntity<>(serviceUzyTCatalogosGenerales.editar(id, dtoUzyTCatalogosGenerales), HttpStatus.OK);
} }
@DeleteMapping("/eliminar/{id}") @DeleteMapping("/eliminar/{id}")
public ResponseEntity<Void> eliminar(@PathVariable Long id) { public ResponseEntity<String> eliminar(@PathVariable Long id){
serviceUzyTCatalogosGenerales.eliminar(id); boolean eliminado = serviceUzyTCatalogosGenerales.eliminar(id);
return ResponseEntity.ok().build(); if (eliminado) {
return ResponseEntity.ok("El registro se eliminó exitosamente.");
} else {
return ResponseEntity.notFound().build();
}
} }
} }
...@@ -2,6 +2,8 @@ package ec.edu.espe.movilidad.MovilidadWS.Dao; ...@@ -2,6 +2,8 @@ package ec.edu.espe.movilidad.MovilidadWS.Dao;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface DaoUzyTCatalogosGenerales extends JpaRepository<ModelUzyTCatalogosGenerales, Long> { public interface DaoUzyTCatalogosGenerales extends JpaRepository<ModelUzyTCatalogosGenerales, Long> {
} }
\ No newline at end of file
...@@ -3,14 +3,19 @@ package ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class; ...@@ -3,14 +3,19 @@ package ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales;
import org.modelmapper.ModelMapper; import org.modelmapper.ModelMapper;
import org.modelmapper.PropertyMap;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
import java.util.stream.Collectors;
@Component @Component
public class UzyTCatalogosGeneralesMapper { public class UzyTCatalogosGeneralesMapper {
private final ModelMapper modelMapper; private final ModelMapper modelMapper;
public UzyTCatalogosGeneralesMapper(ModelMapper modelMapper) { public UzyTCatalogosGeneralesMapper(ModelMapper modelMapper) {
this.modelMapper = modelMapper; this.modelMapper = modelMapper;
configureMappings();
} }
public DtoUzyTCatalogosGenerales entityToDto(ModelUzyTCatalogosGenerales entity) { public DtoUzyTCatalogosGenerales entityToDto(ModelUzyTCatalogosGenerales entity) {
...@@ -20,4 +25,18 @@ public class UzyTCatalogosGeneralesMapper { ...@@ -20,4 +25,18 @@ public class UzyTCatalogosGeneralesMapper {
public ModelUzyTCatalogosGenerales dtoToEntity(DtoUzyTCatalogosGenerales dto) { public ModelUzyTCatalogosGenerales dtoToEntity(DtoUzyTCatalogosGenerales dto) {
return modelMapper.map(dto, ModelUzyTCatalogosGenerales.class); return modelMapper.map(dto, ModelUzyTCatalogosGenerales.class);
} }
public List<DtoUzyTCatalogosGenerales> entitiesToDtos(List<ModelUzyTCatalogosGenerales> entities) {
return entities.stream()
.map(this::entityToDto)
.collect(Collectors.toList());
}
private void configureMappings() {
modelMapper.addMappings(new PropertyMap<ModelUzyTCatalogosGenerales, DtoUzyTCatalogosGenerales>() {
@Override
protected void configure() {
map().setUzytcata_gen_id(source.getUzytcata_gen_id());
}
});
}
} }
...@@ -16,20 +16,20 @@ public class ModelUzyTCatalogosGenerales { ...@@ -16,20 +16,20 @@ public class ModelUzyTCatalogosGenerales {
@Id @Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "uzytcatalogos_seq") @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "uzytcatalogos_seq")
@SequenceGenerator(name = "uzytcatalogos_seq", sequenceName = "SEQ_UZYTCATALOGOS", allocationSize = 1) @SequenceGenerator(name = "uzytcatalogos_seq", sequenceName = "SEQ_UZYTCATALOGOS", allocationSize = 1)
@Column(name = "uzytcata_gen_id", nullable = false) @Column(name = "uzytcata_gen_id")
private Long uzytcata_gen_id; private Long uzytcata_gen_id;
@Size(max = 1) @Size(max = 1)
@Column(name = "UZYTCATA_GEN_TIPO", length = 1) @Column(name = "uzytcata_gen_tipo", length = 1)
private String uzytcataGenTipo; private String uzytcata_gen_tipo;
@Size(max = 50) @Size(max = 50)
@Column(name = "UZYTCATA_GEN_NOMBRE", length = 50) @Column(name = "uzytcata_gen_nombre", length = 50)
private String uzytcataGenNombre; private String uzytcata_gen_nombre;
@Size(max = 1) @Size(max = 1)
@Column(name = "UZYTCATA_GEN_ESTADO", length = 1) @Column(name = "uzytcata_gen_estado", length = 1)
private String uzytcataGenEstado; private String uzytcata_gen_estado;
@OneToMany(mappedBy = "uzytcataGen") @OneToMany(mappedBy = "uzytcataGen")
private Set<ModelUzyTavProyec> uzytavproyecs = new LinkedHashSet<>(); private Set<ModelUzyTavProyec> uzytavproyecs = new LinkedHashSet<>();
......
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales; package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTPerfil;
import java.util.List; import java.util.List;
public interface IServiceUzyTCatalogosGenerales { public interface IServiceUzyTCatalogosGenerales {
public ModelUzyTCatalogosGenerales ListarPorID(Long id); DtoUzyTCatalogosGenerales ListarPorID(Long id);
public List<ModelUzyTCatalogosGenerales> ListarRegistros(); List<DtoUzyTCatalogosGenerales> ListarRegistros();
public ModelUzyTCatalogosGenerales guardar(ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales); DtoUzyTCatalogosGenerales guardar(DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales);
public ModelUzyTCatalogosGenerales editar(Long id, ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales); DtoUzyTCatalogosGenerales editar(Long id, DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales);
void eliminar(Long id); boolean eliminar(Long id);
} }
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales; package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException;
import ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class.UzyTCatalogosGeneralesMapper;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales; import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTCatalogosGenerales;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTPerfil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List; import java.util.List;
@Service @Service
public class ServiceUzyTCatalogosGenerales implements IServiceUzyTCatalogosGenerales{ public class ServiceUzyTCatalogosGenerales implements IServiceUzyTCatalogosGenerales{
@Autowired
DaoUzyTCatalogosGenerales daoUzyTCatalogosGenerales; private final DaoUzyTCatalogosGenerales daoUzyTCatalogosGenerales;
private final UzyTCatalogosGeneralesMapper mapper;
public ServiceUzyTCatalogosGenerales(DaoUzyTCatalogosGenerales daoUzyTCatalogosGenerales, UzyTCatalogosGeneralesMapper mapper) {
this.daoUzyTCatalogosGenerales = daoUzyTCatalogosGenerales;
this.mapper = mapper;
}
@Override @Override
public ModelUzyTCatalogosGenerales ListarPorID(Long id) { public DtoUzyTCatalogosGenerales ListarPorID(@PathVariable Long id) {
return daoUzyTCatalogosGenerales.findById(id).get(); ModelUzyTCatalogosGenerales entity = daoUzyTCatalogosGenerales.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + id));
return mapper.entityToDto(entity);
} }
@Override @Override
public List<ModelUzyTCatalogosGenerales> ListarRegistros() { public List<DtoUzyTCatalogosGenerales> ListarRegistros() {
return daoUzyTCatalogosGenerales.findAll(); List<ModelUzyTCatalogosGenerales> entities = daoUzyTCatalogosGenerales.findAll();
return mapper.entitiesToDtos(entities);
} }
@Override @Override
public ModelUzyTCatalogosGenerales guardar(ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales) { public DtoUzyTCatalogosGenerales guardar(DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales) {
return daoUzyTCatalogosGenerales.save(modelUzyTCatalogosGenerales); ModelUzyTCatalogosGenerales entity = mapper.dtoToEntity(dtoUzyTCatalogosGenerales);
ModelUzyTCatalogosGenerales nuevoEntity = daoUzyTCatalogosGenerales.save(entity);
return mapper.entityToDto(nuevoEntity);
} }
@Override @Override
public ModelUzyTCatalogosGenerales editar(Long id, ModelUzyTCatalogosGenerales modelUzyTCatalogosGenerales) { public DtoUzyTCatalogosGenerales editar(Long id, DtoUzyTCatalogosGenerales dtoUzyTCatalogosGenerales) {
ModelUzyTCatalogosGenerales dato = daoUzyTCatalogosGenerales.findById(id).get(); try {
//.orElseThrow(()->new ControlExcepciones("No existe el registro con el ID : " + id)); ModelUzyTCatalogosGenerales entity = daoUzyTCatalogosGenerales.findById(id).get();
//Seteamos los nuevos datos del registro if (entity != null) {
dato.setUzytcataGenTipo(modelUzyTCatalogosGenerales.getUzytcataGenTipo()); entity.setUzytcata_gen_tipo(dtoUzyTCatalogosGenerales.getUzytcata_gen_tipo());
dato.setUzytcataGenNombre(modelUzyTCatalogosGenerales.getUzytcataGenNombre()); entity.setUzytcata_gen_nombre(dtoUzyTCatalogosGenerales.getUzytcata_gen_nombre());
dato.setUzytcataGenEstado(modelUzyTCatalogosGenerales.getUzytcataGenEstado()); entity.setUzytcata_gen_estado(dtoUzyTCatalogosGenerales.getUzytcata_gen_estado());
ModelUzyTCatalogosGenerales datoActualizado = daoUzyTCatalogosGenerales.save(dato); ModelUzyTCatalogosGenerales updatedEntity = daoUzyTCatalogosGenerales.save(entity);
return datoActualizado; return mapper.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());
}
} }
@Override @Override
public void eliminar(Long id) { public boolean eliminar(Long id) {
ModelUzyTCatalogosGenerales dato = daoUzyTCatalogosGenerales.findById(id).get(); ModelUzyTCatalogosGenerales entity = daoUzyTCatalogosGenerales.findById(id).orElse(null);
//.orElseThrow(() -daoUzyTMenuntrolExcepciones("No existe el registro con el ID : " + id)); if (entity != null) {
daoUzyTCatalogosGenerales.delete(dato); daoUzyTCatalogosGenerales.delete(entity);
return true;
}
return false;
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment