package com.yutou.bilibili.Services.impl;

import com.yutou.bilibili.Services.ISystemConfigService;
import com.yutou.bilibili.mybatis.dao.SConfigDao;
import com.yutou.bilibili.mybatis.model.SConfig;
import com.yutou.bilibili.mybatis.model.SConfigExample;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@Service("SystemConfigService")
public class SystemConfigImpl implements ISystemConfigService {
    @Resource
    SConfigDao configDao;
    @Override
    public String getConfig(String key) {
        SConfigExample example=new SConfigExample();
        example.createCriteria().andConfigkeyEqualTo(key);
        List<SConfig> list=configDao.selectByExample(example);
        if(list.isEmpty()) {
            return null;
        }else{
            return list.get(0).getConfigvalue();
        }
    }

    @Override
    public void setConfig(String key, String value) {
        SConfig config=new SConfig();
        if(getConfig(key)!=null){
            SConfigExample example=new SConfigExample();
            example.createCriteria().andConfigkeyEqualTo(key);
            config=configDao.selectByExample(example).get(0);
            config.setConfigvalue(value);
            configDao.updateByPrimaryKey(config);
        }else {
            config.setConfigkey(key);
            config.setConfigvalue(value);
            configDao.insert(config);
        }
    }
}
