Эх сурвалжийг харах

Merge branch 'master' into test

caozj 1 жил өмнө
parent
commit
70b03e8a7c

+ 8 - 2
hx-purchase/src/main/java/com/fjhx/purchase/controller/purchase/PurchaseController.java

@@ -90,13 +90,19 @@ public class PurchaseController {
     }
 
     /**
+     * 根据供应商查询无发票的采购合同
+     */
+    @GetMapping("/getNoInvoiceListBySupplyId")
+    public List<Purchase> getNoInvoiceListBySupplyId(@RequestParam("supplyId") String supplyId) {
+        return purchaseService.getNoInvoiceListBySupplyId(supplyId);
+    }
+    /**
      * 根据供应商查询采购合同
      */
     @GetMapping("/getListBySupplyId")
     public List<Purchase> getListBySupplyId(@RequestParam("supplyId") String supplyId) {
-        return purchaseService.getListBySupplyId(supplyId);
+        return purchaseService.getNoInvoiceListBySupplyId(supplyId);
     }
-
     /**
      * 货款账单
      */

+ 8 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/PurchaseService.java

@@ -54,6 +54,14 @@ public interface PurchaseService extends BaseService<Purchase> {
     void delete(Long id);
 
     /**
+     * 根据供应商查询无发票的采购合同
+     *
+     * @param supplyId
+     * @return
+     */
+    List<Purchase> getNoInvoiceListBySupplyId(String supplyId);
+
+    /**
      * 根据供应商查询采购合同
      *
      * @param supplyId

+ 33 - 1
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/impl/PurchaseServiceImpl.java

@@ -361,7 +361,39 @@ public class PurchaseServiceImpl extends ServiceImpl<PurchaseMapper, Purchase>
     }
 
     /**
-     * 根据供应商查询采购合同
+     * 根据供应商查询无发票的采购合同
+     *
+     * @param supplyId
+     * @return
+     */
+    @Override
+    public List<Purchase> getNoInvoiceListBySupplyId(String supplyId) {
+        if (StringUtils.isEmpty(supplyId)) {
+            throw new ServiceException("供应商ID不能为空");
+        }
+        List<Purchase> list = this.list(Wrappers.<Purchase>query().lambda().eq(Purchase::getSupplyId, supplyId).eq(Purchase::getPurchaseStatus, PurchaseStatusEnum.PASS.getKey()).ne(Purchase::getInvoiceType,"0"));
+        List<Long> ids = list.stream().distinct().map(Purchase::getId).collect(Collectors.toList());
+        List<InvoiceDetailsVo> invoiceDetailsList = invoiceDetailsService.getSumMoneyByPurchaseIds(ids);
+        Map<Long, BigDecimal> invoiceMap = invoiceDetailsList.stream().collect(Collectors.toMap(InvoiceDetailsVo::getPurchaseId, InvoiceDetailsVo::getSumMoney));
+        List<PayDetailVo> payDetailVoList = payDetailService.getSumMoneyByPurchaseIds(ids);
+        Map<Long, BigDecimal> payMap = payDetailVoList.stream().collect(Collectors.toMap(PayDetailVo::getPurchaseId, PayDetailVo::getSumMoney));
+        for (Purchase p : list) {
+            if (MapUtils.isNotEmpty(invoiceMap)) {
+                p.setSumInvoiceMoney(invoiceMap.getOrDefault(p.getId(), BigDecimal.ZERO));
+            } else {
+                p.setSumInvoiceMoney(BigDecimal.ZERO);
+            }
+            if (MapUtils.isNotEmpty(payMap)) {
+                p.setSumPayMoney(payMap.getOrDefault(p.getId(), BigDecimal.ZERO));
+            } else {
+                p.setSumPayMoney(BigDecimal.ZERO);
+            }
+        }
+
+        return list;
+    }
+    /**
+     * 根据供应商查询无发票的采购合同
      *
      * @param supplyId
      * @return