package com.zy.asrs.mapper; import com.baomidou.mybatisplus.mapper.BaseMapper; import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.result.LocDetlAll; import com.zy.asrs.entity.result.LocDetlDTO; import com.zy.asrs.entity.result.StockVo; 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; import java.util.List; import java.util.Map; import java.util.Set; @Mapper @Repository public interface LocDetlMapper extends BaseMapper { List selectAllOwner(LocDetlDTO locDetlDTO); int selectAllCount(LocDetlDTO locDetlDTO); List listByPage(Map map); Integer listByPageCount(Map map); LocDetl selectItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand,@Param("standby1")String standby1,@Param("standby2")String standby2, @Param("standby3")String standby3,@Param("boxType1")String boxType1,@Param("boxType2")String boxType2,@Param("boxType3")String boxType3 ); int deleteItem(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand,@Param("standby1")String standby1,@Param("standby2")String standby2, @Param("standby3")String standby3,@Param("boxType1")String boxType1,@Param("boxType2")String boxType2,@Param("boxType3")String boxType3 ); int updateAnfme(@Param("anfme")Double anfme, @Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand,@Param("standby1")String standby1,@Param("standby2")String standby2, @Param("standby3")String standby3,@Param("boxType1")String boxType1,@Param("boxType2")String boxType2,@Param("boxType3")String boxType3 ); List getStockOutPage(Map map); Integer getStockOutPageCount(Map map); @Update("update asr_loc_detl set loc_no = #{newLocNo}, modi_time=getDate() where loc_no = #{oldLocNo}") int updateLocNo(String newLocNo, String oldLocNo); @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.matnr = #{matnr} AND (lm.row1 >= #{start} AND lm.row1 <= #{end}) AND lm.loc_sts = 'F' AND DateDiff(dd, ld.appe_time, getdate()) = 0) ORDER BY ld.appe_time ASC") List selectSameDetlToday(@Param("matnr") String matnr, @Param("start") Integer start, @Param("end") Integer end); List selectSameDetlTodayBatch(@Param("matnr") String matnr,@Param("batch") String batch, @Param("start") Integer start, @Param("end") Integer end); List getStockStatis(Map map); Integer getStockStatisCount(Map map); List getStockStatis2(Map map); List getStockStatisExcel(); @Select("select sum(a.anfme) as sum from asr_loc_detl a left join asr_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr}") Double selectSumAnfmeByMatnr(@Param("matnr") String matnr); List selectPakoutByRule(String matnr); List getAsrsLocDetl(String matnr); Integer countLocNoNum(String locNo); // ------------------------------------------------- List queryStock(@Param("matnr")String matnr, @Param("batch")String batch, @Param("orderNo")String orderNo, @Param("locNos") Set locNos); List queryStockAll(@Param("orderNo")String orderNo, @Param("locNos") Set locNos, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand,@Param("standby1")String standby1,@Param("standby2")String standby2, @Param("standby3")String standby3,@Param("boxType1")String boxType1,@Param("boxType2")String boxType2,@Param("boxType3")String boxType3); Double queryStockAnfme(String matnr, String batch); List queryStockTotal(); Integer sum(); List unreason(); Double selectLocDetlSumQty(String locNo); void updateMatTurn(@Param("matnrOld")String matnrOld,@Param("matnr")String matnr); List> selectLocDetlUnilateralMoveShuttleMapY(Integer crnNo); List> selectLocDetlUnilateralMoveShuttleMapN(Integer crnNo); List selectLocDetlUnilateralMoveShuttleY(@Param("matnr")String matnr,@Param("batch")String batch,@Param("grade")String grade); List selectLocDetlUnilateralMoveShuttleN(@Param("matnr")String matnr,@Param("batch")String batch,@Param("grade")String grade); List searchByLike(String orderNo, String matnr, String maktx, String specs, String locNo);//通过订单号、物料号、物料名称、规格、库位号进行模糊搜索 /** * 根据库位号更新库存明细为冻结状态 */ void updateDetlFrozenByLocNo(@Param("locNo") String locNo); /** * 冻结/解冻库存明细 * @param locNo 库位号 * @param matnr 物料编码 * @param batch 批次 * @param frozen 0解冻,1冻结 */ void frozenInventory(@Param("locNo") String locNo, @Param("matnr") String matnr, @Param("batch") String batch, @Param("frozen") int frozen); }