Administrator
2018-10-30 c0c91fbda1ba601c4c8cb6d12fd43dfbe02eea5d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
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);
    }
    
    
}