package com.storlead.sales.config.oss;

import com.storlead.framework.common.util.OssBootUtil;
import com.storlead.system.pojo.entity.SystemOssConfigEntity;
import com.storlead.system.service.SystemOssConfigService;
import javax.annotation.Resource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Objects;

@Configuration
public class OssBootConfiguration {

    @Resource
    private SystemOssConfigService ossConfigService;

//    @Resource
//    private AccessSecretConfigService accessSecretConfigService;
    @Bean
    public void initOssBootConfiguration() {
        SystemOssConfigEntity  systemOssConfig = ossConfigService.getById(1);
        if (Objects.nonNull(systemOssConfig)) {
            OssBootUtil.setLoading(true);
            OssBootUtil.setEndPoint(systemOssConfig.getEndPoint());
            OssBootUtil.setAccessKeyId(systemOssConfig.getAccessKeyId());
            OssBootUtil.setAccessKeySecret(systemOssConfig.getAccessKeySecret());
            OssBootUtil.setBucketName(systemOssConfig.getBucketName());
        } else {
            OssBootUtil.setLoading(false);
        }
    }
//
//    @Bean
//    public void initOssBootConfiguration() {
//
//        // AccessSecretConfigEntity accessSecret = accessSecretConfigService.getBindAccessSecretConfig("ali_oss_sales");
//        SystemOssConfigEntity  systemOssConfig = ossConfigService.getById(1);
//        if (Objects.nonNull(accessSecret)) {
//            AccessKeyEncryptor encryptor = AccessKeyEncryptor.getAccessKeyEncryptor(accessSecret.getEncrypPassKey());
//
//            OssBootUtil.setLoading(true);
//            OssBootUtil.setEndPoint(accessSecret.getEndPoint());
//            OssBootUtil.setAccessKeyId(encryptor.decrypt(accessSecret.getAccessKeyId()));
//            OssBootUtil.setAccessKeySecret(encryptor.decrypt(accessSecret.getAccessKeySecret()));
//            OssBootUtil.setBucketName(accessSecret.getBucketName());
//        } else {
//            OssBootUtil.setLoading(false);
//        }
//    }
}
