| | |
| | | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; |
| | | import cn.iocoder.yudao.module.erp.controller.admin.purchase.vo.invoice.ErpPurchaseInvoicePageReqVO; |
| | | import cn.iocoder.yudao.module.erp.dal.dataobject.purchase.ErpPurchaseInvoiceDO; |
| | | import cn.iocoder.yudao.module.erp.enums.ErpPurchaseInvoiceAuditStatusEnum; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | import java.util.Collection; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | return selectPage(reqVO, new LambdaQueryWrapperX<ErpPurchaseInvoiceDO>() |
| | | .likeIfPresent(ErpPurchaseInvoiceDO::getNo, reqVO.getNo()) |
| | | .eqIfPresent(ErpPurchaseInvoiceDO::getSupplierId, reqVO.getSupplierId()) |
| | | .eqIfPresent(ErpPurchaseInvoiceDO::getPurchaseOrderId, reqVO.getPurchaseOrderId()) |
| | | .eqIfPresent(ErpPurchaseInvoiceDO::getAuditStatus, reqVO.getAuditStatus()) |
| | | // 按采购订单过滤:一张来票可分摊到多张订单,需查分摊明细 |
| | | .apply(reqVO.getPurchaseOrderId() != null, |
| | | "erp_purchase_invoice.id IN (SELECT a.invoice_id FROM erp_purchase_invoice_order a " |
| | | + "WHERE a.purchase_order_id = {0} AND a.deleted = 0)", reqVO.getPurchaseOrderId()) |
| | | .orderByDesc(ErpPurchaseInvoiceDO::getId)); |
| | | } |
| | | |
| | | default List<ErpPurchaseInvoiceDO> selectListByOrderIdAndStatus(Long orderId, Collection<Integer> auditStatuses) { |
| | | default List<ErpPurchaseInvoiceDO> selectListBySupplierId(Long supplierId) { |
| | | return selectList(new LambdaQueryWrapperX<ErpPurchaseInvoiceDO>() |
| | | .eq(ErpPurchaseInvoiceDO::getPurchaseOrderId, orderId) |
| | | .in(ErpPurchaseInvoiceDO::getAuditStatus, auditStatuses)); |
| | | } |
| | | |
| | | default List<ErpPurchaseInvoiceDO> selectListBySupplierIdAndStatus(Long supplierId, Collection<Integer> auditStatuses) { |
| | | return selectList(new LambdaQueryWrapperX<ErpPurchaseInvoiceDO>() |
| | | .eq(ErpPurchaseInvoiceDO::getSupplierId, supplierId) |
| | | .in(ErpPurchaseInvoiceDO::getAuditStatus, auditStatuses)); |
| | | } |
| | | |
| | | default Long selectCountByAudit() { |
| | | return selectCount(ErpPurchaseInvoiceDO::getAuditStatus, ErpPurchaseInvoiceAuditStatusEnum.PROCESS.getStatus()); |
| | | .eq(ErpPurchaseInvoiceDO::getSupplierId, supplierId)); |
| | | } |
| | | |
| | | } |