Se maneja el control de excepciones en ServiceUzyTLineaOperativa

parent 808c8437
......@@ -10,7 +10,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ServiceUzyTLineaOperativa implements IServiceUzyTLineaOperativa{
public class ServiceUzyTLineaOperativa implements IServiceUzyTLineaOperativa {
private final DaoUzyTLineaOperativa daoUzyTLineaOperativa;
private final UzyTLineaOperativaMapper mapper;
......@@ -22,51 +22,81 @@ public class ServiceUzyTLineaOperativa implements IServiceUzyTLineaOperativa{
@Override
public DtoUzyTLineaOperativa ListarPorID(Long id) {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + id));
return mapper.entityToDto(entity);
if (id <= 0) {
throw new IllegalArgumentException("El parámetro 'id' debe ser un valor positivo.");
}
try {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + 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<DtoUzyTLineaOperativa> ListarRegistros() {
List<ModelUzyTLineaOperativa> entities = daoUzyTLineaOperativa.findAll();
return mapper.entitiesToDtos(entities);
try {
List<ModelUzyTLineaOperativa> entities = daoUzyTLineaOperativa.findAll();
return mapper.entitiesToDtos(entities);
} catch (Exception ex) {
throw new RuntimeException("Error al listar los registros: " + ex.getMessage());
}
}
@Override
public DtoUzyTLineaOperativa guardar(DtoUzyTLineaOperativa dtoUzyTLineaOperativa) {
ModelUzyTLineaOperativa entity = mapper.dtoToEntity(dtoUzyTLineaOperativa);
ModelUzyTLineaOperativa nuevoEntity = daoUzyTLineaOperativa.save(entity);
return mapper.entityToDto(nuevoEntity);
try {
ModelUzyTLineaOperativa entity = mapper.dtoToEntity(dtoUzyTLineaOperativa);
ModelUzyTLineaOperativa nuevoEntity = daoUzyTLineaOperativa.save(entity);
return mapper.entityToDto(nuevoEntity);
} catch (Exception ex) {
throw new RuntimeException("Error al guardar el registro: " + ex.getMessage());
}
}
@Override
public DtoUzyTLineaOperativa editar(Long id, DtoUzyTLineaOperativa dtoUzyTLineaOperativa) {
if (id <= 0) {
throw new IllegalArgumentException("El ID del registro debe ser válido y mayor que cero.");
}
try {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id).get();
if (entity != null) {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + id));
if (dtoUzyTLineaOperativa.getUzytavlineaoperativa_ESTADO() != null) {
entity.setUzytavlineaoperativa_ESTADO(dtoUzyTLineaOperativa.getUzytavlineaoperativa_ESTADO());
}
if (dtoUzyTLineaOperativa.getUzytavlineaoperativa_DESCRIP() != null) {
entity.setUzytavlineaoperativa_DESCRIP(dtoUzyTLineaOperativa.getUzytavlineaoperativa_DESCRIP());
ModelUzyTLineaOperativa updatedEntity = daoUzyTLineaOperativa.save(entity);
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());
ModelUzyTLineaOperativa updatedEntity = daoUzyTLineaOperativa.save(entity);
return mapper.entityToDto(updatedEntity);
} catch (ResourceNotFoundException ex) {
throw ex;
} catch (Exception ex) {
throw new RuntimeException("Error al editar el registro -> " + ex.getMessage());
}
}
@Override
public boolean eliminar(Long id) {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id).orElse(null);
if (entity != null) {
daoUzyTLineaOperativa.delete(entity);
return true;
if (id == null || id <= 0) {
throw new IllegalArgumentException("El ID del registro debe ser válido y mayor que cero.");
}
try {
ModelUzyTLineaOperativa entity = daoUzyTLineaOperativa.findById(id).orElseThrow(() -> new ResourceNotFoundException("Registro no encontrado con ID: " + id));
if (entity != null) {
daoUzyTLineaOperativa.delete(entity);
return true;
}
return false;
} catch (ResourceNotFoundException ex) {
throw ex;
} catch (Exception ex) {
throw new RuntimeException("Error al eliminar el registro: " + ex.getMessage());
}
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