package com.xunhong.erp.turbo.api.biz.dto.cmd;

import com.xunhong.erp.turbo.api.biz.dto.common.UploadFileItem;
import com.xunhong.erp.turbo.api.biz.dto.enums.LoadingModeEnum;
import com.xunhong.erp.turbo.base.dto.Command;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author shenyifei
 */
@Data
@Schema(title = "订单供应商更新")
@EqualsAndHashCode(callSuper = true)
public class OrderSupplierUpdateCmd extends Command {

	@Schema(title = "订单供应商ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string")
	private Long orderSupplierId;

	/**
	 * 是否上传票证
	 */
	@Schema(title = "是否上传票证")
	private Boolean invoiceUpload;

	/**
	 * 发票照片
	 */
	@Schema(title = "发票照片")
	private List<UploadFileItem> invoiceImg;

	/**
	 * 是否上传合同
	 */
	@Schema(title = "是否上传合同")
	private Boolean contractUpload;

	/**
	 * 合同照片
	 */
	@Schema(title = "合同照片")
	private List<UploadFileItem> contractImg;

	/**
	 * 是否已付定金
	 */
	@Schema(title = "是否已付定金")
	private Boolean isDepositPaid;

	/**
	 * 定金金额
	 */
	@Schema(title = "定金金额")
	private BigDecimal depositAmount;

	/**
	 * 是否付款
	 */
	@Schema(title = "是否付款")
	private Boolean isPaid;

	/**
	 * 装车模式：1_搭架子+网垫；2_纸箱+胶带+木隔板
	 */
	@Schema(title = "装车模式", description = "1_搭架子+网垫；2_纸箱+胶带+木隔板")
	private LoadingModeEnum loadingMode;
}

