自动化立体仓库 - WCS系统
luxiaotao1123
2020-08-20 142a104afe9938851996e00bcfa96989c44f2c4a
src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -2,10 +2,7 @@
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.zy.asrs.entity.WrkMast;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -25,20 +22,28 @@
    WrkMast selectPakInStep1(@Param("sourceStaNo")Integer sourceStaNo, @Param("barcode")String barcode);
    // 入库第二步,当托盘物料在堆垛机入库站时时查询
    @Select("select top 1 * from dbo.asr_wrk_mast where wrk_sts=2 and crn_no={crnNo} and wrk_no={workNo} and (io_type=1 or io_type=10 or io_type=53 or io_type=54 or io_type=57) order by io_pri desc,io_time,wrk_no ASC")
    @Select("select top 1 * from dbo.asr_wrk_mast where wrk_sts=2 and crn_no=#{crnNo} and wrk_no=#{workNo} and (io_type=1 or io_type=10 or io_type=53 or io_type=54 or io_type=57) order by io_pri desc,io_time,wrk_no ASC")
    WrkMast selectPakInStep2(@Param("crnNo")Integer crnNo, @Param("workNo")Integer workNo);
    // 入库第三步,当堆垛机把货放入库位时
    @Select("select top 1 from dbo.asr_wrk_mast where wrk_no=#{workNo}")
    WrkMast selectPakInStep3(@Param("workNo")Integer workNo);
    // 拣料再入库时,站点有物且需求时查询
    @Select("select top 1 * from asr_wrk_mast where wrk_no=#{workNo} and wrk_sts=14 and (io_type=103 or io_type=107 or io_type=104)")
    WrkMast selectPickStep(@Param("workNo")Integer workNo);
    // 出库第一步,从库位到堆垛机出库站
    @Select("select top 1 * from dbo.asr_wrk_mast where crn_no={crnNo} and wrk_sts=11 and io_type>100 order by io_pri desc,io_time,wrk_no asc")
    @Select("select top 1 * from dbo.asr_wrk_mast where crn_no=#{crnNo} and wrk_sts=11 and io_type>100 order by io_pri desc,io_time,wrk_no asc")
    WrkMast selectPakOutStep1(@Param("crnNo")Integer crnNO);
    // 出库第二步,从堆垛机出库站到目标出库站,堆垛机出库站有物时执行
    @Select("select top 1 * from dbo.asr_wrk_mast where source_sta_no=#{sourceStaNo} and wrk_sts=12 and io_type>100 order by io_pri desc,io_time desc,wrk_no ASC")
    WrkMast selectPakOutStep2(@Param("sourceStaNo")Integer sourceStaNo);
    // 库位移转工作档,在进行一次入出库作业后紧跟库位移转
    @Select("select top 1 * from dbo.asr_wrk_mast where wrk_sts=11 and (io_type=11 or io_type=110) and crn_no=#{crnNo} order by io_time,wrk_no")
    WrkMast selectLocMove(@Param("crnNo")Integer crnNo);
    // work log -------------------------------------------------------
    @Insert("insert into asr_wrk_mast_log select * from asr_wrk_mast where wrk_no=#{workNo}")
@@ -47,5 +52,8 @@
    @Insert("insert into asr_wrk_detl_log select * from asr_wrk_detl where wrk_no=#{workNo}")
    int saveWrkDetlLog(Integer workNo);
    // update 入库通知档
    @Update("update cust_wait_pakin set io_status='Y' where zpallet = #{barcode}")
    int updateWaitPakInStep1(String barcode);
}