package com.cusc.nirvana.user.rnr.fp.dao.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.cusc.nirvana.user.rnr.fp.dao.handler.EncryptDataTypeHandler;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 用户操作日志(FpUserOperationLog)实体类
 *
 * @author yuy336
 * @since 2022-06-20 09:38:35
 */
@TableName(value = "fp_user_operation_log", autoResultMap = true)
@Data
public class FpUserOperationLogPO implements Serializable {

    private static final long serialVersionUID = -13678683714634835L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    
    /**
     * 业务主键
     */    
    @TableField("uuid")
    private String uuid;
    
    /**
     * 操作模块：用户管理
     */    
    @TableField("opt_module")
    private String optModule;
    
    /**
     * 操作行为：新增、编辑、删除、分页查询、导出等
     */    
    @TableField("opt_action")
    private String optAction;
    
    /**
     * 操作内容，对敏感数据进行脱敏
     */    
    @TableField("opt_content")
    private String optContent;
    
    /**
     * 请求ip
     */    
    @TableField("request_ip")
    private String requestIp;
    
    /**
     * 请求URL
     */    
    @TableField("request_url")
    private String requestUrl;
    
    /**
     * 请求参数
     */    
    @TableField(value = "request_parameter", typeHandler = EncryptDataTypeHandler.class)
    private String requestParameter;
    
    /**
     * 响应码
     */    
    @TableField("response_code")
    private String responseCode;
    
    /**
     * 响应提示
     */    
    @TableField("response_msg")
    private String responseMsg;
    
    /**
     * 租户编号
     */    
    @TableField("tenant_no")
    private String tenantNo;

	/**
	 * 组织id
	 */
	@TableField("org_id")
	private String orgId;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", insertStrategy = FieldStrategy.NOT_NULL, updateStrategy = FieldStrategy.NEVER)
    private Date createTime;

    /**
     * 创建人
     */
    @TableField(value = "creator", updateStrategy = FieldStrategy.NEVER)
    private String creator;
}

