package cn.newfeifan.mall.module.trade.controller.app.shopsettlement.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "用户 APP - 订单结算信息表，记录店铺的结算信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class AppShopSettlementRespVO {

    @Schema(description = "结算id", requiredMode = Schema.RequiredMode.REQUIRED, example = "27950")
    @ExcelProperty("结算id")
    private Long id;

    @Schema(description = "店铺id", requiredMode = Schema.RequiredMode.REQUIRED, example = "14984")
    @ExcelProperty("店铺id")
    private Long shopId;

    @Schema(description = "商户id", requiredMode = Schema.RequiredMode.REQUIRED, example = "21578")
    @ExcelProperty("商户id")
    private Long merchantId;

    @Schema(description = "销售额（积分 + 支付金额）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("销售额（积分 + 支付金额）")
    private Integer platformCollectionAmount;

    @Schema(description = "共计成本价格(高精度 + 成本)")
    @ExcelProperty("共计成本价格(高精度 + 成本)")
    private BigDecimal shopTotalHighAmount;

    @Schema(description = "平台结算ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3176")
    @ExcelProperty("平台结算ID")
    private Long ptSettlementId;

    @Schema(description = "转账凭证附件")
    @ExcelProperty("转账凭证附件")
    private String attachment;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "抵扣积分", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("抵扣积分")
    private Long shopAmount;

    @Schema(description = "账户名称", example = "张三")
    @ExcelProperty("账户名称")
    private String accountName;

    @Schema(description = "账户号码")
    @ExcelProperty("账户号码")
    private String accountNumber;

}