package com.haha.service.payment;

import com.haha.common.enums.PaymentChannel;
import lombok.Builder;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Map;

/**
 * 支付请求DTO
 */
@Data
@Builder
public class PaymentRequest {
    
    /**
     * 本地订单ID
     */
    private Long orderId;
    
    /**
     * 本地订单号
     */
    private String orderNo;
    
    /**
     * 支付金额
     */
    private BigDecimal amount;
    
    /**
     * 用户ID
     */
    private Long userId;
    
    /**
     * 支付渠道
     */
    private PaymentChannel channel;
    
    /**
     * 订单描述
     */
    private String description;
    
    /**
     * 微信openId（微信支付必填）
     */
    private String openId;
    
    /**
     * 支付宝buyerId（支付宝支付必填）
     */
    private String buyerId;
    
    /**
     * 回调通知URL
     */
    private String notifyUrl;
    
    /**
     * 扩展参数
     */
    private Map<String, String> extraParams;
}
