package cn.iocoder.yudao.module.erp.dal.mysql.purchase; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.query.MPJLambdaWrapperX; import cn.iocoder.yudao.module.erp.dal.dataobject.purchase.ErpPurchaseOrderDO; import cn.iocoder.yudao.module.erp.dal.dataobject.purchase.ErpPurchaseOrderItemDO; import cn.iocoder.yudao.module.erp.enums.ErpAuditStatus; import org.apache.ibatis.annotations.Mapper; import java.util.Collection; import java.util.List; /** * ERP 采购订单明项目 Mapper * * @author 超级管理员 */ @Mapper public interface ErpPurchaseOrderItemMapper extends BaseMapperX { default List selectListByOrderId(Long orderId) { return selectList(ErpPurchaseOrderItemDO::getOrderId, orderId); } default List selectListByOrderIds(Collection orderIds) { return selectList(ErpPurchaseOrderItemDO::getOrderId, orderIds); } default int deleteByOrderId(Long orderId) { return delete(ErpPurchaseOrderItemDO::getOrderId, orderId); } /** * 查询指定物料的已审核采购订单明细 */ default List selectListByApprovedOrderAndProductIds(Collection productIds) { MPJLambdaWrapperX query = new MPJLambdaWrapperX<>(); query.selectAll(ErpPurchaseOrderItemDO.class); query.innerJoin(ErpPurchaseOrderDO.class, ErpPurchaseOrderDO::getId, ErpPurchaseOrderItemDO::getOrderId); query.eq(ErpPurchaseOrderDO::getStatus, ErpAuditStatus.APPROVE.getStatus()); query.in(ErpPurchaseOrderItemDO::getProductId, productIds); return selectJoinList(ErpPurchaseOrderItemDO.class, query); } }