package com.wzj.soopin.transaction.domain.vo;


import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.dromara.common.core.domain.model.BaseAudit;
import org.dromara.common.mybatis.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 分账规则明细
 *
 * @author wzj
 * @date 2023-03-07
 */
@Schema(description = "订单分账明细")
@Data
public class DivideDetailVO extends BaseEntity {

    /**
     * 主键
     */
    @Schema(description = "主键")
    @ExcelProperty(value = "主键", order = 1)
    private Long id;

    /**
     * 分账规则id
     */
    @Schema(description = "分账规则id")
    @ExcelProperty(value = "分账规则id", order = 2)
    private Long ruleId;

    /**
     * 分账规则明细id
     */
    @Schema(description = "分账规则明细id")
    @ExcelProperty(value = "分账规则明细id", order = 3)
    private Long ruleDetailId;

    /**
     * 金额
     */
    @Schema(description = "金额")
    @ExcelProperty(value = "金额", order = 4)
    private BigDecimal money;

    /**
     * 手续费
     */
    @Schema(description = "手续费")
    @ExcelProperty(value = "手续费", order = 5)
    private BigDecimal fee;

    /**
     * 分账完成时间
     */
    @Schema(description = "分账完成时间")
    @ExcelProperty(value = "分账完成时间", order = 5)
    private LocalDateTime separateTime;

    /**
     * 分账子单流水号
     */
    @Schema(description = "分账子单流水号")
    @ExcelProperty(value = "分账子单流水号", order = 5)
    private String separateTrade;


    /**
     * 金额分配比例
     */
    @Schema(description = "金额分配比例")
    @ExcelProperty(value = "金额分配比例", order = 5)

    private BigDecimal moneyPercent;
    /**
     * 手续费分配比例
     */
    @Schema(description = "手续费分配比例")
    @ExcelProperty(value = "手续费分配比例", order = 5)
    private BigDecimal feePercent;

    /**
     * 账户类型
     *
     * */
    private Integer type;


    @Schema(description = "账户code")
    @ExcelProperty(value = "账户code", order = 6)
    private String accountCode;
    /**
     * 账户名称
     * */
    @Schema(description = "账户名称")
    @ExcelProperty(value = "账户名称", order = 7)
    private String accountName;
    /**
     * 订单id
     * */
    @Schema(description = "订单id")
    @ExcelProperty(value = "订单id", order = 8)
    private Long orderId;

    /**
     * 订单编号
     * */
    @Schema(description = "订单编号")
    @ExcelProperty(value = "订单编号", order = 9)
    private String orderSn;


}
