package cn.iocoder.yudao.module.pms.controller.admin.iotprojectdailyreport.vo;

import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojecttaskattrs.IotTaskAttrModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

@Schema(description = "管理后台 - 项目日报新增/修改 Request VO")
@Data
public class IotProjectDailyReportSaveReqVO {

    @Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "16328")
    private Long id;

    @Schema(description = "施工队伍id", example = "27980")
    private Long deptId;

    @Schema(description = "项目id", example = "12710")
    private Long projectId;

    @Schema(description = "任务id", example = "4714")
    private Long taskId;

    @Schema(description = "项目类别(钻井 修井 注氮 酸化压裂... )")
    private String projectClassification;

    @Schema(description = "施工开始日期")
    private LocalDateTime constructionStartDate;

    @Schema(description = "施工结束日期")
    private LocalDateTime constructionEndDate;

    @Schema(description = "下步工作计划")
    private String nextPlan;

    @Schema(description = "当日生产情况生产动态", example = "2")
    private String productionStatus;

    @Schema(description = "施工状态(数据字典)", example = "2")
    private Integer constructionStatus;

    @Schema(description = "人员情况")
    private String personnel;

    @Schema(description = "不同专业公司的扩展属性值")
    private List<IotTaskAttrModelProperty> extProperty;

    @Schema(description = "排序值")
    private Integer sort;

    @Schema(description = "备注", example = "随便")
    private String remark;

    @Schema(description = "状态(0启用 1禁用)", example = "1")
    private Integer status;

    @Schema(description = "流程实例id", example = "10815")
    private String processInstanceId;

    @Schema(description = "审批状态 未提交、审批中、审批通过、审批不通过、已取消", example = "2")
    private Integer auditStatus;

}