2026-07-01 6b5f7c66fc40d7f6099d561e31a34fbd50dd20d3
yudao-module-mdm/src/main/java/cn/iocoder/yudao/module/mdm/service/warehouse/MdmWarehouseService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,97 @@
package cn.iocoder.yudao.module.mdm.service.warehouse;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.mdm.controller.admin.warehouse.vo.MdmWarehousePageReqVO;
import cn.iocoder.yudao.module.mdm.controller.admin.warehouse.vo.MdmWarehouseSaveReqVO;
import cn.iocoder.yudao.module.mdm.dal.dataobject.warehouse.MdmWarehouseDO;
import jakarta.validation.Valid;
import java.util.Collection;
import java.util.List;
/**
 * MDM ä»“库 Service æŽ¥å£
 *
 * @author èŠ‹é“æºç 
 */
public interface MdmWarehouseService {
    /**
     * åˆ›å»ºä»“库
     *
     * @param createReqVO åˆ›å»ºä¿¡æ¯
     * @return ç¼–号
     */
    Long createWarehouse(@Valid MdmWarehouseSaveReqVO createReqVO);
    /**
     * æ›´æ–°ä»“库
     *
     * @param updateReqVO æ›´æ–°ä¿¡æ¯
     */
    void updateWarehouse(@Valid MdmWarehouseSaveReqVO updateReqVO);
    /**
     * æ›´æ–°ä»“库状态
     *
     * @param id     ç¼–号
     * @param status çŠ¶æ€
     */
    void updateWarehouseStatus(Long id, Integer status);
    /**
     * åˆ é™¤ä»“库
     *
     * @param id ç¼–号
     */
    void deleteWarehouse(Long id);
    /**
     * èŽ·å¾—ä»“åº“
     *
     * @param id ç¼–号
     * @return ä»“库
     */
    MdmWarehouseDO getWarehouse(Long id);
    /**
     * æ ¡éªŒä»“库存在
     *
     * @param id ç¼–号
     * @return ä»“库
     */
    MdmWarehouseDO validateWarehouseExists(Long id);
    /**
     * æ ¡éªŒä»“库存在且启用
     *
     * @param id ç¼–号
     * @return ä»“库
     */
    MdmWarehouseDO validateWarehouseExistsAndEnable(Long id);
    /**
     * èŽ·å¾—ä»“åº“åˆ†é¡µ
     *
     * @param pageReqVO åˆ†é¡µæŸ¥è¯¢
     * @return ä»“库分页
     */
    PageResult<MdmWarehouseDO> getWarehousePage(MdmWarehousePageReqVO pageReqVO);
    /**
     * èŽ·å¾—ä»“åº“åˆ—è¡¨
     *
     * @param ids ç¼–号数组
     * @return ä»“库列表
     */
    List<MdmWarehouseDO> getWarehouseList(Collection<Long> ids);
    /**
     * æ ¹æ®ç¼–码获取仓库
     *
     * @param code ä»“库编码
     * @return ä»“库
     */
    MdmWarehouseDO getWarehouseByCode(String code);
}