@Override
public Device selectById(Serializable id) {
DetachedCriteriaBuilder query = DetachedCriteriaBuilder.instance(Device.class, "de");
query.leftJoin("de.classroom.city", "city");
query.leftJoin("de.classroom", "classroom");
query.addEq("de.id", id);
query.setProjection(Projections.projectionList().add(Projections.property("de.id"), "id")
.add(Projections.property("de.partNumber"), "partNumber").add(Projections.property("de.description"), "description")
.add(Projections.property("de.qty"), "qty").add(Projections.property("de.un"), "un")
.add(Projections.property("de.location"), "location").add(Projections.property("de.modality"), "modality")
.add(Projections.property("de.pts"), "pts").add(Projections.property("de.status"), "status")
.add(Projections.property("de.remark"), "remark").add(Projections.property("city.cityName"), "cityName")
.add(Projections.property("classroom.code"), "labName").add(Projections.property("de.caliBration"), "caliBration")
.add(Projections.property("de.system"),"system").add(Projections.property("de.labId"),"labId")
);
query.getDetachedCriteria().setResultTransformer(new AliasToBeanResultTransformer(Device.class));
List<Device> devices = this.select(query);
return CollectionUtils.isNotEmpty(devices) ? devices.get(0) : null;
}
public Device selectById(Serializable id) {
DetachedCriteriaBuilder query = DetachedCriteriaBuilder.instance(Device.class, "de");
query.leftJoin("de.classroom.city", "city");
query.leftJoin("de.classroom", "classroom");
query.addEq("de.id", id);
query.setProjection(Projections.projectionList().add(Projections.property("de.id"), "id")
.add(Projections.property("de.partNumber"), "partNumber").add(Projections.property("de.description"), "description")
.add(Projections.property("de.qty"), "qty").add(Projections.property("de.un"), "un")
.add(Projections.property("de.location"), "location").add(Projections.property("de.modality"), "modality")
.add(Projections.property("de.pts"), "pts").add(Projections.property("de.status"), "status")
.add(Projections.property("de.remark"), "remark").add(Projections.property("city.cityName"), "cityName")
.add(Projections.property("classroom.code"), "labName").add(Projections.property("de.caliBration"), "caliBration")
.add(Projections.property("de.system"),"system").add(Projections.property("de.labId"),"labId")
);
query.getDetachedCriteria().setResultTransformer(new AliasToBeanResultTransformer(Device.class));
List<Device> devices = this.select(query);
return CollectionUtils.isNotEmpty(devices) ? devices.get(0) : null;
}