package cn.iocoder.yudao.module.asset.dal.dataobject.returnorder;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

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

/**
 * 还车单 DO
 */
@TableName("asset_return_order")
@KeySequence("asset_return_order_seq")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ReturnOrderDO extends BaseDO {

    @TableId
    private Long id;
    private String orderCode;
    private Long contractId;
    private String contractCode;
    private String projectName;
    private Long customerId;
    private String customerName;
    private LocalDateTime returnDate;
    private String returnPerson;
    private String returnLocation;
    private String returnReason;
    private String returnReasonDesc;
    private BigDecimal totalRefundAmount;
    private BigDecimal depositRefund;
    private BigDecimal hydrogenRefund;
    private BigDecimal otherCharges;
    private String returnPhotos;
    /**
     * 状态（0=待验车 1=验车完成 2=已结算）
     */
    private Integer status;
    private Integer approvalStatus;
    private String bpmInstanceId;
    /**
     * 来源：1=手动 2=替换车触发
     */
    private Integer sourceType;
    /**
     * 来源业务ID
     */
    private Long sourceId;
    /**
     * 关联交车单ID
     */
    private Long deliveryOrderId;

}
