Procházet zdrojové kódy

利润结算表BUG

caozj před 1 rokem
rodič
revize
b516de7c74

+ 35 - 32
hx-sale/src/main/java/com/fjhx/sale/service/statement/impl/SaleStatementServiceImpl.java

@@ -317,7 +317,6 @@ public class SaleStatementServiceImpl implements SaleStatementService {
                  * 处理采购金额
                  */
                 List<Purchase> pList = purchaseMap.getOrDefault(p.getContractId(), null);
-                List<Long> purchaseIds = pList.stream().map(Purchase::getId).collect(Collectors.toList());
                 if (CollectionUtils.isNotEmpty(pList)) {
 
                     BigDecimal purchaseAmount = pList.stream().map(purchase -> {
@@ -329,21 +328,23 @@ public class SaleStatementServiceImpl implements SaleStatementService {
                         return rate.multiply(money);
                     }).reduce(BigDecimal.ZERO, BigDecimal::add);
                     p.setPurchaseAmount(purchaseAmount);
-                }
-                /**
-                 * 处理支付款金额
-                 */
-                List<Pay> payList = payDetailService.getSumMoney(purchaseIds);
-                if (CollectionUtils.isNotEmpty(payList)) {
-                    BigDecimal payAmount = payList.stream().map(pay -> {
-                        //获取汇率
-                        BigDecimal rate = assignCurrencyRatesMap.getOrDefault(pay.getCurrency(), BigDecimal.ONE);
-                        // 获取认领金额
-                        BigDecimal money = pay.getAmount();
-                        // 返回兑人民币后金额
-                        return rate.multiply(money);
-                    }).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    p.setAccountPaid(payAmount);
+
+                    /**
+                     * 处理支付款金额
+                     */
+                    List<Long> purchaseIds = pList.stream().map(Purchase::getId).collect(Collectors.toList());
+                    List<Pay> payList = payDetailService.getSumMoney(purchaseIds);
+                    if (CollectionUtils.isNotEmpty(payList)) {
+                        BigDecimal payAmount = payList.stream().map(pay -> {
+                            //获取汇率
+                            BigDecimal rate = pay.getRate()==null?BigDecimal.ONE:pay.getRate();
+                            // 获取认领金额
+                            BigDecimal money = pay.getAmount();
+                            // 返回兑人民币后金额
+                            return rate.multiply(money);
+                        }).reduce(BigDecimal.ZERO, BigDecimal::add);
+                        p.setAccountPaid(payAmount);
+                    }
                 }
                 /**
                  * 其他收入金额
@@ -399,7 +400,7 @@ public class SaleStatementServiceImpl implements SaleStatementService {
                  * 处理采购金额
                  */
                 List<Purchase> pList = purchaseMap.getOrDefault(p.getContractId(), null);
-                List<Long> purchaseIds = pList.stream().map(Purchase::getId).collect(Collectors.toList());
+
                 if (CollectionUtils.isNotEmpty(pList)) {
                     BigDecimal purchaseAmount = pList.stream().map(purchase -> {
                         //获取汇率
@@ -410,21 +411,23 @@ public class SaleStatementServiceImpl implements SaleStatementService {
                         return rate.multiply(money);
                     }).reduce(BigDecimal.ZERO, BigDecimal::add);
                     p.setPurchaseAmount(purchaseAmount);
-                }
-                /**
-                 * 处理支付款金额
-                 */
-                List<Pay> payList = payDetailService.getSumMoney(purchaseIds);
-                if (CollectionUtils.isNotEmpty(payList)) {
-                    BigDecimal payAmount = payList.stream().map(pay -> {
-                        //获取汇率
-                        BigDecimal rate = pay.getRate()==null?BigDecimal.ONE:pay.getRate();
-                        // 获取认领金额
-                        BigDecimal money = pay.getAmount();
-                        // 返回兑人民币后金额
-                        return rate.multiply(money);
-                    }).reduce(BigDecimal.ZERO, BigDecimal::add);
-                    p.setAccountPaid(payAmount);
+
+                    /**
+                     * 处理支付款金额
+                     */
+                    List<Long> purchaseIds = pList.stream().map(Purchase::getId).collect(Collectors.toList());
+                    List<Pay> payList = payDetailService.getSumMoney(purchaseIds);
+                    if (CollectionUtils.isNotEmpty(payList)) {
+                        BigDecimal payAmount = payList.stream().map(pay -> {
+                            //获取汇率
+                            BigDecimal rate = pay.getRate()==null?BigDecimal.ONE:pay.getRate();
+                            // 获取认领金额
+                            BigDecimal money = pay.getAmount();
+                            // 返回兑人民币后金额
+                            return rate.multiply(money);
+                        }).reduce(BigDecimal.ZERO, BigDecimal::add);
+                        p.setAccountPaid(payAmount);
+                    }
                 }
                 /**
                  * 其他收入金额