package com.yc.ship.module.trade.controller.admin.order.vo.check;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

@Schema(description = "订单核销 Request VO")
@Data
public class TradeCheckReqVO {

    @NotNull(message = "核销内容类型不能为空")
    @Schema(description = "核销内容类型 0凭证码 1订单号 2证件号 3子票 4其他", example = "1")
//    @IntEnum(value = CheckCodeTypeEnum.class, message = "核销内容类型错误")
    private Integer codeType;

    @NotEmpty(message = "核销内容不能为空")
    @Schema(description = "核销内容（订单号、门票券码、证件号、子票等）用‘,’间隔", example = "xxx")
    private String checkCodes;

    @Schema(description = "核销类型：0闸机 1后台 2PDA 3小程序 4供应商 5定时任务 6人工通道 7单资源核销 8闸机预检", example = "1")
//    @IntEnum(value = CheckTypeEnum.class, message = "核销类型错误")
    private Integer type;

    @Schema(description = "设备id", example = "007")
    private String machineId;

    @Schema(description = "设备名称")
    private String machineName;

    @Schema(description = "操作人id", example = "9527")
    private String operatorId;
    @Schema(description = "操作人")
    private String operatorName;

    @Schema(description = "是否预检(默认0核销,1不核销)", example = "0")
    private Integer isPreCheck = 0;


    @Schema(description = "通道id(核销类型为0闸机/2PDA 需要)")
    private Long channelId;

    @Schema(description = "点位Id(PDA 需要)")
    private Long pointId;

}
