From 61ad48645e045591a0e82df746faba8f70d75674 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 31 三月 2026 17:59:29 +0800
Subject: [PATCH] fix:1.质检增加批号和供应商(区分质检和不质检)
---
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java | 144 +++++++++++++++++++++++++++++------------------
1 files changed, 88 insertions(+), 56 deletions(-)
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index 320b286..17f1a29 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -1,29 +1,23 @@
package com.ruoyi.purchase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.account.pojo.AccountExpense;
-import com.ruoyi.account.pojo.AccountIncome;
import com.ruoyi.account.service.AccountExpenseService;
-import com.ruoyi.account.service.AccountIncomeService;
import com.ruoyi.approve.pojo.ApproveProcess;
import com.ruoyi.approve.service.impl.ApproveProcessServiceImpl;
import com.ruoyi.approve.vo.ApproveProcessVO;
import com.ruoyi.basic.mapper.ProductMapper;
import com.ruoyi.basic.mapper.ProductModelMapper;
import com.ruoyi.basic.mapper.SupplierManageMapper;
-import com.ruoyi.basic.pojo.Customer;
import com.ruoyi.basic.pojo.Product;
import com.ruoyi.basic.pojo.ProductModel;
import com.ruoyi.basic.pojo.SupplierManage;
import com.ruoyi.common.enums.FileNameType;
import com.ruoyi.common.exception.base.BaseException;
-import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -39,22 +33,29 @@
import com.ruoyi.purchase.dto.PurchaseLedgerImportDto;
import com.ruoyi.purchase.dto.PurchaseLedgerProductImportDto;
import com.ruoyi.purchase.mapper.*;
-import com.ruoyi.purchase.pojo.*;
+import com.ruoyi.purchase.pojo.PaymentRegistration;
+import com.ruoyi.purchase.pojo.ProductRecord;
+import com.ruoyi.purchase.pojo.PurchaseLedger;
+import com.ruoyi.purchase.pojo.TicketRegistration;
import com.ruoyi.purchase.service.IPurchaseLedgerService;
import com.ruoyi.quality.mapper.*;
-import com.ruoyi.quality.pojo.*;
-import com.ruoyi.sales.dto.SalesLedgerImportDto;
-import com.ruoyi.sales.dto.SalesLedgerProductImportDto;
-import com.ruoyi.sales.mapper.*;
+import com.ruoyi.quality.pojo.QualityInspect;
+import com.ruoyi.quality.pojo.QualityInspectParam;
+import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.pojo.QualityTestStandardParam;
+import com.ruoyi.sales.mapper.CommonFileMapper;
+import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
+import com.ruoyi.sales.mapper.SalesLedgerMapper;
+import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
import com.ruoyi.sales.pojo.CommonFile;
import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
import com.ruoyi.sales.pojo.SalesLedger;
import com.ruoyi.sales.pojo.SalesLedgerProduct;
import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
-import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.FilenameUtils;
import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
@@ -84,52 +85,71 @@
* @date 2025-05-09
*/
@Service
-@RequiredArgsConstructor
@Slf4j
public class PurchaseLedgerServiceImpl extends ServiceImpl<PurchaseLedgerMapper, PurchaseLedger> implements IPurchaseLedgerService {
- private final AccountExpenseService accountExpenseService;
- private final PurchaseLedgerMapper purchaseLedgerMapper;
+ @Autowired
+ private AccountExpenseService accountExpenseService;
+ @Autowired
+ private PurchaseLedgerMapper purchaseLedgerMapper;
- private final SalesLedgerMapper salesLedgerMapper;
- private final SalesLedgerProductMapper salesLedgerProductMapper;
+ @Autowired
+ private SalesLedgerMapper salesLedgerMapper;
+ @Autowired
+ private SalesLedgerProductMapper salesLedgerProductMapper;
- private final SysUserMapper userMapper;
+ @Autowired
+ private SysUserMapper userMapper;
- private final TempFileMapper tempFileMapper;
+ @Autowired
+ private TempFileMapper tempFileMapper;
- private final CommonFileMapper commonFileMapper;
+ @Autowired
+ private CommonFileMapper commonFileMapper;
- private final SupplierManageMapper supplierManageMapper;
+ @Autowired
+ private SupplierManageMapper supplierManageMapper;
- private final ProductMapper productMapper;
+ @Autowired
+ private ProductMapper productMapper;
- private final ProductModelMapper productModelMapper;
+ @Autowired
+ private ProductModelMapper productModelMapper;
- private final SysUserMapper sysUserMapper;
+ @Autowired
+ private SysUserMapper sysUserMapper;
- private final TicketRegistrationMapper ticketRegistrationMapper;
+ @Autowired
+ private TicketRegistrationMapper ticketRegistrationMapper;
- private final ProductRecordMapper productRecordMapper;
+ @Autowired
+ private ProductRecordMapper productRecordMapper;
- private final PaymentRegistrationMapper paymentRegistrationMapper;
-
- private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
-
- private final StringRedisTemplate redisTemplate;
- private final QualityInspectMapper qualityInspectMapper;
- private final CommonFileServiceImpl commonFileService;
- private final QualityTestStandardBindingMapper qualityTestStandardBindingMapper;
- private final QualityTestStandardParamMapper qualityTestStandardParamMapper;
- private final QualityTestStandardMapper qualityTestStandardMapper;
- private final QualityInspectParamMapper qualityInspectParamMapper;
-
- private final ApproveProcessServiceImpl approveProcessService;
-
- private final ProcurementRecordMapper procurementRecordStorageMapper;
-
- private final PurchaseLedgerTemplateMapper purchaseLedgerTemplateMapper;
-
- private final SalesLedgerProductTemplateMapper salesLedgerProductTemplateMapper;
+ @Autowired
+ private PaymentRegistrationMapper paymentRegistrationMapper;
+ @Autowired
+ private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
+ @Autowired
+ private StringRedisTemplate redisTemplate;
+ @Autowired
+ private QualityInspectMapper qualityInspectMapper;
+ @Autowired
+ private CommonFileServiceImpl commonFileService;
+ @Autowired
+ private QualityTestStandardBindingMapper qualityTestStandardBindingMapper;
+ @Autowired
+ private QualityTestStandardParamMapper qualityTestStandardParamMapper;
+ @Autowired
+ private QualityTestStandardMapper qualityTestStandardMapper;
+ @Autowired
+ private QualityInspectParamMapper qualityInspectParamMapper;
+ @Autowired
+ private ApproveProcessServiceImpl approveProcessService;
+ @Autowired
+ private ProcurementRecordMapper procurementRecordStorageMapper;
+ @Autowired
+ private PurchaseLedgerTemplateMapper purchaseLedgerTemplateMapper;
+ @Autowired
+ private SalesLedgerProductTemplateMapper salesLedgerProductTemplateMapper;
@Value("${file.upload-dir}")
private String uploadDir;
@@ -187,17 +207,17 @@
// 4. 澶勭悊瀛愯〃鏁版嵁
List<SalesLedgerProduct> productList = purchaseLedgerDto.getProductData();
if (productList != null && !productList.isEmpty()) {
- handleSalesLedgerProducts(purchaseLedger.getId(), productList, purchaseLedgerDto.getType());
+ handleSalesLedgerProducts(purchaseLedger.getId(), productList, purchaseLedgerDto.getType(),supplierManage);
}
- //鏂板鍘熸潗鏂欐楠�
- if (productList != null) {
- for (SalesLedgerProduct saleProduct : productList) {
- //鏄惁鎺ㄩ�佽川妫�锛屽鏋渢rue灏辨坊鍔�
- if (saleProduct.getIsChecked()) {
- addQualityInspect(purchaseLedger, saleProduct);
- }
- }
- }
+ //鏂板鍘熸潗鏂欐楠� 瀹℃壒涔嬪悗鎵嶇敓鎴愭楠�
+// if (productList != null) {
+// for (SalesLedgerProduct saleProduct : productList) {
+// //鏄惁鎺ㄩ�佽川妫�锛屽鏋渢rue灏辨坊鍔�
+// if (saleProduct.getIsChecked()) {
+// addQualityInspect(purchaseLedger, saleProduct);
+// }
+// }
+// }
// 5. 杩佺Щ涓存椂鏂囦欢鍒版寮忕洰褰�
if (purchaseLedgerDto.getTempFileIds() != null && !purchaseLedgerDto.getTempFileIds().isEmpty()) {
migrateTempFilesToFormal(purchaseLedger.getId(), purchaseLedgerDto.getTempFileIds());
@@ -210,6 +230,7 @@
QualityInspect qualityInspect = new QualityInspect();
qualityInspect.setInspectType(0);
qualityInspect.setSupplier(purchaseLedger.getSupplierName());
+ qualityInspect.setBatchNo(saleProduct.getBatchNo());
qualityInspect.setPurchaseLedgerId(purchaseLedger.getId());
qualityInspect.setProductId(saleProduct.getProductId());
qualityInspect.setProductName(saleProduct.getProductCategory());
@@ -234,7 +255,7 @@
}
}
- private void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, Integer type) {
+ private void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, Integer type,SupplierManage supplierManage) {
if (products == null || products.isEmpty()) {
throw new BaseException("浜у搧淇℃伅涓嶅瓨鍦�");
}
@@ -304,6 +325,8 @@
salesLedgerProduct.setFutureTickets(salesLedgerProduct.getQuantity());
salesLedgerProduct.setFutureTicketsAmount(salesLedgerProduct.getTaxInclusiveTotalPrice());
salesLedgerProduct.setPendingTicketsTotal(salesLedgerProduct.getTaxInclusiveTotalPrice());
+ salesLedgerProduct.setCustomer(supplierManage.getSupplierName());
+ salesLedgerProduct.setBatchNo(salesLedgerProduct.getBatchNo());
salesLedgerProductMapper.insert(salesLedgerProduct);
}
}
@@ -491,6 +514,15 @@
productWrapper.eq(SalesLedgerProduct::getSalesLedgerId, purchaseLedger.getId())
.eq(SalesLedgerProduct::getType, purchaseLedgerDto.getType());
List<SalesLedgerProduct> products = salesLedgerProductMapper.selectList(productWrapper);
+ // 鏌ヨ鍏宠仈浜у搧鐨刄ID
+ for (SalesLedgerProduct product : products) {
+ if (product.getProductModelId() != null) {
+ ProductModel productModel = productModelMapper.selectById(product.getProductModelId());
+ if (productModel != null) {
+ product.setUidNo(productModel.getUidNo());
+ }
+ }
+ }
// 3.鏌ヨ涓婁紶鏂囦欢
LambdaQueryWrapper<CommonFile> salesLedgerFileWrapper = new LambdaQueryWrapper<>();
--
Gitblit v1.9.3