package com.jy.log.model.table;

import com.jy.log.model.entity.LogUserOperation;
import com.jy.framework.mybatis.join.QueryColumn;
import com.jy.framework.mybatis.join.Table;

public class LogUserOperationTable extends Table<LogUserOperation> {

    public static LogUserOperationTable log_user_operation = new LogUserOperationTable();
    public static LogUserOperationTable luo = log_user_operation.as("luo");

    /**
     * 用户操作日志id
     */
    public QueryColumn id = this.field(LogUserOperation::getId);

    /**
     * 方法标签
     */
    public QueryColumn moduleFlag = this.field(LogUserOperation::getModuleFlag);

    /**
     * 模块标题
     */
    public QueryColumn moduleName = this.field(LogUserOperation::getModuleName);

    /**
     * service的Bean名称
     */
    public QueryColumn serviceBeanName = this.field(LogUserOperation::getServiceBeanName);

    /**
     * 调用的方法名
     */
    public QueryColumn methodName = this.field(LogUserOperation::getMethodName);

    /**
     * 入参类名
     */
    public QueryColumn reqClasses = this.field(LogUserOperation::getReqClasses);

    /**
     * 操作人ID
     */
    public QueryColumn operatorId = this.field(LogUserOperation::getOperatorId);

    /**
     * 操作人姓名
     */
    public QueryColumn operatorName = this.field(LogUserOperation::getOperatorName);

    /**
     * 操作类型 2新增 3修改 4删除
     */
    public QueryColumn operationType = this.field(LogUserOperation::getOperationType);

    /**
     * 业务id
     */
    public QueryColumn businessId = this.field(LogUserOperation::getBusinessId);

    /**
     * 操作数据（JSON格式）
     */
    public QueryColumn operationData = this.field(LogUserOperation::getOperationData);

    /**
     * 原始数据（JSON格式）
     */
    public QueryColumn sourceData = this.field(LogUserOperation::getSourceData);

    /**
     * 操作描述
     */
    public QueryColumn description = this.field(LogUserOperation::getDescription);

    /**
     * 审核状态 0待审核 1通过 2拒绝
     */
    public QueryColumn auditStatus = this.field(LogUserOperation::getAuditStatus);

    /**
     * 审核时间
     */
    public QueryColumn auditTime = this.field(LogUserOperation::getAuditTime);

    /**
     * 备注
     */
    public QueryColumn remark = this.field(LogUserOperation::getRemark);

    /**
     * 创建者
     */
    public QueryColumn createUser = this.field(LogUserOperation::getCreateUser);

    /**
     * 创建时间
     */
    public QueryColumn createTime = this.field(LogUserOperation::getCreateTime);

    private LogUserOperationTable() {
        super(LogUserOperation.class);
    }

    private LogUserOperationTable(String alias) {
        super(LogUserOperation.class, alias);
    }

    public LogUserOperationTable as(String alias) {
        return new LogUserOperationTable(alias);
    }

}
