From 8286416fd441b841cc1386006cc8e4915f636203 Mon Sep 17 00:00:00 2001 From: XinanXf <123456> Date: Tue, 17 Jun 2025 14:53:11 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B3=BC=E8=A8=82=E5=96=AEexport=20?= =?UTF-8?q?=20=E9=81=B8=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sc/controller/sale/SaleOrderController.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/xingyun-sc/src/main/java/com/lframework/xingyun/sc/controller/sale/SaleOrderController.java b/xingyun-sc/src/main/java/com/lframework/xingyun/sc/controller/sale/SaleOrderController.java index c50ecc7..a01299e 100644 --- a/xingyun-sc/src/main/java/com/lframework/xingyun/sc/controller/sale/SaleOrderController.java +++ b/xingyun-sc/src/main/java/com/lframework/xingyun/sc/controller/sale/SaleOrderController.java @@ -130,17 +130,20 @@ public class SaleOrderController extends DefaultBaseController { List orderDetails=saleOrderDetailMapper.getBySaleOrderId(result.getId()); // 计算毛利率 = 本单利润/含税总金额* 100% String grossMargin = CalUtils.CalGrossMargin(result.getThisOrderProfit(),result.getTotalAmount()); - result.setGrossMargin(grossMargin); + result.setGrossMargin(grossMargin + "%"); List productNames = new ArrayList<>(); + BigDecimal totalPurchasePrice = BigDecimal.ZERO; for (SaleOrderDetail orderDetail : orderDetails) { Product product= productService.findById(orderDetail.getProductId()); if (product != null && product.getName() != null) { productNames.add(product.getName()); } - + //计算成本 + totalPurchasePrice = totalPurchasePrice.add(orderDetail.getTotalPurchasePrice()); } result.setProductName(String.join(", ", productNames)); + result.setTotalPurchasePrice(totalPurchasePrice); } } return InvokeResultBuilder.success(PageResultUtil.rebuild(pageResult, results)); @@ -183,14 +186,18 @@ public class SaleOrderController extends DefaultBaseController { // 计算毛利率 = 本单利润/含税总金额* 100% result.setGrossMargin(CalUtils.CalGrossMargin(result.getThisOrderProfit(),result.getTotalAmount()) + "%"); List productNames = new ArrayList<>(); + BigDecimal totalPurchasePrice = BigDecimal.ZERO; + for (SaleOrderDetail orderDetail : orderDetails) { Product product= productService.findById(orderDetail.getProductId()); if (product != null && product.getName() != null) { productNames.add(product.getName()); } - + //计算成本 = 商品采购单价总和 + totalPurchasePrice = totalPurchasePrice.add(orderDetail.getTotalPurchasePrice()); } result.setProductName(String.join(", ", productNames)); + result.setTotalPurchasePrice(totalPurchasePrice); } }