package com.yc.ship.module.trade.controller.admin.contract.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

@Schema(description = "管理后台 - 合同 Response VO")
@Data
@ExcelIgnoreUnannotated
public class ContractRespVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "20434")
    private Long id;

    @Schema(description = "明细ID", example = "27824")
    private Long orderId;

    @Schema(description = "订单号", example = "27824")
    @ExcelProperty("订单号")
    private String orderNo;

    @Schema(description = "合同编号")
    @ExcelProperty("合同编号")
    private String contractNo;

    @Schema(description = "自定义合同编号", example = "19023")
    @ExcelProperty("自定义合同编号")
    private String erpContractId;

    @Schema(description = "合同文件地址", example = "https://www.iocoder.cn")
    @ExcelProperty("合同文件地址")
    private String contractUrl;

    @Schema(description = "状态 0:签订中 1:已签订 2:作废中 3:已作废", example = "1")
    @ExcelProperty("状态 0:签订中 1:已签订 2:作废中 3:已作废")
    private Integer status;

    @Schema(description = "游客数量", example = "3382")
    @ExcelProperty("游客数量")
    private Integer touristsCount;

    @Schema(description = "签订人姓名", example = "芋艿")
    @ExcelProperty("签订人姓名")
    private String signerName;

    @Schema(description = "签订人手机号")
    @ExcelProperty("签订人手机号")
    private String signerMobile;

    @Schema(description = "签订时间")
    @ExcelProperty("签订时间")
    private LocalDateTime signingTime;

    @Schema(description = "经办人姓名", example = "张三")
    @ExcelProperty("经办人姓名")
    private String operateName;

    @Schema(description = "经办人手机号")
    @ExcelProperty("经办人手机号")
    private String operateMobile;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

}