package cn.estsh.i3plus.ext.mes.pcn.api.base;

import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesWorkCenterExt;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import io.swagger.annotations.ApiOperation;

import java.util.List;

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

    /**
     * 根据生产线代码获取生产线信息
     * @param organizeCode 组织代码
     * @param workCenterCode 生产线代码
     * @return 生产线信息
     */
    @ApiOperation(value = "根据生产线代码获取生产线信息", notes = "根据生产线代码获取生产线信息")
    MesWorkCenterExt getWorkCenterExtByWorkCenterCode(String organizeCode, String workCenterCode);

    /**
     * 根据生产线代码获取生产线信息
     * @param organizeCode 组织代码
     * @param workCenterCode 生产线代码
     * @param workTime 作业日期
     * @return 生产线信息
     */
    @ApiOperation(value = "根据生产线代码,作业时间获取生产线信息", notes = "根据生产线代码,作业时间获取生产线信息")
    MesWorkCenterExt getWorkCenterExtByWorkCenterAndTime(String organizeCode, String workCenterCode, String workTime);

    /**
     * 获取生产线集合
     * @param organizeCode 组织代码
     * @return 生产线集合
     */
    @ApiOperation(value = "获取生产线集合", notes = "获取生产线集合")
    List<MesWorkCenterExt> getWorkCenterExtList(String organizeCode);

    /**
     * 根据生产线查询工位集合
     * @param workCenterCode
     * @param organizeCode
     * @return
     */
    @ApiOperation(value = "根据生产线查询工位集合", notes = "根据生产线查询工位集合")
    List<MesWorkCell> queryCellsByCenter(String workCenterCode, String organizeCode);

    /**
     * 查询工位集合
     * @param organizeCode
     * @return
     */
    @ApiOperation(value = "查询工位集合", notes = "查询工位集合")
    List<MesWorkCell> queryWorkCellList(String organizeCode);
}
