CashierOrderVO.java 1.97 KB
package com.diligrp.cashier.boss.domain;

import com.diligrp.cashier.pipeline.type.ChannelType;

import java.util.List;

public class CashierOrderVO {
    // 交易号
    private final String tradeId;
    // 业务系统用户标识
    private final String userId;
    // 商品描述
    private final String goods;
    // 付款金额-元
    private final String amount;
    // 页面回调地址
    private final String redirectUrl;
    // 支付通道
    private final List<PaymentPipeline> pipelines;

    public CashierOrderVO(String tradeId, String userId, String goods, String amount,
                          String redirectUrl, List<PaymentPipeline> pipelines) {
        this.tradeId = tradeId;
        this.userId = userId;
        this.goods = goods;
        this.amount = amount;
        this.redirectUrl = redirectUrl;
        this.pipelines = pipelines;
    }

    public String getTradeId() {
        return tradeId;
    }

    public String getUserId() {
        return userId;
    }

    public String getGoods() {
        return goods;
    }

    public String getAmount() {
        return amount;
    }

    public String getRedirectUrl() {
        return redirectUrl;
    }

    public List<PaymentPipeline> getPipelines() {
        return pipelines;
    }

    public static class PaymentPipeline {
        // 支付通道
        private final Long pipelineId;
        // 支付渠道
        private final Integer channelId;
        // 支付渠道名称
        private final String channelName;

        public PaymentPipeline(Long pipelineId, ChannelType channelType) {
            this.pipelineId = pipelineId;
            this.channelId = channelType.getCode();
            this.channelName = channelType.getName();
        }

        public Long getPipelineId() {
            return pipelineId;
        }

        public Integer getChannelId() {
            return channelId;
        }

        public String getChannelName() {
            return channelName;
        }
    }
}