package com.erp.order.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName("order_operation_logs")
public class OrderOperationLog {

    @TableId(type = IdType.AUTO)
    private Long id;

    /** 订单ID */
    private Long orderId;

    /** 操作人ID */
    private Long operatorId;

    /** 操作人名称 */
    private String operatorName;

    /** 操作类型 */
    private String action;

    /** 操作类型文本 */
    private String actionText;

    /** 操作内容 */
    private String content;

    /** 操作前状态 */
    private String beforeStatus;

    /** 操作后状态 */
    private String afterStatus;

    /** 操作前审核状态 */
    private String beforeAuditStatus;

    /** 操作后审核状态 */
    private String afterAuditStatus;

    /** IP地址 */
    private String ip;

    /** User-Agent */
    private String userAgent;

    /** 扩展数据JSON */
    private String extraData;

    /** 创建时间 */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdAt;
}
