package pl.zgora.uz.wmie.fe.test;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.criterion.Criterion;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.ProjectionList;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import pl.zgora.uz.wmie.fe.hbm.classes.Dzial;
import pl.zgora.uz.wmie.fe.hbm.classes.Pracownik;
import pl.zgora.uz.wmie.fe.hbm.classes.Stanowisko;
import pl.zgora.uz.wmie.fe.service.DzialService;
public class DzialServiceTest extends BaseServiceTest<DzialService,Dzial>{
public DzialServiceTest() {
super(DzialService.class);
}
@Override
public List<Criterion> setCriterions() {
List<Criterion> listCriterions = new ArrayList<Criterion>();
listCriterions.add(Restrictions.isNotNull(Dzial.PROPERTY_NAZWA_DZIALU));
listCriterions.add(Restrictions.isNotNull(Dzial.PROPERTY_OBJECT_PRACOWNIKS+"."+Pracownik.PROPERTY_ID));
return listCriterions;
}
@Override
public List<Order> setOrders() {
List<Order> result = new ArrayList<Order>();
result.add(Order.desc(Dzial.PROPERTY_ID));
result.add(Order.desc(Dzial.PROPERTY_OBJECT_PRACOWNIKS + "."
+ Pracownik.PROPERTY_IMIE));
return result;
}
@Override
public ProjectionList setProjections() {
ProjectionList listProjections = Projections.projectionList();
listProjections.add(Projections.property(Dzial.PROPERTY_ID));
listProjections.add(Projections.property(Dzial.PROPERTY_OBJECT_PRACOWNIKS+"."+Pracownik.PROPERTY_IMIE));
listProjections.add(Projections.property(Dzial.PROPERTY_OBJECT_PRACOWNIKS+"."+Pracownik.PROPERTY_OBJECT_STANOWSKO+"."+Stanowisko.PROPERTY_NAZWA));
return listProjections;
}
@Override
public Dzial setObject() {
Dzial dzial = new Dzial();
dzial.setNazwaDzialu("Nowy dzial");
return dzial;
}
}