package cn.iocoder.yudao.module.asset.controller.admin.returnorder.vo;

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

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

@Schema(description = "管理后台 - 还车单 Response VO")
@Data
public class ReturnOrderRespVO {

    @Schema(description = "主键")
    private Long id;

    @Schema(description = "还车单编码")
    private String orderCode;

    @Schema(description = "合同ID")
    private Long contractId;

    @Schema(description = "合同编码")
    private String contractCode;

    @Schema(description = "项目名称")
    private String projectName;

    @Schema(description = "客户ID")
    private Long customerId;

    @Schema(description = "客户名称")
    private String customerName;

    @Schema(description = "还车日期")
    private LocalDateTime returnDate;

    @Schema(description = "还车验收人")
    private String returnPerson;

    @Schema(description = "还车地点")
    private String returnLocation;

    @Schema(description = "还车原因")
    private String returnReason;

    @Schema(description = "还车原因说明")
    private String returnReasonDesc;

    @Schema(description = "退还总金额")
    private BigDecimal totalRefundAmount;

    @Schema(description = "退还保证金")
    private BigDecimal depositRefund;

    @Schema(description = "氢气退款")
    private BigDecimal hydrogenRefund;

    @Schema(description = "其他费用")
    private BigDecimal otherCharges;

    @Schema(description = "还车照片")
    private String returnPhotos;

    @Schema(description = "状态")
    private Integer status;

    @Schema(description = "审批状态")
    private Integer approvalStatus;

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

    @Schema(description = "车辆列表")
    private List<ReturnOrderVehicleVO> vehicles;

}
