peternameyakj
2024-10-15 19d0fd2c0e7860e2d5d075f926df0d190ebb34cc
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
package project.user.data.loadcache;
 
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
 
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.jdbc.core.JdbcTemplate;
 
import kernel.bo.RecordObjectMapper;
import project.redis.RedisHandler;
import project.user.UserRedisKeys;
import project.user.kyc.Kyc;
import project.user.kyc.KycHighLevel;
import project.user.token.Token;
 
public class UserLoadCacheService {
    private static final Logger logger = LoggerFactory.getLogger(UserLoadCacheService.class);
 
    private JdbcTemplate jdbcTemplate;
    private RedisHandler redisHandler;
 
    public void loadcache() {
        loadToken();
        loadKyc();
        loadKycHighLevel();
        logger.info("完成User数据加载redis");
    }
 
 
    public void loadToken() {
        List<Token> list = jdbcTemplate.query("SELECT * FROM T_TOKEN", RecordObjectMapper.newInstance(Token.class));
        for (Token token : list) {
            redisHandler.setSync(UserRedisKeys.TOKEN + token.getToken(), token.getPartyId().toString());
            redisHandler.setSync(UserRedisKeys.TOKEN_PARTY_ID + token.getPartyId().toString(), token);
        }
    }
    
    public void loadKyc() {
        List<Kyc> list = jdbcTemplate.query("SELECT * FROM T_KYC", RecordObjectMapper.newInstance(Kyc.class));
        Map<String, Object> params = new ConcurrentHashMap<String, Object>();
        for (Kyc kyc : list) {
            params.put(UserRedisKeys.KYC_PARTY_ID + kyc.getPartyId().toString(), kyc);
        }
        this.redisHandler.setBatchSync(params);
    }
 
    public void loadKycHighLevel() {
        List<KycHighLevel> list = jdbcTemplate.query("SELECT * FROM T_KYC_HIGH_LEVEL", RecordObjectMapper.newInstance(KycHighLevel.class));
        for (KycHighLevel kycHighLevel : list) {
            redisHandler.setSync(UserRedisKeys.KYC_HIGHLEVEL_PARTY_ID + kycHighLevel.getPartyId().toString(),
                    kycHighLevel);
        }
    }
 
    public void setRedisHandler(RedisHandler redisHandler) {
        this.redisHandler = redisHandler;
    }
 
 
    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }
 
}