From b7736c9542eb8512e125c155e00a594398a3a5a9 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 27 一月 2026 14:48:38 +0800
Subject: [PATCH] yys 采购去掉质检逻辑
---
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java | 102 ++++++++++++++++++++++----------------------------
1 files changed, 45 insertions(+), 57 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 7fa971c..b2a7d34 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -24,6 +24,8 @@
import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.other.mapper.TempFileMapper;
import com.ruoyi.other.pojo.TempFile;
+import com.ruoyi.procurementrecord.mapper.ProcurementRecordMapper;
+import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysUserMapper;
import com.ruoyi.purchase.dto.PurchaseLedgerDto;
@@ -36,12 +38,8 @@
import com.ruoyi.purchase.pojo.PurchaseLedger;
import com.ruoyi.purchase.pojo.TicketRegistration;
import com.ruoyi.purchase.service.IPurchaseLedgerService;
-import com.ruoyi.quality.mapper.QualityInspectMapper;
-import com.ruoyi.quality.mapper.QualityInspectParamMapper;
-import com.ruoyi.quality.mapper.QualityTestStandardMapper;
-import com.ruoyi.quality.pojo.QualityInspect;
-import com.ruoyi.quality.pojo.QualityInspectParam;
-import com.ruoyi.quality.pojo.QualityTestStandard;
+import com.ruoyi.quality.mapper.*;
+import com.ruoyi.quality.pojo.*;
import com.ruoyi.sales.mapper.*;
import com.ruoyi.sales.pojo.CommonFile;
import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
@@ -108,9 +106,11 @@
private final StringRedisTemplate redisTemplate;
private final QualityInspectMapper qualityInspectMapper;
- private final QualityTestStandardMapper qualityTestStandardMapper;
+ private final QualityTestStandardBindingMapper qualityTestStandardBindingMapper;
+ private final QualityTestStandardParamMapper qualityTestStandardParamMapper;
private final QualityInspectParamMapper qualityInspectParamMapper;
+ private final ProcurementRecordMapper procurementRecordStorageMapper;
@Value("${file.upload-dir}")
private String uploadDir;
@@ -188,41 +188,11 @@
purchaseLedger.setRecorderId(purchaseLedgerDto.getRecorderId());
purchaseLedger.setRecorderName(sysUser.getNickName());
purchaseLedger.setPhoneNumber(sysUser.getPhonenumber());
- // 2. 澶勭悊璐︽埛鏀跺叆
- AccountExpense accountExpense = new AccountExpense();
- accountExpense.setExpenseDate(purchaseLedger.getEntryDate());
- accountExpense.setExpenseType("0");
- accountExpense.setSupplierName(purchaseLedger.getSupplierName());
- accountExpense.setExpenseMoney(purchaseLedger.getContractAmount());
- accountExpense.setExpenseDescribed("閲囪喘鍚堝悓锛�" + purchaseLedger.getPurchaseContractNumber());
- accountExpense.setExpenseMethod("0");
- accountExpense.setInvoiceNumber(purchaseLedger.getPurchaseContractNumber());
- accountExpense.setInputTime(new Date());
- accountExpense.setInputUser(loginUser.getNickName());
-
-
// 3. 鏂板鎴栨洿鏂颁富琛�
if (purchaseLedger.getId() == null) {
purchaseLedgerMapper.insert(purchaseLedger);
-// accountIncomeService.save(accountIncome);
- accountExpenseService.save(accountExpense);
} else {
purchaseLedgerMapper.updateById(purchaseLedger);
- PurchaseLedger purchaseLedgerDB = purchaseLedgerMapper.selectById(purchaseLedger.getId());
- List<AccountExpense> accountExpenseDBs = accountExpenseService.getByInvoiceNumberList(purchaseLedger.getPurchaseContractNumber());
- if (!CollectionUtils.isEmpty(accountExpenseDBs)) {
- accountExpenseDBs.forEach(accountExpenseDB ->{
- accountExpenseDB.setExpenseDate(purchaseLedgerDB.getEntryDate());
- accountExpenseDB.setExpenseType("0");
- accountExpenseDB.setSupplierName(purchaseLedgerDB.getSupplierName());
- accountExpenseDB.setExpenseMoney(purchaseLedgerDB.getContractAmount());
- accountExpenseDB.setExpenseDescribed("閲囪喘鍚堝悓锛�" + purchaseLedgerDB.getPurchaseContractNumber());
- accountExpenseDB.setExpenseMethod("0");
- accountExpenseDB.setInvoiceNumber(purchaseLedgerDB.getPurchaseContractNumber());
- accountExpenseService.updateById(accountExpenseDB);
- });
- }
-
}
// 4. 澶勭悊瀛愯〃鏁版嵁
@@ -231,12 +201,14 @@
handleSalesLedgerProducts(purchaseLedger.getId(), productList, purchaseLedgerDto.getType());
}
//鏂板鍘熸潗鏂欐楠�
- 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());
@@ -250,27 +222,28 @@
qualityInspect.setInspectType(0);
qualityInspect.setSupplier(purchaseLedger.getSupplierName());
qualityInspect.setPurchaseLedgerId(purchaseLedger.getId());
- qualityInspect.setProductId(saleProduct.getId());
+ qualityInspect.setProductId(saleProduct.getProductId());
qualityInspect.setProductName(saleProduct.getProductCategory());
qualityInspect.setModel(saleProduct.getSpecificationModel());
qualityInspect.setProductModelId(saleProduct.getProductModelId());
qualityInspect.setUnit(saleProduct.getUnit());
qualityInspect.setQuantity(saleProduct.getQuantity());
qualityInspectMapper.insert(qualityInspect);
- QualityTestStandard qualityTestStandard = new QualityTestStandard();
- qualityTestStandard.setProductId(saleProduct.getProductId());
- List<QualityTestStandard> qualityTestStandards = qualityTestStandardMapper.qualityTestStandardList(qualityTestStandard);
- for (QualityTestStandard qualityTestStandardDB : qualityTestStandards) {
- QualityInspectParam qualityInspectParam = new QualityInspectParam();
- qualityInspectParam.setInspectId(qualityInspect.getId());
- qualityInspectParam.setParameterItem(qualityTestStandardDB.getParameterItem());
- qualityInspectParam.setUnit(qualityTestStandardDB.getUnit());
- qualityInspectParam.setStandardValue(qualityTestStandardDB.getStandardValue());
- qualityInspectParam.setControlValue(qualityTestStandardDB.getControlValue());
- qualityInspectParamMapper.insert(qualityInspectParam);
+ List<QualityTestStandardBinding> qualityTestStandardBindings = qualityTestStandardBindingMapper.selectList(
+ new LambdaQueryWrapper<QualityTestStandardBinding>()
+ .eq(QualityTestStandardBinding::getProductId, saleProduct.getProductId()));
+ if (qualityTestStandardBindings.size()>0){
+ qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery()
+ .eq(QualityTestStandardParam::getTestStandardId,qualityTestStandardBindings.get(0).getTestStandardId()))
+ .forEach(qualityTestStandardParam -> {
+ QualityInspectParam param = new QualityInspectParam();
+ com.ruoyi.common.utils.bean.BeanUtils.copyProperties(qualityTestStandardParam, param);
+ param.setId(null);
+ param.setInspectId(qualityInspect.getId());
+ qualityInspectParamMapper.insert(param);
+ });
}
}
-
private void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, Integer type) {
if (products == null || products.isEmpty()) {
@@ -341,6 +314,7 @@
salesLedgerProduct.setRegisterDate(localDateTime);
salesLedgerProduct.setFutureTickets(salesLedgerProduct.getQuantity());
salesLedgerProduct.setFutureTicketsAmount(salesLedgerProduct.getTaxInclusiveTotalPrice());
+ salesLedgerProduct.setPendingTicketsTotal(salesLedgerProduct.getTaxInclusiveTotalPrice());
salesLedgerProductMapper.insert(salesLedgerProduct);
}
}
@@ -433,9 +407,23 @@
}
@Override
+ @Transactional(rollbackFor = Exception.class)
public int deletePurchaseLedgerByIds(Long[] ids) {
if (ids == null || ids.length == 0) {
throw new BaseException("璇烽�変腑鑷冲皯涓�鏉℃暟鎹�");
+ }
+ // 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐叆搴撹褰�
+ LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductQueryWrapper = new LambdaQueryWrapper<>();
+ salesLedgerProductQueryWrapper.in(SalesLedgerProduct::getSalesLedgerId, ids)
+ .eq(SalesLedgerProduct::getType, 2);
+ List<SalesLedgerProduct> salesLedgerProducts = salesLedgerProductMapper.selectList(salesLedgerProductQueryWrapper);
+ if (CollectionUtils.isNotEmpty(salesLedgerProducts)) {
+ salesLedgerProducts.stream().forEach(salesLedgerProduct -> {
+ // 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︿骇鍝�
+ LambdaQueryWrapper<ProcurementRecordStorage> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(ProcurementRecordStorage::getSalesLedgerProductId, salesLedgerProduct.getId());
+ procurementRecordStorageMapper.delete(queryWrapper);
+ });
}
// 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︿骇鍝�
LambdaQueryWrapper<SalesLedgerProduct> queryWrapper = new LambdaQueryWrapper<>();
@@ -444,7 +432,7 @@
salesLedgerProductMapper.delete(queryWrapper);
// 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︾殑鏉ョエ鐧昏
LambdaQueryWrapper<TicketRegistration> ticketRegistrationLambdaQueryWrapper = new LambdaQueryWrapper<>();
- ticketRegistrationLambdaQueryWrapper.in(TicketRegistration::getSalesLedgerId,ids);
+ ticketRegistrationLambdaQueryWrapper.in(TicketRegistration::getPurchaseLedgerId,ids);
ticketRegistrationMapper.delete(ticketRegistrationLambdaQueryWrapper);
// 鎵归噺鍒犻櫎鍏宠仈鐨勯噰璐彴璐︾殑鏉ョエ鐧昏璁板綍
LambdaQueryWrapper<ProductRecord> productRecordLambdaQueryWrapper = new LambdaQueryWrapper<>();
--
Gitblit v1.9.3