自动化立体仓库 - WMS系统
zjj
2024-12-04 824c29bc60bb0b33e8930319878fbf2e5d7562ca
src/main/java/com/zy/asrs/service/WorkService.java
@@ -1,4 +1,104 @@
package com.zy.asrs.service;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.WaitPakin;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.param.EmptyPlateOutParam;
import com.zy.asrs.entity.param.FullStoreParam;
import com.zy.asrs.entity.param.LocDetlAdjustParam;
import com.zy.asrs.entity.param.StockOutParam;
import com.zy.common.model.LocDetlDto;
import com.zy.common.model.StartupDto;
import com.zy.common.model.TaskDto;
import com.zy.common.model.enums.IoWorkType;
import java.util.List;
public interface WorkService {
    /**
     * 全板入库
     * @return 库位号
     */
    String startupFullPutStore(FullStoreParam param, Long userId);
    /**
     * 出库作业
     */
    void startupFullTakeStore(StockOutParam param, Long userId);
    /**
     * 出库作业
     * @param staNo 目标站点
     * @param locDetls 待出库物料
     * @param ioType 入出库类型
     */
    void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, IoWorkType ioWorkType, Long userId);
    void stockOut(BasDevp staNo, TaskDto taskDto, Long userId);
    /**
     * 空板入库
     * @return 库位号
     */
    String emptyPlateIn(Integer sourceStaNo, Long userId);
    /**
     * 空板出库
     */
    void emptyPlateOut(EmptyPlateOutParam param, Long userId);
    /**
     * 自动空板出库
     * @param param
     * @return
     */
    public WrkMast emptyPlateOut(EmptyPlateOutParam param);
    /**
     * 盘点出库
     */
    void locCheckOut(StockOutParam param, Long userId);
    /**
     * 库位移转
     */
    void locMove(String sourceLocNo, String locNo, Long userId);
    /**
     * 手动完成工作档
     */
    void completeWrkMast(String workNo, Long userId);
    /**
     * 库存明细调整
     */
    void adjustLocDetl(LocDetlAdjustParam param, Long userId);
    /**
     * 手动取消工作档
     */
    void cancelWrkMast(String workNo, Long userId);
    /**
     * 手动拣料入库工作档
     */
    void pickWrkMast(String workNo, Long userId);
    /**
     * 通知档手动生成任务
     */
    StartupDto createWaitPainWrkMastStart(List<WaitPakin> list, Long userId);
    /**
     * 通知档手动生成任务
     */
    String dealPreHaveStart(Integer wrkNo, Long userId);
    void turnMatLocDetl(EmptyPlateOutParam param, Long userId);
    /**
     * 并板出库
     */
    void locMergeOut(StockOutParam param, Long userId);
}