package cn.iocoder.yudao.module.mes.service.wm.sn;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnGenerateReqVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnGroupRespVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnDetailRespVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnInStockPageReqVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnInStockReqVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnOutStockReqVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.wm.sn.vo.MesWmSnPageReqVO;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.wm.sn.MesWmSnDO;
|
|
import java.util.List;
|
|
/**
|
* MES SN 码 Service 接口
|
*
|
* @author 超级管理员
|
*/
|
public interface MesWmSnService {
|
|
/**
|
* 批量生成 SN 码
|
*
|
* @param reqVO 生成请求
|
*/
|
void generateSnCodes(MesWmSnGenerateReqVO reqVO);
|
|
/**
|
* 获得 SN 码分组分页(按 UUID 聚合)
|
*
|
* @param reqVO 分页查询
|
* @return SN 码分组分页
|
*/
|
PageResult<MesWmSnGroupRespVO> getSnGroupPage(MesWmSnPageReqVO reqVO);
|
|
/**
|
* 获得批次 SN 码列表
|
*
|
* @param uuid 批次 UUID
|
* @return SN 码列表
|
*/
|
List<MesWmSnDO> getSnListByUuid(String uuid);
|
|
/**
|
* 批量删除 SN 码(按批次 UUID)
|
*
|
* @param uuid 批次 UUID
|
*/
|
void deleteSnByUuid(String uuid);
|
|
/**
|
* 入库登记:按 SN 建立库存事务并入台(单件入库)
|
*
|
* @param reqVO 入库登记请求
|
*/
|
void registerSnInStock(MesWmSnInStockReqVO reqVO);
|
|
/**
|
* 出库核销:按 SN 建立出库事务并核销(单件出库)
|
*
|
* @param reqVO 出库核销请求
|
*/
|
void outboundSn(MesWmSnOutStockReqVO reqVO);
|
|
/**
|
* 获得 SN 单件明细(状态、在库位置、最近一笔库存事务)
|
*
|
* @param snCode SN 码
|
* @return SN 单件明细
|
*/
|
MesWmSnDetailRespVO getSnDetail(String snCode);
|
|
/**
|
* 按状态/物料/库位等维度分页查询 SN 码(在库核对)
|
*
|
* @param reqVO 分页查询
|
* @return SN 码分页
|
*/
|
PageResult<MesWmSnDO> getSnInStockPage(MesWmSnInStockPageReqVO reqVO);
|
|
}
|