Se agregan los ServiceUzyTavObjPlanVinvula del ModelUzyTavObjPlanVinvula

parent dd1d16bb
package ec.edu.espe.movilidad.MovilidadWS.Controller;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavObjPlanVinvula.IServiceUzyTavObjPlanVinvula;
import org.springframework.web.bind.annotation.*;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
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 + "/objplanvinvula")
public class UzyTavObjPlanVinvulaController {
private final IServiceUzyTavObjPlanVinvula serviceUzyTavObjPlanVinvula;
public UzyTavObjPlanVinvulaController(IServiceUzyTavObjPlanVinvula serviceUzyTavObjPlanVinvula) {
this.serviceUzyTavObjPlanVinvula = serviceUzyTavObjPlanVinvula;
}
@GetMapping("/exampleFindId/{id}")
public ResponseEntity<DtoUzyTavObjPlanVinvula> ListarPorID(@PathVariable Long id) {
return new ResponseEntity<>(serviceUzyTavObjPlanVinvula.ListarPorID(id), HttpStatus.OK);
}
@GetMapping("/getAll")
public ResponseEntity<List<DtoUzyTavObjPlanVinvula>> ListarRegistros() {
return new ResponseEntity<>(serviceUzyTavObjPlanVinvula.ListarRegistros(), HttpStatus.OK);
}
@PostMapping("/guardar")
public ResponseEntity<DtoUzyTavObjPlanVinvula> guardar(@Valid @RequestBody DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula) {
DtoUzyTavObjPlanVinvula savedDto = serviceUzyTavObjPlanVinvula.guardar(dtoUzyTavObjPlanVinvula);
return ResponseEntity.ok(savedDto);
}
@PutMapping("/editar/{id}")
public ResponseEntity<DtoUzyTavObjPlanVinvula> editar(@PathVariable Long id, @RequestBody DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula) {
return new ResponseEntity<>(serviceUzyTavObjPlanVinvula.editar(id, dtoUzyTavObjPlanVinvula), HttpStatus.OK);
}
@DeleteMapping("/eliminar/{id}")
public ResponseEntity<String> eliminar(@PathVariable Long id) {
boolean eliminado = serviceUzyTavObjPlanVinvula.eliminar(id);
if (eliminado) {
return ResponseEntity.ok("El registro se eliminó exitosamente.");
} else {
return ResponseEntity.notFound().build();
}
}
}
...@@ -5,8 +5,8 @@ import lombok.Data; ...@@ -5,8 +5,8 @@ import lombok.Data;
@Data @Data
public class DtoUzyTavObjPlanVinvula { public class DtoUzyTavObjPlanVinvula {
private Long UZYTAVOBJ_PLAN_VINVULA_ID; private Long uzytavobj_plan_vinvula_id;
private String UZYTAVOBJ_PLAN_VINVULA_DESCRIPCION; private String uzytavobj_plan_vinvula_descripcion;
private Long UZYTAVOBJ_PLAN_VINVULA_ORDEN; private Integer uzytavobj_plan_vinvula_orden;
} }
package ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavObjPlanVinvula;
import org.modelmapper.ModelMapper;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.stream.Collectors;
@Component
public class UzyTavObjPlanVinvulaMapper {
private final ModelMapper modelMapper;
public UzyTavObjPlanVinvulaMapper(ModelMapper modelMapper) {
this.modelMapper = modelMapper;
}
public DtoUzyTavObjPlanVinvula entityToDto(ModelUzyTavObjPlanVinvula entity) {
return modelMapper.map(entity, DtoUzyTavObjPlanVinvula.class);
}
public ModelUzyTavObjPlanVinvula dtoToEntity(DtoUzyTavObjPlanVinvula dto) {
return modelMapper.map(dto, ModelUzyTavObjPlanVinvula.class);
}
public List<DtoUzyTavObjPlanVinvula> entitiesToDtos(List<ModelUzyTavObjPlanVinvula> entities) {
return entities.stream()
.map(this::entityToDto)
.collect(Collectors.toList());
}
}
...@@ -11,19 +11,19 @@ import java.util.Set; ...@@ -11,19 +11,19 @@ import java.util.Set;
@Getter @Getter
@Setter @Setter
@Entity @Entity
@Table(name = "UZYTAVOBJ_PLAN_VINVULA", schema = "UTIC1") @Table(name = "uzytavobj_plan_vinvula", schema = "UTIC1")
public class ModelUzyTavObjPlanVinvula { public class ModelUzyTavObjPlanVinvula {
@Id @Id
@Column(name = "UZYTAVOBJ_PLAN_VINVULA_ID") @Column(name = "uzytavobj_plan_vinvula_id")
private Long UZYTAVOBJ_PLAN_VINVULA_ID; private Long uzytavobj_plan_vinvula_id;
@Size(max = 500) @Size(max = 500)
@Column(name = "UZYTAVOBJ_PLAN_VINVULA_DESCRIPCION", length = 500) @Column(name = "uzytavobj_plan_vinvula_descripcion", length = 500)
private String UZYTAVOBJ_PLAN_VINVULA_DESCRIPCION; private String uzytavobj_plan_vinvula_descripcion;
@Column(name = "UZYTAVOBJ_PLAN_VINVULA_ORDEN") @Column(name = "uzytavobj_plan_vinvula_orden")
private Long UZYTAVOBJ_PLAN_VINVULA_ORDEN; private Integer uzytavobj_plan_vinvula_orden;
//RELACIÓN CON ModelUzyTavPlanVPrograma- TABLA HIJA //RELACIÓN CON ModelUzyTavPlanVPrograma- TABLA HIJA
@JsonIgnore @JsonIgnore
......
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavObjPlanVinvula;
import java.util.List;
public interface IServiceUzyTavObjPlanVinvula {
DtoUzyTavObjPlanVinvula ListarPorID(Long id);
List<DtoUzyTavObjPlanVinvula> ListarRegistros();
DtoUzyTavObjPlanVinvula guardar(DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula);
DtoUzyTavObjPlanVinvula editar(Long id, DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula);
boolean eliminar(Long id);
}
package ec.edu.espe.movilidad.MovilidadWS.Service.UzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Dao.DaoUzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Dto.DtoUzyTavObjPlanVinvula;
import ec.edu.espe.movilidad.MovilidadWS.Exceptions.ResourceNotFoundException;
import ec.edu.espe.movilidad.MovilidadWS.Mapper.Components_Class.UzyTavObjPlanVinvulaMapper;
import ec.edu.espe.movilidad.MovilidadWS.Model.ModelUzyTavObjPlanVinvula;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ServiceUzyTavObjPlanVinvula implements IServiceUzyTavObjPlanVinvula {
private final UzyTavObjPlanVinvulaMapper mapper;
private final DaoUzyTavObjPlanVinvula daoUzyTavObjPlanVinvula;
public ServiceUzyTavObjPlanVinvula(UzyTavObjPlanVinvulaMapper mapper, DaoUzyTavObjPlanVinvula daoUzyTavObjPlanVinvula) {
this.mapper = mapper;
this.daoUzyTavObjPlanVinvula = daoUzyTavObjPlanVinvula;
}
@Override
public DtoUzyTavObjPlanVinvula ListarPorID(Long id) {
ModelUzyTavObjPlanVinvula entity = daoUzyTavObjPlanVinvula.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("No se encontró el registro con ID: " + id));
return mapper.entityToDto(entity);
}
@Override
public List<DtoUzyTavObjPlanVinvula> ListarRegistros() {
List<ModelUzyTavObjPlanVinvula> entities = daoUzyTavObjPlanVinvula.findAll();
return mapper.entitiesToDtos(entities);
}
@Override
public DtoUzyTavObjPlanVinvula guardar(DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula) {
ModelUzyTavObjPlanVinvula entity = mapper.dtoToEntity(dtoUzyTavObjPlanVinvula);
ModelUzyTavObjPlanVinvula nuevoEntity = daoUzyTavObjPlanVinvula.save(entity);
return mapper.entityToDto(nuevoEntity);
}
@Override
public DtoUzyTavObjPlanVinvula editar(Long id, DtoUzyTavObjPlanVinvula dtoUzyTavObjPlanVinvula) {
try {
ModelUzyTavObjPlanVinvula entity = daoUzyTavObjPlanVinvula.findById(id).get();
//Seteamos los nuevos datos del registro
if (entity != null) {
entity.setUzytavobj_plan_vinvula_descripcion(dtoUzyTavObjPlanVinvula.getUzytavobj_plan_vinvula_descripcion());
entity.setUzytavobj_plan_vinvula_orden(dtoUzyTavObjPlanVinvula.getUzytavobj_plan_vinvula_orden());
ModelUzyTavObjPlanVinvula updatedEntity = daoUzyTavObjPlanVinvula.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());
}
}
@Override
public boolean eliminar(Long id) {
ModelUzyTavObjPlanVinvula entity = daoUzyTavObjPlanVinvula.findById(id).orElse(null);
if (entity != null) {
daoUzyTavObjPlanVinvula.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