operator login command

This commit is contained in:
Sola
2015-12-12 11:10:08 +08:00
parent 8a8281b973
commit 8b44cedf58
19 changed files with 111 additions and 188 deletions

View File

@@ -0,0 +1,26 @@
package love.sola.netsupport.sql;
import love.sola.netsupport.pojo.Operator;
import org.hibernate.Session;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
/**
* ***********************************************
* Created by Sola on 2015/12/12.
* Don't modify this source without my agreement
* ***********************************************
*/
public class TableOperator extends SQLCore {
public static boolean has(String wechat) {
try (Session s = SQLCore.sf.openSession()) {
return (long) s.createCriteria(Operator.class)
.add(Restrictions.eq(Operator.PROPERTY_WECHAT, wechat))
.setProjection(Projections.rowCount())
.uniqueResult() > 0;
}
}
}

View File

@@ -5,6 +5,7 @@ import love.sola.netsupport.pojo.Ticket;
import love.sola.netsupport.pojo.User;
import org.hibernate.Session;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import java.util.List;
@@ -27,7 +28,7 @@ public class TableTicket extends SQLCore {
public static final String COLUMN_STATUS = "status";
public static Ticket queryLatestOpen(User u) {
public static Ticket latestOpen(User u) {
try (Session s = SQLCore.sf.openSession()) {
return (Ticket) s.createCriteria(Ticket.class)
.addOrder(Order.desc(Ticket.PROPERTY_SUBMIT_TIME))
@@ -38,7 +39,7 @@ public class TableTicket extends SQLCore {
}
}
public static Ticket queryLatest(User u) {
public static Ticket latest(User u) {
try (Session s = SQLCore.sf.openSession()) {
return (Ticket) s.createCriteria(Ticket.class)
.addOrder(Order.desc(Ticket.PROPERTY_SUBMIT_TIME))
@@ -48,8 +49,18 @@ public class TableTicket extends SQLCore {
}
}
public static boolean hasOpen(User u) {
try (Session s = SQLCore.sf.openSession()) {
return (long) s.createCriteria(Ticket.class)
.add(Restrictions.eq(Ticket.PROPERTY_USER, u))
.add(Restrictions.ne(Ticket.PROPERTY_STATUS, Status.SOLVED))
.setProjection(Projections.rowCount())
.uniqueResult() > 0;
}
}
@SuppressWarnings("unchecked")
public static List<Ticket> queryUnsolvedByBlock(int b) {
public static List<Ticket> unsolvedByBlock(int b) {
try (Session s = SQLCore.sf.openSession()) {
return s.createCriteria(Ticket.class)
.createCriteria(Ticket.PROPERTY_USER)

View File

@@ -22,26 +22,26 @@ public class TableUser extends SQLCore {
public static final String COLUMN_ROOM = "room";
public static final String COLUMN_PHONE = "phone";
public static User getUserById(long id) {
public static User getById(long id) {
try (Session s = sf.openSession()) {
return s.get(User.class, id);
}
}
public static User getUserByWechat(String wechat) {
public static User getByWechat(String wechat) {
try (Session s = sf.openSession()) {
return (User) s.createCriteria(User.class).add(Restrictions.eq(User.PROPERTY_WECHAT, wechat)).uniqueResult();
}
}
public static User getUserByName(String name) {
public static User getByName(String name) {
try (Session s = sf.openSession()) {
return (User) s.createCriteria(User.class).add(Restrictions.eq(User.PROPERTY_NAME, name)).uniqueResult();
}
}
public static int updateUser(User user) {
public static int update(User user) {
try (Session s = sf.openSession()) {
s.beginTransaction();
s.update(user);