新版仿ok交易所-后端
1
zj
2025-07-10 f15406ac788fb4e17a630c4d48129943af89fb9c
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
package com.yami.trading.service.c2c.impl;
 
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yami.trading.bean.model.C2cPaymentMethodConfig;
import com.yami.trading.bean.model.Log;
import com.yami.trading.common.constants.RedisKeys;
import com.yami.trading.dao.c2c.C2cPaymentMethodConfigMapper;
import com.yami.trading.service.c2c.C2cPaymentMethodConfigService;
import com.yami.trading.service.system.LogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import java.text.MessageFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
 
@Service
public class C2cPaymentMethodConfigServiceImpl extends ServiceImpl<C2cPaymentMethodConfigMapper, C2cPaymentMethodConfig> implements C2cPaymentMethodConfigService {
    @Autowired
    RedisTemplate redisTemplate;
 
    @Autowired
    LogService logService;
 
    @Override
    public Map<String, String> getMethodConfigMap() {
        List<C2cPaymentMethodConfig> methodConfigList = list();
        Map<String, String> methodConfigMap = new HashMap<String, String>();
        for (int i = 0; i < methodConfigList.size(); i++) {
            C2cPaymentMethodConfig config = methodConfigList.get(i);
            if (null != config) {
                methodConfigMap.put(config.getUuid(), config.getMethodName());
            }
        }
        return methodConfigMap;
    }
 
    @Override
    @Transactional
    public C2cPaymentMethodConfig add(C2cPaymentMethodConfig cfg) {
        save(cfg);
        redisTemplate.opsForValue().set(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID + cfg.getUuid(), cfg);
        Map<String, String> map1 = (Map<String, String>) redisTemplate.opsForValue().get(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID_TYPE);
        if (null == map1) {
            map1 = new ConcurrentHashMap<String, String>();
        }
        map1.put(cfg.getUuid().toString(), String.valueOf(cfg.getMethodType()));
        redisTemplate.opsForValue().set(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID_TYPE, map1);
        return cfg;
    }
 
    @Override
    public void delete(String id) {
        C2cPaymentMethodConfig entity = getById(id);
        if (entity != null) {
            removeById(id);
            redisTemplate.delete(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID + entity.getUuid().toString());
 
            Map<String, String> map1 = (Map<String, String>)redisTemplate.opsForValue().get(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID_TYPE);
            if (map1 != null && !map1.isEmpty()) {
                map1.remove(id);
            } else {
                map1 = new ConcurrentHashMap<String, String>();
            }
            redisTemplate.opsForValue().set(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID_TYPE, map1);
        }
    }
 
    @Override
    public Map<String, String> getMethodConfigIdTypeMap() {
        Map<String, String> map = (Map<String, String>)  redisTemplate.opsForValue().get(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID_TYPE);
        if (null == map || map.isEmpty()) {
            return new HashMap<String, String>();
        }
        return map;
    }
    @Override
    public C2cPaymentMethodConfig get(String id) {
        return (C2cPaymentMethodConfig) redisTemplate.opsForValue().get(RedisKeys.C2C_PAYMENT_METHOD_CONFIG_ID + id);
    }
}