package com.ruoyi.cost.mapper; import com.ruoyi.cost.bean.vo.CostEnergyVo; import com.ruoyi.cost.bean.vo.CostLaborVo; import com.ruoyi.cost.bean.vo.CostMaterialInputVo; import com.ruoyi.cost.bean.vo.CostMaterialPriceVo; import com.ruoyi.cost.bean.vo.CostMissingPriceVo; import com.ruoyi.cost.bean.vo.CostOrderVo; import com.ruoyi.cost.bean.vo.CostSalePriceVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.time.LocalDate; import java.util.List; /** * 成本核算分析(只读,按生产订单归集材料/人工/能耗) */ @Mapper public interface CostAccountingMapper { /** 订单基础信息 */ List listOrders(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate, @Param("npsNo") String npsNo, @Param("productName") String productName); /** 订单物料实际投入(报工投入口径) */ List listMaterialInputs(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate, @Param("npsNo") String npsNo, @Param("productName") String productName); /** 消耗物料汇总(用于缺价清单) */ List listConsumedMaterials(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate, @Param("npsNo") String npsNo, @Param("productName") String productName); /** 物料单价(多来源,priority 越小越优先) */ List listMaterialPrices(); /** 订单人工成本(与报工工资口径一致:计件优先,其次计时,再次规格内嵌单价) */ List listLaborCosts(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate, @Param("npsNo") String npsNo, @Param("productName") String productName); /** 订单关联的销售含税单价 */ List listSalePrices(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate, @Param("npsNo") String npsNo, @Param("productName") String productName); /** 区间电费总额(设备能耗×当日电价) */ CostEnergyVo sumEnergyCost(@Param("startDate") LocalDate startDate, @Param("endDate") LocalDate endDate); }