package com.yeshi.fanli.service.impl.goods;
|
|
import java.io.Serializable;
|
import java.util.List;
|
|
import javax.annotation.Resource;
|
|
import org.hibernate.HibernateException;
|
import org.hibernate.Query;
|
import org.hibernate.Session;
|
import org.springframework.cache.annotation.Cacheable;
|
import org.springframework.orm.hibernate4.HibernateCallback;
|
import org.springframework.stereotype.Service;
|
|
import com.yeshi.fanli.dao.goods.HonestDao;
|
import com.yeshi.fanli.entity.bus.recommend.Honest;
|
import com.yeshi.fanli.service.inter.goods.HonestService;
|
import com.yeshi.fanli.util.Constant;
|
|
@Service
|
public class HonestServiceImpl implements HonestService{
|
|
@Resource
|
private HonestDao dao;
|
|
public List<Honest> getHonestList() {
|
return dao.list("from Honest");
|
}
|
|
public Honest getOne(long id) {
|
return dao.find(Honest.class, id);
|
}
|
|
@Cacheable(value="goodsCache",key="'getHonestList'")
|
@Override
|
public List<Honest> getHonestListCache() {
|
return getHonestList();
|
}
|
|
@Override
|
public Integer getCount() {
|
Long count = dao.getCount("SELECT COUNT(1) FROM Honest");
|
return count.intValue();
|
}
|
|
@Override
|
public List<Honest> getHonestList(int index, String key) {
|
int start = index * Constant.PAGE_SIZE;
|
return dao.list("from Honest h where h.name like ? order by h.orderBy desc", start,
|
Constant.PAGE_SIZE, new Serializable[] { "%" + key + "%" });
|
}
|
|
@Override
|
public void deleteHonest(long id) {
|
dao.excute(new HibernateCallback() {
|
public Object doInHibernate(Session session) throws HibernateException {
|
Query query = session.createQuery("delete from Honest h where h.id = ?");
|
query.setParameter(0, id);
|
query.executeUpdate();
|
return null;
|
}
|
});
|
}
|
|
@Override
|
public void updateHonest(Honest honest) {
|
Honest find = dao.find(Honest.class, honest.getId());
|
if (find == null) {
|
return;
|
}
|
find.setName(honest.getName());
|
find.setPicture(honest.getPicture());
|
find.setUrl(honest.getUrl());
|
find.setOrderBy(honest.getOrderBy());
|
find.setJumpDetail(honest.getJumpDetail());
|
dao.update(find);
|
}
|
|
@Override
|
public Honest getHonest(long id) {
|
return dao.find(Honest.class, id);
|
}
|
|
@Override
|
public void addHonest(Honest honest) {
|
dao.save(honest);
|
}
|
|
|
}
|