package com.ruoyi.cost.bean.vo; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.time.LocalDate; @Data @Schema(name = "CostStatVo", description = "成本核算(材料+人工+能耗)") public class CostStatVo { @Schema(description = "生产订单id") private Long productionOrderId; @Excel(name = "生产订单号") @Schema(description = "生产订单号") private String npsNo; @Excel(name = "成品") @Schema(description = "成品 名称/规格") private String finishedProduct; @Excel(name = "单位") @Schema(description = "单位") private String unit; @Excel(name = "订单日期", width = 20, dateFormat = "yyyy-MM-dd") @Schema(description = "订单创建日期") private LocalDate orderDate; @Excel(name = "产量") @Schema(description = "产量:完工数量,未完工回退计划数量") private BigDecimal outputQty; @Excel(name = "材料成本") @Schema(description = "材料成本=Σ(物料投入量×采购单价)") private BigDecimal materialCost; @Excel(name = "人工成本") @Schema(description = "人工成本=计件/计时工资合计") private BigDecimal laborCost; @Excel(name = "能耗成本") @Schema(description = "能耗成本=区间电费按产量占比分摊") private BigDecimal energyCost; @Excel(name = "总成本") @Schema(description = "总成本=材料+人工+能耗") private BigDecimal totalCost; @Excel(name = "单位成本") @Schema(description = "单位成本=总成本/产量") private BigDecimal unitCost; @Excel(name = "销售单价") @Schema(description = "关联销售单含税单价") private BigDecimal salePrice; @Excel(name = "毛利") @Schema(description = "毛利=(销售单价-单位成本)×产量") private BigDecimal grossProfit; @Excel(name = "毛利率%") @Schema(description = "毛利率=毛利/(销售单价×产量)×100") private BigDecimal grossProfitRate; @Excel(name = "价格覆盖率%") @Schema(description = "有采购价的物料消耗量占比,低于100说明有缺价物料") private BigDecimal priceCoverageRate; @Excel(name = "缺价物料数") @Schema(description = "投入但无采购单价的物料种类数") private Integer missingPriceKinds; @Excel(name = "无工资标准记录") @Schema(description = "工时为0且无计件单价的报工核算记录数") private Integer noRateRows; }