package cn.iocoder.yudao.module.mes.dal.mysql.wm.materialstockbag; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.module.mes.controller.admin.wm.materialstock.vo.MesWmMaterialStockBagPageReqVO; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.mes.dal.dataobject.wm.materialstockbag.MesWmMaterialStockBagDO; import org.apache.ibatis.annotations.Mapper; import java.util.Collection; import java.util.List; @Mapper public interface MesWmMaterialStockBagMapper extends BaseMapperX { default PageResult selectPage(MesWmMaterialStockBagPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getMaterialStockId, reqVO.getMaterialStockId()) .likeIfPresent(MesWmMaterialStockBagDO::getBagCode, reqVO.getBagCode()) .eq(MesWmMaterialStockBagDO::getStatus, 1) .orderByAsc(MesWmMaterialStockBagDO::getInboundTime)); } default MesWmMaterialStockBagDO selectByBagCode(String bagCode) { return selectOne(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getBagCode, bagCode) .orderByDesc(MesWmMaterialStockBagDO::getId) .last("LIMIT 1")); } default MesWmMaterialStockBagDO selectByBagCodeId(Long bagCodeId) { return selectOne(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getBagCodeId, bagCodeId) .orderByDesc(MesWmMaterialStockBagDO::getId) .last("LIMIT 1")); } default MesWmMaterialStockBagDO selectOneActiveByMaterialStockId(Long materialStockId) { return selectOne(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getMaterialStockId, materialStockId) .eq(MesWmMaterialStockBagDO::getStatus, 1) .last("LIMIT 1")); } default MesWmMaterialStockBagDO selectActiveByBagCode(String bagCode) { return selectOne(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getBagCode, bagCode) .eq(MesWmMaterialStockBagDO::getStatus, 1) .last("LIMIT 1")); } default MesWmMaterialStockBagDO selectActiveByBagCodeId(Long bagCodeId) { return selectOne(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getBagCodeId, bagCodeId) .eq(MesWmMaterialStockBagDO::getStatus, 1) .last("LIMIT 1")); } default List selectActiveListByItemAndBatch(Long itemId, Long batchId, Integer stockState) { return selectList(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getItemId, itemId) .eqIfPresent(MesWmMaterialStockBagDO::getBatchId, batchId) .eqIfPresent(MesWmMaterialStockBagDO::getStockState, stockState) .eq(MesWmMaterialStockBagDO::getStatus, 1) .eq(MesWmMaterialStockBagDO::getFrozen, false) .orderByAsc(MesWmMaterialStockBagDO::getInboundTime)); } default List selectListByMaterialStockIds(Collection materialStockIds) { return selectList(new LambdaQueryWrapperX() .in(MesWmMaterialStockBagDO::getMaterialStockId, materialStockIds) .eq(MesWmMaterialStockBagDO::getStatus, 1) .orderByAsc(MesWmMaterialStockBagDO::getInboundTime)); } default List selectListByMaterialStockId(Long materialStockId) { return selectList(new LambdaQueryWrapperX() .eq(MesWmMaterialStockBagDO::getMaterialStockId, materialStockId) .eq(MesWmMaterialStockBagDO::getStatus, 1) .orderByAsc(MesWmMaterialStockBagDO::getInboundTime)); } }