package com.jeequan.jeepay.thirdparty.channel.lklsb2bpay.model;


import com.jeequan.jeepay.thirdparty.channel.lklsb2bpay.util.Lklsb2bpayConst;
import org.springframework.http.MediaType;

import static com.jeequan.jeepay.thirdparty.channel.lklsb2bpay.util.Lklsb2bpayConst.*;

public final class LklTkReqMethod extends ILklTkReqMethod {

    /**
     * 拉卡拉平台公钥
     */
    public static final String PUB_KEY = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCXCrnI36j2nBpZhbHvgrMZdsGOYSWigvuVaDm/FEHPcQJJsYrs/eK3Vs7XtFSezaIf95r+YD0fewLOgw31FuZOcraf5P0I/BGuvpWfstwuI28UfzNld+XzXy0YHsmo010VgwkGJrKFezQHjKD85HT57iBoEQiUt+00+X0D/rJ2MQIDAQAB";

    /**
     * 拉卡拉roshang机构私钥
     */
    public static final String PRI_KEY = "MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAJcKucjfqPacGlmFse+Csxl2wY5hJaKC+5VoOb8UQc9xAkmxiuz94rdWzte0VJ7Noh/3mv5gPR97As6DDfUW5k5ytp/k/Qj8Ea6+lZ+y3C4jbxR/M2V35fNfLRgeyajTXRWDCQYmsoV7NAeMoPzkdPnuIGgRCJS37TT5fQP+snYxAgMBAAECgYEAiKF3NjK8kXjcjSbXsyW0BdDbfoR6muuJ0bmaozMb5R8BRtCIL6HquJaaPZ4u/gheJDTDzGAaaqPIAi+jLJYudlPvKVClncKsunLNpwxwAQdZfs2r82GWaW67AwtM3JZ9U2bqfQ8ckQreIlJRlGQYcCpeuH+WNLztC4XAeo9UPxECQQD1OYARwLzdClin43S02pee/niiIiZW6rQcPJ1MtLfc0Dt5+342M+tBlGPvJ2vLWAyD4yvv7siLBdztvS4hABVbAkEAna3GwAzSQqtADPQkWbYmv3ell3sOHonJUWUQPM+OlIBoOVJ3gY/Jx47CKzLSsWLl+b8P4jvBJE+4sT1srPDcYwJAISImyr9HBXq7ZdvWzgTnDaWGeSmyEnZd5Z7PBik42o4MKzwu3nX/aHn7Urn515zK/Br6uc2CrT4ajsjL7cuMFwJBAJwBtaWKifYgjazDWbvRNyE1dgccX2njleYMgjZIfZ98NKKSb18nLtNc8cvf6wpK+ZNScJq72Gre3bOvPHkXjlUCQQDDKI/vYWivIzOS71wRO3nfajr3tIPHyHp7drxWMlqblohsWr7PTZ3RVvLza4PXx2uVgtPkMOKUHlXolj4U3mpQ";

    public static final ILklTkReqMethod TOKEN_AUDIT = new LklTkReqMethod("https://tkapi.lakala.com/auth/oauth/token", null, POST, MediaType.APPLICATION_FORM_URLENCODED);
    public static final ILklTkReqMethod AUDIT = new LklTkReqMethod("https://htkactvi.lakala.com/registration/merchant", null, POST);
    public static final ILklTkReqMethod SUB_MERC_LIST = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/open/merchant/submer", null, POST, true);

    public static final ILklTkReqMethod AUDIT_STATUS_GET = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/open/merchant/info", null, POST, true);
    public static final ILklTkReqMethod TOKEN_EDIT = new LklTkReqMethod("https://htkapi.lakala.com/auth/oauth/token", null, POST, MediaType.APPLICATION_FORM_URLENCODED);
    public static final ILklTkReqMethod RATE_GET = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/channel/customer/update/fee/" + CUSTOMER_NO_PLACE_HOLDER, CUSTOMER_NO_PLACE_HOLDER, GET);
    public static final ILklTkReqMethod RATE_CHANGE = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/channel/customer/update/fee/" + CUSTOMER_NO_PLACE_HOLDER, CUSTOMER_NO_PLACE_HOLDER, POST, EDIT);
    public static final ILklTkReqMethod SETTLE_GET = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/channel/customer/update/settle/" + CUSTOMER_NO_PLACE_HOLDER, CUSTOMER_NO_PLACE_HOLDER, GET);
    public static final ILklTkReqMethod SETTLE_CHANGE = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/channel/customer/update/settle/" + CUSTOMER_NO_PLACE_HOLDER, CUSTOMER_NO_PLACE_HOLDER, POST);
    public static final ILklTkReqMethod BASE_INFO_CHANGE = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/channel/customer/update/basic", null, POST, EDIT);
    public static final ILklTkReqMethod CHANGE_STATUS_GET = new LklTkReqMethod("https://htkapi.lakala.com/api/customer/update/review", null, GET, EDIT);
    public static final ILklTkReqMethod UPLOAD = new LklTkReqMethod("https://htkactvi.lakala.com/registration/file/upload", null, POST);

    public static final ILklTkReqMethod ADD_TERM = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/open/merchant/addTerm", null, POST);
    public static final ILklTkReqMethod MCH_AUTH_STATUS = new LklTkReqMethod("https://s2.lakala.com/api/v2/mms/sme/mrchAuthStateQuery", null, POST);

    /**
     * 拉卡拉开放平台接口，用于查询汇拓客对应的开放平台子商户号
     */
    public static final ILklTkReqMethod QUERY_SUB_MERC = new LklTkReqMethod("https://s2.lakala.com/api/v2/mms/openApi/querySubMerInfo", null, POST);

    /**
     * 复议提交
     */
    public static final ILklTkReqMethod AUDIT_RETRY = new LklTkReqMethod("https://tkapi.lakala.com/htkmerchants/open/merchant/reconsider/submit", null, POST);

    private LklTkReqMethod(String url, String templateWord, String method, MediaType contentType) {
        super(url, templateWord, method, contentType);
    }


    private LklTkReqMethod(String url, String templateWord, String method) {
        super(url, templateWord, method, Lklsb2bpayConst.AUDIT);
    }

    private LklTkReqMethod(String url, String templateWord, String method, String urlFlag) {
        super(url, templateWord, method, urlFlag);
    }

    private LklTkReqMethod(String url, String templateWord, String method, boolean encrypt) {
        super(url, templateWord, method, encrypt, Lklsb2bpayConst.AUDIT);
    }
}
