Se agregan los servicios de ServiceUzyTavProgObjEstartegico

parent b05aed6b
package ec.edu.espe.movilidad.MovilidadWS.Controller;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavProgObjEstartegico.IServiceUzyTavProgObjEstartegico;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus;
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+"/progObjecEstar")
public class UzyTavProgObjEstartegicoController {
private final IServiceUzyTavProgObjEstartegico serviceUzyTavProgObjEstartegico;
public UzyTavProgObjEstartegicoController(IServiceUzyTavProgObjEstartegico serviceUzyTavProgObjEstartegico) {
this.serviceUzyTavProgObjEstartegico = serviceUzyTavProgObjEstartegico;
}
@GetMapping("/exampleFindId/{id}")
public ResponseEntity<DtoUzyTavProgObjEstartegico> ListarPorID(@PathVariable Long id) {
return new ResponseEntity<>(serviceUzyTavProgObjEstartegico.ListarPorID(id), HttpStatus.OK);
}
@GetMapping("/getAll")
public ResponseEntity<List<DtoUzyTavProgObjEstartegico>> ListarRegistros() {
return new ResponseEntity<>(serviceUzyTavProgObjEstartegico.ListarRegistros(), HttpStatus.OK);
}
@PostMapping("/guardar")
public ResponseEntity<DtoUzyTavProgObjEstartegico> guardar(@Valid @RequestBody DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico) {
DtoUzyTavProgObjEstartegico savedDto = serviceUzyTavProgObjEstartegico.guardar(dtoUzyTavProgObjEstartegico);
return ResponseEntity.ok(savedDto);
}
@PutMapping("/editar/{id}")
public ResponseEntity<DtoUzyTavProgObjEstartegico> editar(@PathVariable Long id, @RequestBody DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico) {
return new ResponseEntity<>(serviceUzyTavProgObjEstartegico.editar(id, dtoUzyTavProgObjEstartegico), HttpStatus.OK);
}
@DeleteMapping("/eliminar/{id}")
public ResponseEntity<String> eliminar(@PathVariable Long id){
boolean eliminado = serviceUzyTavProgObjEstartegico.eliminar(id);
if (eliminado) {
return ResponseEntity.ok("El registro se eliminó exitosamente.");
} else {
return ResponseEntity.notFound().build();
}
}
}
package ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavObjetivosEstraInsti;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavPrograma_V;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavProyec;
import org.springframework.stereotype.Component;
import org.modelmapper.ModelMapper;
import javax.persistence.EntityManager;
import java.util.List;
import java.util.stream.Collectors;
@Component
public class UzyTavProgObjEstartegicoMapper {
private final ModelMapper modelMapper;
private final EntityManager entityManager;
public UzyTavProgObjEstartegicoMapper(ModelMapper modelMapper, EntityManager entityManager) {
this.modelMapper = modelMapper;
this.entityManager = entityManager;
}
public DtoUzyTavProgObjEstartegico entityToDto(ModelUzyTavProgObjEstartegico entity) {
return modelMapper.map(entity, DtoUzyTavProgObjEstartegico.class);
}
public List<DtoUzyTavProgObjEstartegico> entitiesToDtos(List<ModelUzyTavProgObjEstartegico> entities) {
return entities.stream()
.map(this::entityToDto)
.collect(Collectors.toList());
}
public ModelUzyTavProgObjEstartegico dtoToEntity(DtoUzyTavProgObjEstartegico dto) {
ModelUzyTavProgObjEstartegico entity = modelMapper.map(dto, ModelUzyTavProgObjEstartegico.class);
Long estraInstiID = dto.getUZYTAVOBJETIVOS_ESTRA_INSTI_ID();
Long programaID = dto.getUZYTAVPROGRAMA_V_ID();
Long proyectoID = dto.getUZYTAVPROYEC_ID();
if(estraInstiID != null){
ModelUzyTavObjetivosEstraInsti estraInsti = entityManager.find(ModelUzyTavObjetivosEstraInsti.class, estraInstiID);
entity.setUzytavobjetivosEstraInsti(estraInsti);
}
if(programaID != null){
ModelUzyTavPrograma_V programaV = entityManager.find(ModelUzyTavPrograma_V.class, programaID);
entity.setUzytavprograma_v(programaV);
}
if(proyectoID != null){
ModelUzyTavProyec proyec = entityManager.find(ModelUzyTavProyec.class, proyectoID);
entity.setUzytavproyec(proyec);
}
return entity;
}
}
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavProgObjEstartegico;
import java.util.List;
public interface IServiceUzyTavProgObjEstartegico {
DtoUzyTavProgObjEstartegico ListarPorID(Long id);
List<DtoUzyTavProgObjEstartegico> ListarRegistros();
DtoUzyTavProgObjEstartegico guardar(DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico);
DtoUzyTavProgObjEstartegico editar(Long id, DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico);
boolean eliminar(Long id);
}
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavProgObjEstartegico;
import ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException;
import ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class.UzyTavProgObjEstartegicoMapper;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavProgObjEstartegico;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ServiceUzyTavProgObjEstartegico implements IServiceUzyTavProgObjEstartegico{
private final DaoUzyTavProgObjEstartegico daoUzyTavProgObjEstartegico;
private final UzyTavProgObjEstartegicoMapper mapper;
public ServiceUzyTavProgObjEstartegico(DaoUzyTavProgObjEstartegico daoUzyTavProgObjEstartegico, UzyTavProgObjEstartegicoMapper mapper) {
this.daoUzyTavProgObjEstartegico = daoUzyTavProgObjEstartegico;
this.mapper = mapper;
}
@Override
public DtoUzyTavProgObjEstartegico ListarPorID(Long id) {
ModelUzyTavProgObjEstartegico entity = daoUzyTavProgObjEstartegico.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + id));
return mapper.entityToDto(entity);
}
@Override
public List<DtoUzyTavProgObjEstartegico> ListarRegistros() {
List<ModelUzyTavProgObjEstartegico> entities = daoUzyTavProgObjEstartegico.findAll();
return mapper.entitiesToDtos(entities);
}
@Override
public DtoUzyTavProgObjEstartegico guardar(DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico) {
ModelUzyTavProgObjEstartegico entity = mapper.dtoToEntity(dtoUzyTavProgObjEstartegico);
ModelUzyTavProgObjEstartegico nuevoEntity = daoUzyTavProgObjEstartegico.save(entity);
return mapper.entityToDto(nuevoEntity);
}
@Override
public DtoUzyTavProgObjEstartegico editar(Long id, DtoUzyTavProgObjEstartegico dtoUzyTavProgObjEstartegico) {
return null;
}
@Override
public boolean eliminar(Long id) {
ModelUzyTavProgObjEstartegico entity = daoUzyTavProgObjEstartegico.findById(id).orElse(null);
if (entity != null) {
daoUzyTavProgObjEstartegico.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