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.OrderStatusDAO; import org.taobao88.taobao.enterprise.entity.OrderStatus; import org.taobao88.taobao.enterprise.entity.OrderT; import java.util.List; /** * Created by User on 09.06.14. */ @Transactional @Repository("orderStatusDAO") public class OrderStatusDAOImpl implements OrderStatusDAO{ @Autowired SessionFactory sessionFactory; @Override public void saveStatus(OrderStatus orderStatus) { sessionFactory.getCurrentSession().save(orderStatus); } @Override public int getIdStatus(OrderStatus orderStatus) { return (Integer) sessionFactory.getCurrentSession().getIdentifier(orderStatus); } @Override public OrderStatus findStatusById(int id) { return (OrderStatus) sessionFactory.getCurrentSession().get(OrderStatus.class, id); } @Override public void updateOrderStatus(OrderStatus orderStatus) { sessionFactory.getCurrentSession().update(orderStatus); } @Override public void deleteOrderStatus(int id) { OrderStatus orderStatus = findStatusById(id); sessionFactory.getCurrentSession().delete(orderStatus); } @SuppressWarnings("unchecked") @Override public List<OrderStatus> getOrdersStatuses(List<OrderT> orderTs) { if(orderTs.size()!=0){ String query = "from OrderStatus where "; for(int i=0;i<orderTs.size();i++){ if(i<orderTs.size()-1){ query+="idOrderStatus='"+orderTs.get(i).getIdOrderStatus()+"' OR "; }else{ query+="idOrderStatus='"+orderTs.get(i).getIdOrderStatus()+"'"; } } System.out.println("ORDERSTATUSES = "+query); return sessionFactory.getCurrentSession().createQuery(query) .list(); } return null; } }