package com.ghy.common.adapay.model;

import lombok.Getter;
import lombok.Setter;

import java.util.Objects;

/**
 * Adapay商户配置
 *
 * @author HH 2022/5/20
 */
@Getter
@Setter
public class Merchant {

    /**
     * 商户唯一标识
     */
    private Long deptId;

    private String appId;

    /**
     * prod模式的 api_key
     */
    private String apiKey;

    /**
     * mock模式的 api_key
     */
    private String mockApiKey;

    /**
     * 商户发起请求时用于请求参数加签所需要的RSA私钥
     */
    private String rsaPrivateKey;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Merchant merchant = (Merchant) o;
        // deptId 和 appId 任何一个相同都视为同一个商户
        return deptId.equals(merchant.deptId) || appId.equals(merchant.appId);
    }

    @Override
    public int hashCode() {
        return Objects.hash(deptId, appId);
    }
}
