package com.mini.capi.biz.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 项目汇报信息表
 * </p>
 *
 * @author gaoxq
 * @since 2025-11-12
 */
@Getter
@Setter
@TableName("biz_project_report")
public class BizProjectReport implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 记录创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 汇报记录ID（主键）
     */
    @TableId(value = "report_id", type = IdType.AUTO)
    private String reportId;

    /**
     * 汇报周期
     */
    @TableField("report_cycle")
    private String reportCycle;

    /**
     * 汇报主题
     */
    @TableField("work_title")
    private String workTitle;

    /**
     * 本期工作内容
     */
    @TableField("work_content")
    private String workContent;

    /**
     * 项目进度
     */
    @TableField("progress_percent")
    private String progressPercent;

    /**
     * 存在问题
     */
    @TableField("problem_desc")
    private String problemDesc;

    /**
     * 解决方案
     */
    @TableField("solution_plan")
    private String solutionPlan;

    /**
     * 下期计划
     */
    @TableField("next_plan")
    private String nextPlan;

    /**
     * 提交时间
     */
    @TableField("report_time")
    private LocalDateTime reportTime;

    /**
     * 汇报状态
     */
    @TableField("approval_status")
    private String approvalStatus;

    /**
     * 项目编号
     */
    @TableField("project_id")
    private String projectId;

    /**
     * 人员编号
     */
    @TableField("employee_id")
    private String employeeId;

    /**
     * 租户id
     */
    @TableField("f_tenant_id")
    private String fTenantId;

    /**
     * 流程id
     */
    @TableField("f_flow_id")
    private String fFlowId;

    /**
     * 流程任务主键
     */
    @TableField("f_flow_task_id")
    private String fFlowTaskId;

    /**
     * 流程任务状态
     */
    @TableField("f_flow_state")
    private Integer fFlowState;
}
