package com.jsowell.pile.dto;

import com.jsowell.pile.domain.MemberPlateNumberRelation;
import com.jsowell.pile.domain.PileAuthCard;
import com.jsowell.pile.vo.uniapp.customer.PileConnectorDetailVO;
import com.jsowell.pile.vo.web.BillingTemplateVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 生成订单dto
 * start_pile_charge
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class GenerateOrderDTO extends BasicPileDTO{
	private static final long serialVersionUID = -1374766807594759104L;
	/**
	 * 会员id
	 */
	private String memberId;

	/**
	 * token
	 */
	private String memberToken;

	/**
	 * 启动方式（0-后管启动；1-用户app启动）
	 * 0-后管启动；1-用户app启动；2-卡启动；3-离线卡启动; 4-联联平台启动; 5-车辆vin码启动
	 */
	private String startMode;

	/**
	 * 支付方式 1-余额支付；3-白名单支付；4-微信支付；5-支付宝支付
	 */
	private String payMode;

	/**
	 * 充电金额
	 */
	private BigDecimal chargeAmount;

	/**
	 * 充电桩枪口信息
	 */
	private PileConnectorDetailVO pileConnector;

	/**
	 * 计费模板相关信息
	 */
	private BillingTemplateVO billingTemplate;

	/**
	 * 启动类型
	 * @see com.jsowell.common.enums.ykc.StartTypeEnum
	 */
	private String startType;

	/**
	 * 预约开始时间
	 */
	private String reservedStartTime;

	/**
	 * 预约结束时间
	 */
	private String reservedEndTime;

	/**
	 * 使用刷卡创建订单时有值
	 */
	private PileAuthCard pileAuthCardInfo;

	/**
	 * vin启动有值
	 */
	private MemberPlateNumberRelation MemberPlateNumberRelation;

	/**
	 * 车牌号码
	 */
	private String plateNumber;

	/**
	 * 站点id
	 */
	private String stationId;

	/**
	 * 微信小程序appId
	 */
	private String appId;

	/**
	 * 启动时soc
	 */
	private String startSoc;
}
