昨天 c89f7dcf9344a35efde2a00edb10491b401ba000
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/batch/MesWmBatchService.java
@@ -1,8 +1,13 @@
package cn.iocoder.yudao.module.mes.service.wm.batch;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchFlowRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchGenerateReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchProcessTraceRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchPurchaseSourceRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.wm.batch.vo.MesWmBatchSalesTargetRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.pro.batch.MesProBatchDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.wm.batch.MesWmBatchDO;
import java.util.List;
@@ -10,7 +15,7 @@
/**
 * 批次管理 Service 接口
 *
 * @author 芋道源码
 * @author 超级管理员
 */
public interface MesWmBatchService {
@@ -96,4 +101,55 @@
     */
    Long getBatchCountByToolId(Long toolId);
    /**
     * 获得批次采购来源(采购入库单 + IQC)
     *
     * @param code 批次号
     * @return 采购来源列表
     */
    List<MesWmBatchPurchaseSourceRespVO> getPurchaseSourceList(String code);
    /**
     * 获得批次销售去向(销售出库单 + OQC)
     *
     * @param code 批次号
     * @return 销售去向列表
     */
    List<MesWmBatchSalesTargetRespVO> getSalesTargetList(String code);
    /**
     * 获得批次工序流转(产出/投入事件)
     *
     * @param code 批次号
     * @return 工序流转列表
     */
    List<MesWmBatchProcessTraceRespVO> getProcessTraceList(String code);
    /**
     * 获得批次出入库流水(种子流向:入库 + 销售出库等全部库存事务)
     *
     * @param code 批次号
     * @return 出入库流水列表
     */
    List<MesWmBatchFlowRespVO> getBatchFlowList(String code);
    /**
     * 根据 SN 码获得批次
     *
     * @param sn SN 码
     * @return 批次记录(未命中返回 null)
     */
    MesWmBatchDO getBatchBySn(String sn);
    /**
     * 根据生产批次获取或创建仓库批次(打通生产批次体系与仓库批次体系)
     * <p>
     * 生产线扫码入库、销售出库、质检转合格等流程,库存与流水统一挂在仓库批次(mes_wm_batch)上,
     * 通过生产批次号(mes_pro_batch.code)桥接,已存在则直接复用,否则新建。
     *
     * @param proBatch 生产批次
     * @return 仓库批次(含 id)
     */
    MesWmBatchDO getOrCreateByProBatch(MesProBatchDO proBatch);
}