package cn.iocoder.yudao.module.mes.controller.admin.pro.maintenanceplan.vo; import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; @Schema(description = "管理后台 - MES 电力作业计划 Response VO") @Data @ExcelIgnoreUnannotated public class MesProMaintenancePlanRespVO { @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @ExcelProperty("编号") private Long id; @Schema(description = "计划编码", example = "MP20260818001") @ExcelProperty("计划编码") private String code; @Schema(description = "计划名称", example = "8月变电运维计划") @ExcelProperty("计划名称") private String name; @Schema(description = "计划类型", example = "3") @ExcelProperty(value = "计划类型", converter = DictConvert.class) @DictFormat(cn.iocoder.yudao.module.mes.enums.DictTypeConstants.MES_PRO_MAINTENANCE_PLAN_TYPE) private Integer planType; @Schema(description = "站点", example = "220kV城东变电站") @ExcelProperty("站点") private String station; @Schema(description = "线路", example = "城东-工业线路") @ExcelProperty("线路") private String line; @Schema(description = "班组编号", example = "1") private Long teamId; @Schema(description = "班组名称", example = "运维一班") @ExcelProperty("班组") private String teamName; @Schema(description = "计划日期") @ExcelProperty("计划日期") private LocalDateTime planDate; @Schema(description = "状态(0=草稿,10=已下发,20=已完成,30=已取消)", example = "0") @ExcelProperty(value = "状态", converter = DictConvert.class) @DictFormat(cn.iocoder.yudao.module.mes.enums.DictTypeConstants.MES_PRO_MAINTENANCE_PLAN_STATUS) private Integer status; @Schema(description = "生成的工单编号", example = "1") private Long workOrderId; @Schema(description = "生成的工单编码", example = "WO-001") @ExcelProperty("生成的工单") private String workOrderCode; @Schema(description = "备注", example = "备注") @ExcelProperty("备注") private String remark; @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("创建时间") private LocalDateTime createTime; @Schema(description = "备件/物资需求明细") private List items; @Schema(description = "备件/物资需求明细项") @Data public static class Item { @Schema(description = "编号", example = "1") private Long id; @Schema(description = "物料/备件编号", example = "1") private Long itemId; @Schema(description = "物料名称", example = "绝缘子") private String itemName; @Schema(description = "物料编码", example = "ITEM001") private String itemCode; @Schema(description = "计量单位名称", example = "个") private String unitMeasureName; @Schema(description = "需求数量", example = "10") private BigDecimal quantity; @Schema(description = "备注", example = "备注") private String remark; } }