package com.ruoyi.account.service.impl.purchase; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.bean.dto.purchase.AccountPurchaseInvoiceDto; import com.ruoyi.account.bean.vo.purchase.AccountPurchaseInvoiceVo; import com.ruoyi.account.bean.vo.purchase.PurchaseInboundVo; import com.ruoyi.account.mapper.purchase.AccountPurchaseInvoiceMapper; import com.ruoyi.account.pojo.purchase.AccountPurchaseInvoice; import com.ruoyi.account.service.purchase.AccountPurchaseInvoiceService; import com.ruoyi.basic.mapper.StorageAttachmentMapper; import com.ruoyi.common.utils.poi.ExcelUtil; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.List; /** *

* 财务管理--进项发票 服务实现类 *

* * @author 芯导软件(江苏)有限公司 * @since 2026-05-19 03:06:17 */ @Service @RequiredArgsConstructor public class AccountPurchaseInvoiceServiceImpl extends ServiceImpl implements AccountPurchaseInvoiceService { private final AccountPurchaseInvoiceMapper accountPurchaseInvoiceMapper; private final StorageAttachmentMapper storageAttachmentMapper; @Override public IPage listPageAccountPurchaseInvoice(Page page, AccountPurchaseInvoiceDto accountPurchaseInvoiceDto) { return accountPurchaseInvoiceMapper.listPageAccountPurchaseInvoice(page, accountPurchaseInvoiceDto); } @Override public boolean deleteAccountPurchaseInvoice(List ids) { List accountPurchaseInvoices = accountPurchaseInvoiceMapper.selectByIds(ids); //删除附件 storageAttachmentMapper.deleteBatchIds(accountPurchaseInvoices.stream().map(AccountPurchaseInvoice::getStorageAttachmentId).toList()); return removeBatchByIds(ids); } @Override public void exportAccountPurchaseInvoice(HttpServletResponse response, AccountPurchaseInvoiceDto accountPurchaseInvoiceDto) { List list = accountPurchaseInvoiceMapper.listPageAccountPurchaseInvoice(new Page(1,-1),accountPurchaseInvoiceDto).getRecords(); ExcelUtil util = new ExcelUtil<>(AccountPurchaseInvoiceVo.class); util.exportExcel(response, list , "进项发票"); } @Override public List getInboundBatchesBySupplier(Integer supplierId) { return accountPurchaseInvoiceMapper.getInboundBatchesBySupplier(supplierId); } }