package com.kexue.skills.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 支付配置类
 */
@Component
@ConfigurationProperties(prefix = "payment")
@Data
public class PaymentConfig {
    // 微信支付配置
    private WechatPayConfig wechat;
    // 支付宝支付配置
    private AlipayConfig alipay;

    /**
     * 微信支付配置
     */
    @Data
    public static class WechatPayConfig {
        // 应用ID
        private String appId;
        // 商户号
        private String mchId;
        // 商户密钥
        private String mchKey;
        // 商户API证书序列号
        private String mchSerialNo;
        // 商户私钥文件路径
        private String privateKeyPath;
        // 微信服务器地址
        private String domain;
        // 支付回调地址
        private String notifyUrl;
        // 支付成功跳转地址
        private String returnUrl;

    }

    /**
     * 支付宝支付配置
     */
    @Data
    public static class AlipayConfig {
        // 应用ID
        private String appId;
        // 商户私钥
        private String privateKey;
        // 支付宝公钥
        private String publicKey;
        // 支付回调地址
        private String notifyUrl;
        // 支付成功跳转地址
        private String returnUrl;
        // 签名类型
        private String signType;
        // 字符编码
        private String charset;
        // 支付宝网关
        private String gatewayUrl;

    }
}
