From cfe049492f81d2c650a2b17348593edbc5054498 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期三, 18 三月 2026 07:52:44 +0800
Subject: [PATCH] #3.5
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java | 74 +++++++++++++++++++++++--------------
1 files changed, 46 insertions(+), 28 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
index d375c92..0f1d5f6 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
@@ -10,12 +10,13 @@
import com.vincent.rsf.server.manager.controller.params.IsptItemsParams;
import com.vincent.rsf.server.manager.entity.*;
import com.vincent.rsf.server.manager.enums.QlyIsptResult;
+import com.vincent.rsf.server.manager.mapper.QlyInspectMapper;
import com.vincent.rsf.server.manager.mapper.QlyIsptItemMapper;
import com.vincent.rsf.server.manager.service.AsnOrderItemService;
import com.vincent.rsf.server.manager.service.QlyInspectResultService;
-import com.vincent.rsf.server.manager.service.QlyInspectService;
import com.vincent.rsf.server.manager.service.QlyIsptItemService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -30,16 +31,16 @@
public class QlyIsptItemServiceImpl extends ServiceImpl<QlyIsptItemMapper, QlyIsptItem> implements QlyIsptItemService {
@Autowired
- private QlyInspectService qlyInspectService;
+ private QlyInspectMapper qlyInspectMapper;
@Autowired
private AsnOrderItemService asnOrderItemService;
@Autowired
private QlyInspectResultService qlyInspectResultService;
@Autowired
- private QlyIsptItemService qlyIsptItemService;
- @Autowired
private WarehouseAreasItemServiceImpl warehouseAreasItemService;
+ @Autowired
+ private CompanysServiceImpl companysService;
/**
* @param
@@ -100,34 +101,35 @@
Double isptQty = isptRelt.stream().mapToDouble(QlyInspectResult::getAnfme).sum();
- if (!qlyIsptItemService.update(new LambdaUpdateWrapper<QlyIsptItem>()
+ if (!this.update(new LambdaUpdateWrapper<QlyIsptItem>()
.set(QlyIsptItem::getUpdateBy, loginUserId)
.set(QlyIsptItem::getAnfme, isptQty)
.eq(QlyIsptItem::getId, item.getId()))) {
throw new CoolException("鍗曟嵁鏄庣粏鏁伴噺淇敼澶辫触锛侊紒");
}
- WarehouseAreasItem orderItem = warehouseAreasItemService.getById(item.getRcptId());
- if (Objects.isNull(orderItem)) {
- throw new CoolException("鏀惰揣鍗曟嵁涓嶅瓨鍦紒锛�");
- }
+// WarehouseAreasItem orderItem = warehouseAreasItemService.getById(item.getRcptId());
+// if (Objects.isNull(orderItem)) {
+// throw new CoolException("鏀惰揣鍗曟嵁涓嶅瓨鍦紒锛�");
+// }
- Double disQty = Objects.isNull(item.getDisQty()) ? 0 : item.getDisQty();
- Double safeQty = Objects.isNull(item.getSafeQty()) ? 0 : item.getSafeQty();
-
- Double sum = disQty + safeQty;
- orderItem.setIsptQty(sum);
-
- if (sum.compareTo(0.0) > 0) {
- if (!warehouseAreasItemService.updateById(orderItem)) {
- throw new CoolException("鏀惰揣鍖哄簱瀛樹俊鎭洿鏂板け璐ワ紒锛�");
- }
-
- //鏂板缓璐ㄦ鍗曪紝璐ㄦ缁撴灉涓嶄細鏈夎川妫�缁撴灉
- if (Objects.isNull(orderItem.getIsptResult())) {
- operateReceipt(item, orderItem);
- }
- }
+// Double disQty = Objects.isNull(item.getDisQty()) ? 0 : item.getDisQty();
+// Double safeQty = Objects.isNull(item.getSafeQty()) ? 0 : item.getSafeQty();
+//
+// Double sum = disQty + safeQty;
+// orderItem.setIsptQty(sum);
+//
+// if (sum.compareTo(0.0) > 0) {
+// if (!warehouseAreasItemService.updateById(orderItem)) {
+// throw new CoolException("鏀惰揣鍖哄簱瀛樹俊鎭洿鏂板け璐ワ紒锛�");
+// }
+// //鏂板缓璐ㄦ鍗曪紝涓嶄細鏈夎川妫�缁撴灉
+// confirmReceipt(item, orderItem);
+//
+//// if (Objects.isNull(orderItem.getIsptResult())) {
+//// operateReceipt(item, orderItem);
+//// }
+// }
}
Set<Long> isptIds = isptItem.stream().map(QlyIsptItem::getIspectId).collect(Collectors.toSet());
@@ -135,7 +137,7 @@
.in(QlyInspectResult::getIsptId, isptIds));
Double sum = items.stream().mapToDouble(QlyInspectResult::getAnfme).sum();
if (sum.compareTo(0.00) > 0) {
- qlyInspectService.update(new LambdaUpdateWrapper<QlyInspect>()
+ qlyInspectMapper.update(null, new LambdaUpdateWrapper<QlyInspect>()
.set(QlyInspect::getIsptQty, sum)
.set(QlyInspect::getUpdateBy, loginUserId)
.eq(QlyInspect::getId, isptItem.stream().findFirst().get().getIspectId()));
@@ -150,10 +152,20 @@
* @description: 璐ㄦ鍚庝慨鏀规敹璐у尯瀛樹俊鎭�
* @version 1.0
*/
- private void operateReceipt(QlyIsptItem item, WarehouseAreasItem orderItem) {
+ @Transactional(rollbackFor = Exception.class)
+ public void confirmReceipt(QlyIsptItem item, WarehouseAreasItem orderItem) {
Double disQty = Objects.isNull(item.getDisQty()) ? 0 : item.getDisQty();
Double safeQty = Objects.isNull(item.getSafeQty()) ? 0 : item.getSafeQty();
Double sum = disQty + safeQty;
+
+ WkOrderItem wkOrderItem = asnOrderItemService.getById(item.getAsnItemId());
+ if (Objects.isNull(wkOrderItem)) {
+ if (StringUtils.isNoneBlank(wkOrderItem.getSplrCode())) {
+ Companys companys = companysService.getOne(new LambdaQueryWrapper<Companys>().eq(Companys::getCode, wkOrderItem.getSplrCode()));
+ orderItem.setSplrId(companys.getId());
+ }
+ }
+
if (sum.compareTo(orderItem.getAnfme()) >= 0) {
//瀹屾垚璐ㄦ,鍋氭洿鏂版搷浣�
if (safeQty.compareTo(0.0) > 0) {
@@ -176,7 +188,8 @@
}
}
} else {
- orderItem.setAnfme(orderItem.getAnfme() - sum);
+ Double anfme = Math.round((orderItem.getAnfme() - sum) * 10000) / 10000.0;
+ orderItem.setAnfme(anfme);
if (!warehouseAreasItemService.updateById(orderItem)) {
throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
}
@@ -208,6 +221,11 @@
}
}
+ @Override
+ public List<QlyIsptItem> selectIsptResult(LambdaQueryWrapper<QlyIsptItem> eq) {
+ return this.baseMapper.selectIsptResult(eq);
+ }
+
/**
* @author Ryan
* @date 2025/5/12
--
Gitblit v1.9.1