package org.taobao88.taobao.enterprise.dao.impl; import org.hibernate.SessionFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; import org.springframework.transaction.annotation.Transactional; import org.taobao88.taobao.enterprise.dao.OrderDAO; import org.taobao88.taobao.enterprise.entity.Goods; import org.taobao88.taobao.enterprise.entity.OrderT; import java.util.List; /** * Created by User on 03.06.14. */ @Transactional @Repository("orderDAO") public class OrderDAOImpl implements OrderDAO{ @Autowired SessionFactory sessionFactory; @SuppressWarnings("unchecked") @Override public List<OrderT> getOrders(int idUser) { return sessionFactory.getCurrentSession().createQuery("from OrderT where idUser=:articleId ").setParameter("articleId", idUser).list(); } @SuppressWarnings("unchecked") @Override public List<OrderT> getOrdersByPackages(int idPackage) { return sessionFactory.getCurrentSession().createQuery("from OrderT where idPackage=:articleId ").setParameter("articleId", idPackage).list(); } @SuppressWarnings("unchecked") @Override public List<OrderT> getOrdersForPack(int idUser) { return sessionFactory.getCurrentSession().createQuery("from OrderT where idUser = :articleId AND approve = 'true' ").setParameter("articleId", idUser).list(); } @SuppressWarnings("unchecked") @Override public List<OrderT> getOrdersOnStartPage(int idUser) { return sessionFactory.getCurrentSession().createQuery("from OrderT where idUser = :articleId AND approve = 'false' ").setParameter("articleId", idUser).list(); } @SuppressWarnings("unchecked") @Override public List<OrderT> getOrdersForPackages(int idPackage) { return sessionFactory.getCurrentSession().createQuery("from OrderT where idPackage=:articleId ").setParameter("articleId", idPackage).list(); } @Override public int addOrder(OrderT orderT) { sessionFactory.getCurrentSession().save(orderT); return (Integer) sessionFactory.getCurrentSession().getIdentifier(orderT); } @Override public OrderT findOrderById(int id) { return (OrderT) sessionFactory.getCurrentSession().get(OrderT.class,id); } @Override public void updateOrder(OrderT orderT) { sessionFactory.getCurrentSession().update(orderT); } @SuppressWarnings("unchecked") @Override public List<OrderT> getOrdersForAdmin() { String query = ""; query = "from OrderT where approve='true'"; return (List<OrderT>) sessionFactory.getCurrentSession().createQuery(query).list(); } @Override public void deleteOrder(int orderId) { sessionFactory.getCurrentSession().createSQLQuery("DELETE FROM ordert WHERE orderT_id = :orderT_id").setParameter("orderT_id", orderId).executeUpdate(); } @Override public OrderT findByGoods(Goods good) { return (OrderT) sessionFactory.getCurrentSession().createQuery("from OrderT where goods_id = :goods_id").setParameter("goods_id", good.getIdGoods()).uniqueResult(); } }