自动化立体仓库 - WMS系统
dubin
2025-12-19 b00eeab31bd13ba34a03301aa441b0751d6a93e4
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -2,7 +2,9 @@
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.LocDetlWarningDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.springframework.stereotype.Repository;
@@ -18,13 +20,39 @@
    Integer getStockOutPageCount(Map<String, Object> map);
    @Update("update asr_loc_detl set anfme=#{anfme}, modi_time = getDate() where loc_no = #{locNo} and matnr = #{matnr}")
    int updateAnfme(Double anfme, String locNo, String matnr);
    @Update("update asr_loc_detl set qty=#{qty}, modi_time = getDate(),all_weight=#{weight},all_qty=#{allQty} where loc_no = #{locNo} and mat_no = #{matNo}")
    int updateAnfme(Double qty, String locNo, String matNo,Double weight,Double allQty);
    @Update("update asr_loc_detl set loc_no = #{newLocNo}, modi_time=getDate() where loc_no = #{oldLocNo}")
    int updateLocNo(String newLocNo, String oldLocNo);
    @Select("SELECT wml.loc_no FROM asr_wrk_mast_log wml LEFT JOIN asr_wrk_detl_log wdl ON wml.wrk_no = wdl.wrk_no LEFT JOIN asr_loc_mast lm ON wml.loc_no = lm.loc_no WHERE (1 = 1 AND wdl.matnr = 'X004073XX' AND (wml.io_type = 1 OR wml.io_type = 11) AND wml.wrk_sts = 5 AND DateDiff(dd, wml.modi_time, getdate()) = 0 AND lm.loc_sts = 'F') ORDER BY wml.modi_time ASC")
    List<String> selectSameDetlToday(String matnr);
    @Select("SELECT ld.loc_no FROM asr_loc_detl ld LEFT JOIN asr_loc_mast lm ON ld.loc_no = lm.loc_no WHERE (1 = 1 AND ld.mat_no = #{matNo} AND (lm.row1 >= #{start} AND lm.row1 <= #{end})  AND lm.loc_sts = 'F' AND DateDiff(dd, lm.modi_time, getdate()) = 0) ORDER BY lm.modi_time ASC")
    List<String> selectSameDetlToday(@Param("matNo") String matNo, @Param("start") Integer start, @Param("end") Integer end);
    List<LocDetl> selectLocDetlList(@Param("mat_no") String matNo);
    Double selectLocDetlSumQty(String locNo);
    List<LocDetl> getStockStatis(Map<String, Object> condition);
    Integer getStockStatisCount(Map<String, Object> condition);
    List<LocDetl> getStockStatisExcel(LocDetl locDetl);
    /**
     * 库存上报ERP时,根据物料汇总查询库存总量
     * @return
     */
    @Select("select mat_no,mat_name,sum(qty) qty from asr_loc_detl group by mat_no,mat_name")
    List<LocDetl> getStockSum();
    List<LocDetlWarningDTO> selectAllWarning(LocDetlWarningDTO locDetlWarningDTO);
    int getAllWarningCount(LocDetlWarningDTO locDetlWarningDTO);
    List<LocDetl> selectByZpallet(String barcode);
    @Update("update asr_loc_detl set zpallet = #{tBarcode}, modi_time=getDate() where zpallet = #{sBarcode}")
    int updateZpallet(String sBarcode, String tBarcode,String batch);
}