package cn.estsh.i3plus.ext.mes.pcn.api.busi.ep;

import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesWorkCenterMovtrnCfg;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.ep.WorkCenterMovtrnCfgModel;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import io.swagger.annotations.ApiOperation;

import java.util.List;

/**
 * @Author: wangjie
 * @CreateDate: 2021/01/19 15:06 下午
 * @Description:
 **/
public interface ISxWorkCenterMovtrnCfgService {

    /**
     * 根据生产线代码获取生产报工立库配置表信息
     * @param organizeCode 组织代码
     * @param workCenterCode 生产线代码
     * @return 生产报工立库配置表信息
     */
    @ApiOperation(value = "根据生产线代码获取生产报工立库配置表信息", notes = "根据生产线代码获取生产报工立库配置表信息")
    MesWorkCenterMovtrnCfg getWorkCenterMovtrnCfgByCenter(String organizeCode, String workCenterCode);

    /**
     * 按条件分页查询生产线立库配置信息
     *
     * @param workCenterMovtrnCfg 查询条件
     * @param pager 分页条件
     * @return 生产线立库配置分页数据
     */
    @ApiOperation(value = "按条件分页查询生产线立库配置信息", notes = "按条件分页查询生产线立库配置信息")
    ListPager<WorkCenterMovtrnCfgModel> queryWorkCenterMovtrnCfgByPager(MesWorkCenterMovtrnCfg workCenterMovtrnCfg, Pager pager);

    /**
     * 保存生产线立库配置信息
     * @param workCenterMovtrnCfgList 生产线立库配置信息集合
     * @param flag 新增编辑删除=1/导入=2
     */
    @ApiOperation(value = "保存生产线立库配置信息", notes = "保存生产线立库配置信息")
    void saveWorkCenterMovtrnCfg(List<WorkCenterMovtrnCfgModel> workCenterMovtrnCfgList, Integer flag);

    /**
     * 根据生产线代码查询生产线立库配置信息
     * @param organizeCode
     * @param workCenterCode
     * @return
     */
    @ApiOperation(value = "根据生产线代码查询生产线立库配置信息", notes = "根据生产线代码查询生产线立库配置信息")
    WorkCenterMovtrnCfgModel queryWorkCenterMovtrnCfgByWorkCenterCode(String organizeCode, String workCenterCode);
}
