From da895b2581bd76d7c4c2df17cca1817924530a02 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 22 五月 2026 13:03:27 +0800
Subject: [PATCH] fix(account): 客户开票申请不通过后,重新开票申请提示有重复出库单+付款申请同理

---
 src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java |   89 +++++++++-----------------------------------
 1 files changed, 18 insertions(+), 71 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
index aaedff4..6d45432 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerProductController.java
@@ -1,36 +1,21 @@
 package com.ruoyi.sales.controller;
 
-import javax.servlet.http.HttpServletResponse;
-
 import cn.hutool.core.collection.CollUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.framework.web.domain.R;
-import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
-import com.ruoyi.procurementrecord.dto.ProcurementPageDtoCopy;
-import com.ruoyi.procurementrecord.service.ProcurementRecordService;
-import com.ruoyi.procurementrecord.utils.StockUtils;
-import com.ruoyi.purchase.dto.SimpleReturnOrderGroupDto;
-import com.ruoyi.purchase.mapper.PurchaseReturnOrderProductsMapper;
-import com.ruoyi.purchase.pojo.PurchaseReturnOrderProducts;
-import com.ruoyi.sales.dto.SalesLedgerProductDto;
-import com.ruoyi.sales.pojo.SalesLedgerProduct;
-import com.ruoyi.sales.service.ISalesLedgerProductService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
 import com.ruoyi.framework.aspectj.lang.annotation.Log;
 import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.controller.BaseController;
 import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.framework.web.page.TableDataInfo;
+import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.procurementrecord.service.ProcurementRecordService;
+import com.ruoyi.procurementrecord.utils.StockUtils;
+import com.ruoyi.purchase.dto.SimpleReturnOrderGroupDto;
+import com.ruoyi.purchase.mapper.PurchaseReturnOrderProductsMapper;
+import com.ruoyi.sales.pojo.SalesLedgerProduct;
+import com.ruoyi.sales.service.ISalesLedgerProductService;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
 
 import java.math.BigDecimal;
 import java.util.List;
@@ -44,38 +29,14 @@
  * @date 2025-05-08
  */
 @RestController
+@RequiredArgsConstructor
 @RequestMapping("/sales/product")
 public class SalesLedgerProductController extends BaseController
 {
-    @Autowired
-    private ISalesLedgerProductService salesLedgerProductService;
-    @Autowired
-    private ProcurementRecordService procurementRecordService;
-    @Autowired
-    private StockUtils stockUtils;
-
-    @Autowired
-    private PurchaseReturnOrderProductsMapper purchaseReturnOrderProductsMapper;
-
-
-    /**
-     * 鍥炴鐧昏鍒嗛〉鏌ヨ
-     */
-    @GetMapping("/listPageSalesLedger")
-    public AjaxResult listPage(Page page, SalesLedgerProductDto salesLedgerProduct) {
-        IPage<SalesLedgerProductDto> list = salesLedgerProductService.listPage(page,salesLedgerProduct);
-        return AjaxResult.success(list);
-    }
-
-
-    /**
-     * 浠樻鐧昏鍒嗛〉鏌ヨ
-     */
-    @GetMapping("/listPagePurchaseLedger")
-    public AjaxResult listPagePurchaseLedger(Page page, SalesLedgerProductDto salesLedgerProduct) {
-        IPage<SalesLedgerProductDto> list = salesLedgerProductService.listPagePurchaseLedger(page,salesLedgerProduct);
-        return AjaxResult.success(list);
-    }
+    private final ISalesLedgerProductService salesLedgerProductService;
+    private final ProcurementRecordService procurementRecordService;
+    private final StockUtils stockUtils;
+    private final PurchaseReturnOrderProductsMapper purchaseReturnOrderProductsMapper;
 
 
     /**
@@ -87,25 +48,11 @@
         if (CollUtil.isEmpty(list)) {
             return AjaxResult.success(list);
         }
-        //
-        List<Long> productIds = list.stream().map(SalesLedgerProduct::getId).collect(Collectors.toList());
+        List<Long> productIds = list.stream().map(SalesLedgerProduct::getProductModelId).collect(Collectors.toList());
         List<SimpleReturnOrderGroupDto> groupListByProductIds = purchaseReturnOrderProductsMapper.getReturnOrderGroupListByProductIds(productIds);
-        Map<Long, BigDecimal> returnOrderGroupDtoMap = groupListByProductIds.stream().collect(Collectors.toMap(SimpleReturnOrderGroupDto::getSalesLedgerProductId, item -> item.getSumReturnQuantity()));
+        Map<Long, BigDecimal> returnOrderGroupDtoMap = groupListByProductIds.stream().collect(Collectors.toMap(SimpleReturnOrderGroupDto::getProductModelId, item -> item.getSumReturnQuantity()));
 
         list.forEach(item -> {
-            if (item.getFutureTickets().compareTo(BigDecimal.ZERO) == 0) {
-                item.setFutureTickets(BigDecimal.ZERO);
-            }
-            if (item.getFutureTicketsAmount().compareTo(BigDecimal.ZERO) == 0) {
-                item.setFutureTicketsAmount(BigDecimal.ZERO);
-            }
-//            ProcurementPageDto procurementDto = new ProcurementPageDto();
-//            procurementDto.setSalesLedgerProductId(item.getId());
-//            procurementDto.setProductCategory(item.getProductCategory());
-//            IPage<ProcurementPageDtoCopy> result = procurementRecordService.listPageCopyByProduction(new Page<>(1,-1), procurementDto);
-//            BigDecimal stockQuantity = stockUtils.getStockQuantity(item.getProductModelId()).get("stockQuantity");
-
-//                ProcurementPageDtoCopy procurementDtoCopy = result.getRecords().get(0);
             if (item.getApproveStatus() != 2) {
                 if (item.getHasSufficientStock() == 0) {
                     item.setApproveStatus(0);
@@ -114,7 +61,7 @@
                 }
             }
             // 缁熻閫�璐ф暟閲�
-            BigDecimal returnQuality = returnOrderGroupDtoMap.getOrDefault(item.getId(), BigDecimal.ZERO);
+            BigDecimal returnQuality = returnOrderGroupDtoMap.getOrDefault(item.getProductModelId(), BigDecimal.ZERO);
             item.setReturnQuality(returnQuality);
             item.setAvailableQuality(item.getQuantity().subtract(returnQuality));
         });

--
Gitblit v1.9.3