package cn.iocoder.yudao.module.order.dal.dataobject.approval;

import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 订单相关审核详情 DO
 *
 * @author 郑屹
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("ecw_order_approval")
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class OrderApprovalDO extends BaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long orderApprovalId;
    /**
     * 订单ID
     */
    private Long orderId;
    /**
     * 流程表单实例ID
     */
    private String formId;
    /**
     * 类型 详见order_approval_type：
     * 1 特价优惠 2 管理折扣  3 佣金申请 4 重货优惠 5 泡货优惠 6 拆单
     * 7 控货订单放货修改 8 控货订单反复核 9 控货订单已放货记录调货审批 10 控货订单取消放货
     * 11 合单申请 12 费用申请 13 调仓申请 14 订单修改 18 预装审核 19 封柜审核
     * 22 入仓修改 23 退仓
     *
     * 41 批量费用申请
     *
     * 61 修改放货限制  62 海外仓修改申请
     */
    private Integer type;
    /**
     * 跟进业务员
     */
    private String followUpSalesmanId;
    /**
     * 审核内容详情
     */
    private String details;
    /**
     * 状态：1 处理中 2 通过 3 不通过 4 取消
     */
    private Integer status;
    /**
     * 处理结果
     */
    private String processingResults;
    /**
     * 结束人
     */
    private String finishBy;
    /**
     * 结束时间
     */
    private Date finishTime;

    @TableField(exist = false)
    @ApiModelProperty(value = "申请人")
    private String creatorName;

}
