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

import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesPartCheckDetail;
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesWorkOrderExt;
import cn.estsh.i3plus.ext.mes.pcn.pojo.model.PartCheckDetailModel;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;

import java.io.IOException;
import java.util.List;

/**
 * @Author: xiangming.liao
 * @CreateDate: 2021/01/18 11:22 上午
 * @Description:
 **/
public interface IMesPartCheckDetailService {


    /**
     * 按条件分页查询点检单明细
     *
     * @param mesPartCheckDetail
     * @param pager
     * @return
     */
    ListPager<MesPartCheckDetail> queryMesPartCheckDetail(MesPartCheckDetail mesPartCheckDetail, Pager pager);

    /**
     * 物料点检作业
     *
     * @param detail
     * @return
     */
    List<MesPartCheckDetail> updateOrderStatusCheck(MesPartCheckDetail detail) throws IOException;

    /**
     * 物料点检提交
     *
     * @param orderNo
     * @param organizeCode
     * @param modifyUser
     * @return
     */
    int partCheckSubmit(String orderNo, String organizeCode, String modifyUser);

    /**
     * 通过单据编号查询工位
     *
     * @param orderNo
     * @param organizeCode
     * @return
     */
    List<MesWorkCell> queryCellByOrderNo(String orderNo, String organizeCode);

    /**
     * 查询工位下的物料点检单
     *
     * @param detail
     * @param pager
     * @return
     */
    ListPager<PartCheckDetailModel> queryPartCheckByCell(MesPartCheckDetail detail, Pager pager);

}
