wujianwei
2026-02-02 48032a9bf0b5e560fd438ae7ba12ad6f4c8183ed
service/src/main/java/com/ruoyi/cwgl/controller/ReceivableBillManagementController.java
@@ -16,10 +16,15 @@
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import java.math.BigDecimal;
import java.util.List;
import java.util.Objects;
import com.ruoyi.cwgl.domain.InvoiceManage;
import com.ruoyi.cwgl.domain.ReceivableBillManagement;
import com.ruoyi.cwgl.domain.ReceivableInvoiceBusiness;
import com.ruoyi.cwgl.service.IInvoiceManageService;
import com.ruoyi.cwgl.service.IReceivableBillManagementService;
import com.ruoyi.cwgl.service.IReceivableInvoiceBusinessService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
@@ -38,6 +43,9 @@
    @Autowired
    private IInvoiceManageService invoiceManageService;
    @Autowired
    private IReceivableInvoiceBusinessService receivableInvoiceBusinessService;
@@ -135,4 +143,28 @@
    {
        return invoiceManageService.applyReceivableInvoice(invoiceManage, id);
    }
    /**
     * 查询应收账单已开票金额
     * @param id 应收账单ID
     * @return 已开票金额
     */
    @PreAuthorize("@ss.hasPermi('cwgl:receivableBillManagement:query')")
    @GetMapping("/invoice/amount/{id}")
    public AjaxResult getReceivableInvoicedAmount(@PathVariable("id") Integer id)
    {
        // 查询receivable_invoice_business表中status为1的记录
        ReceivableInvoiceBusiness query = new ReceivableInvoiceBusiness();
        query.setHeadId(id);
        query.setStatus(1);
        List<ReceivableInvoiceBusiness> invoices = receivableInvoiceBusinessService.selectReceivableInvoiceBusinessList(query);
        // 计算已开票金额
        BigDecimal invoicedAmount = invoices.stream()
                .map(ReceivableInvoiceBusiness::getInvoicingAmount)
                .filter(Objects::nonNull)
                .reduce(BigDecimal.ZERO, BigDecimal::add);
        return AjaxResult.success(invoicedAmount);
    }
}