13693261870
昨天 32eb942e25aa366563b7f40b05a382c0c462213c
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package com.terra.system.service.sys;
 
import com.terra.system.entity.all.RedisCacheKey;
import com.terra.common.entity.all.SettingData;
import com.terra.system.entity.sys.LayerEntity;
import com.terra.common.helper.StringHelper;
import com.terra.system.mapper.sys.LayerMapper;
import com.terra.system.service.all.RedisService;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.util.List;
import java.util.concurrent.TimeUnit;
 
@Service
@SuppressWarnings("ALL")
public class LayerService implements LayerMapper {
    @Resource
    LayerMapper layerMapper;
 
    @Resource
    RedisService redisService;
 
    @Override
    public List<LayerEntity> selectLayers(String uid) {
        String key = RedisCacheKey.permsLayerKey(uid);
        Object obj = redisService.get(key);
        if (obj instanceof List<?>) {
            return (List<LayerEntity>) obj;
        }
 
        List<LayerEntity> list = layerMapper.selectLayers(uid);
        if (list != null && list.size() > 0) {
            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
        }
 
        return list;
    }
 
    @Override
    public List<LayerEntity> selectProjectLayers(String uid) {
        String key = RedisCacheKey.permsProjectLayerKey(uid);
        Object obj = redisService.get(key);
        if (obj instanceof List<?>) {
            return (List<LayerEntity>) obj;
        }
 
        List<LayerEntity> list = layerMapper.selectProjectLayers(uid);
        if (list != null && list.size() > 0) {
            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
        }
 
        return list;
    }
 
    @Override
    public Integer selectCount(String name) {
        name = StringHelper.getLikeUpperStr(name);
 
        return layerMapper.selectCount(name);
    }
 
    @Override
    public List<LayerEntity> selectByPage(String name, Integer limit, Integer offset) {
        name = StringHelper.getLikeUpperStr(name);
 
        return layerMapper.selectByPage(name, limit, offset);
    }
 
    @Override
    public List<LayerEntity> selectAll(Integer flag) {
        return layerMapper.selectAll(flag);
    }
 
    @Override
    public LayerEntity selectById(int id) {
        return layerMapper.selectById(id);
    }
 
    @Override
    public Integer selectIdByName(String name) {
        Integer id = layerMapper.selectIdByName(name);
        return null == id ? 0 : id;
    }
 
    @Override
    public Integer selectMaxOrderNumByPid(Integer pid) {
        return layerMapper.selectMaxOrderNumByPid(pid);
    }
 
    @Override
    public LayerEntity selectByResId(Integer resid) {
        return layerMapper.selectByResId(resid);
    }
 
    @Override
    public Integer insert(LayerEntity entity) {
        return layerMapper.insert(entity);
    }
 
    @Override
    public Integer inserts(List<LayerEntity> list) {
        return layerMapper.inserts(list);
    }
 
    @Override
    public Integer delete(int id) {
        return layerMapper.delete(id);
    }
 
    @Override
    public Integer deletes(List<Integer> ids) {
        return layerMapper.deletes(ids);
    }
 
    @Override
    public Integer update(LayerEntity entity) {
        return layerMapper.update(entity);
    }
 
    @Override
    public Integer updates(List<LayerEntity> list) {
        return layerMapper.updates(list);
    }
 
    public void clearCache() {
        redisService.clearKeys(RedisCacheKey.permsLayerKey(""));
    }
}