package vip.xiaonuo.production.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import vip.xiaonuo.production.entity.ProductionWorkstopPlan;
import com.baomidou.mybatisplus.extension.service.IService;
import vip.xiaonuo.production.entity.vo.*;
import vip.xiaonuo.production.param.*;

import java.util.List;

/**
 * <p>
 * 生成管控车间计划 服务类
 * </p>
 *
 * @author author
 * @since 2024-12-12
 */
public interface IProductionWorkstopPlanService extends IService<ProductionWorkstopPlan> {

    List<ProductionPlanVo> getList(ProductionPlanParam planParam);

    //大屏生成与质量指标
    ProductionWorkPlanTargetVo getTarget(ProductionTargetParam targetParam);

    //大屏生成与质量指标详情
    List<ProductionPlanDetailVo> getDetail(ProductionDetailParam detailParam);

    //大屏主要产品计划与实际产量
    List<ProductionVo> listScreen(ProductionScreenParam screenParam);

    //大屏各车间产品完成率排名top10，包含全部
    IPage<ProductionWorkstopPlan> getTop(ProductionPageParam pageParam);

    //车间列表
    List<ProductionLocationVo> listLocation(ProductionVoParam voParam);

    //产品名称列表
    List<ProductionNameVo> listProductionName(ProductionVoParam voParam);
}
