tickettracker feature

This commit is contained in:
Sola
2015-12-18 14:58:23 +08:00
parent a3c36d265c
commit def90117e2
4 changed files with 137 additions and 1 deletions

View File

@@ -7,6 +7,9 @@ import org.hibernate.Session;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import org.hibernate.envers.AuditReader;
import org.hibernate.envers.AuditReaderFactory;
import org.hibernate.envers.query.AuditEntity;
import java.util.List;
@@ -70,4 +73,21 @@ public class TableTicket extends SQLCore {
}
}
@SuppressWarnings("unchecked")
public static List<Object[]> track(int tid) {
try (Session s = SQLCore.sf.openSession()) {
AuditReader reader = getAuditReader(s);
return reader.createQuery()
.forRevisionsOfEntity(Ticket.class, false, true)
.addOrder(AuditEntity.revisionNumber().desc())
.add(AuditEntity.id().eq(tid))
.getResultList()
;
}
}
protected static AuditReader getAuditReader(Session session) {
return AuditReaderFactory.get(session);
}
}