WechatConfig.java 1.19 KB
package com.topdraw.config;

import cn.hutool.core.map.MapUtil;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.CollectionUtils;

import javax.naming.ConfigurationException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@Configuration
@Data
@ConfigurationProperties(prefix = "wechat", ignoreInvalidFields = true)
public class WechatConfig {

    private Map<String, String> miniprogram;

    private Map<String, String> subscribe;

    public List<Map<String, String>> getWechatAppList() throws ConfigurationException {
        Map<String, String> miniprogram = this.miniprogram;
        Map<String, String> subscribe = this.subscribe;

        List<Map<String, String>> list = new ArrayList<>();
        if (MapUtil.isNotEmpty(miniprogram)) {
            list.add(miniprogram);
        }
        if (MapUtil.isNotEmpty(subscribe)) {
            list.add(subscribe);
        }

        if (CollectionUtils.isEmpty(list)) {
            throw new ConfigurationException("配置错误,未配置微信应用");
        }

        return list;
    }
}