package com.ruoyi.system.domain.dto;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;

/**
 * 运营录入蓝新金流凭证入参。
 *
 * @author ruoyi
 * @date 2026-06-22
 */
@Data
public class StoreNewebpayCredentialDto {

    /** 门店 id */
    @NotNull(message = "门店不能为空")
    private Long storeId;

    /** 蓝新商店代号 MerchantID */
    @NotBlank(message = "商店代号不能为空")
    private String merchantId;

    /** 蓝新 HashKey（固定 32 字节） */
    @NotBlank(message = "HashKey 不能为空")
    @Size(min = 32, max = 32, message = "HashKey 必须为 32 位")
    private String hashKey;

    /** 蓝新 HashIV（固定 16 字节） */
    @NotBlank(message = "HashIV 不能为空")
    @Size(min = 16, max = 16, message = "HashIV 必须为 16 位")
    private String hashIv;

    /** 启用的支付方式：CREDIT,LINEPAY,APPLEPAY（可空，默认 CREDIT） */
    private String enabledPayments;
}
