package com.youlai.boot.system.model.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Getter;
import lombok.Setter;
import com.baomidou.mybatisplus.annotation.TableName;
import com.youlai.boot.common.base.BaseEntity;

import java.time.LocalDate;

/**
 * 煤矿需求管理实体对象
 *
 * @author youlaitech
 * @since 2025-07-23 14:40
 */
@Getter
@Setter
@TableName("mine_demand")
public class MineDemand extends BaseEntity {

    private static final long serialVersionUID = 1L;
    private Long id;

    /**
     * 所属片区
     */


    private String area;
    /**
     * 矿名
     */
    private String mineName;
    /**
     * 需求名称
     */
    private String demandName;
    /**
     * 需求提交人
     */
    private String submitter;
    /**
     * 运维人员
     */
    private String operationStaff;
    /**
     * 通防技术人员
     */
    private String ventilationTechStaff;
    /**
     * 需求说明
     */
    private String demandDescription;

//1、新功能需求
//2、设备接入或页面升级
//3、功能优化或问题整改
    private int type;
    /**
     * 提交时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate submitTime;
    /**
     * 计划完成时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate plannedCompleteTime;
    /**
     * 实际开始时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate actualStartTime;
    /**
     * 实际完成时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate actualCompleteTime;
    /**
     * 前端人员
     */
    private String frontendStaff;
    /**
     * 前端版本号
     */
    private String frontendVersion;
    /**
     * 后端人员
     */
    private String backendStaff;
    /**
     * 后端版本号
     */
    private String backendVersion;


    private int folderId;

    private String frontendProgress;

    private String backendProgress;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate frontendStartTime;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDate backendStartTime;

    private String operationProgress;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Float frontendComplex;
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Float backendComplex;

    private LocalDate frontendCompleteTime;

    private LocalDate backendCompleteTime;
}
