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

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 项目任务 工作量统计 月度明细 Response VO")
@Data
@ExcelIgnoreUnannotated
public class IotProjectTaskPlanStatisticsItemRespVO {

    @Schema(description = "年-月份", example = "2025-01")
    private String yearMonth;

    @Schema(description = "年份", example = "2025")
    private String year;

    @Schema(description = "月份", example = "02")
    private String month;

    @Schema(description = "队伍id", example = "125")
    private Long teamId;

    @Schema(description = "队伍名称", example = "HY-A1")
    @ExcelProperty("队伍名称")
    private String teamName;

    @Schema(description = "部门类型(公司级1 项目部2 队伍3)", example = "1")
    private String type;

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

    @Schema(description = "项目业务类型 (注气/钻井/修井/压裂/连油/井下)")
    @ExcelProperty("项目业务类型")
    private BigDecimal business;

    @Schema(description = "总工作量")
    @ExcelProperty("总工作量")
    private BigDecimal workloadDesign;

    @Schema(description = "已完成工作量")
    private BigDecimal finishedWorkload;

    @Schema(description = "任务创建时间")
    private LocalDateTime createTime;

    @Schema(description = "排序", example = "1")
    private Integer sort;

    // 汇总统计 工作量
    @Schema(description = "累计注气量(万方)")
    @ExcelProperty("累计注气量(万方)")
    private BigDecimal cumulativeGasInjection;

    @Schema(description = "累计进尺(米)")
    @ExcelProperty("累计进尺(米)")
    private BigDecimal cumulativeFootage;

    @Schema(description = "累计井次(井) 修井 连油")
    @ExcelProperty("累计井次(井)")
    private BigDecimal cumulativeWellCount;

    @Schema(description = "累计压裂(层) 瑞都压裂 5#项目压裂")
    @ExcelProperty("累计压裂(层)")
    private BigDecimal cumulativeFracLayer;

    @Schema(description = "工作量单位")
    @ExcelProperty("工作量单位")
    private String workloadUnit;

}