From 9fe1ec3afe8696c628d076d1f76686c4efc3012e Mon Sep 17 00:00:00 2001
From: zc <zyzc>
Date: 星期二, 21 十月 2025 10:49:55 +0800
Subject: [PATCH] 容器初始化功能优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java | 99 +++++++++++++++++++++++++++++++++++--------------
1 files changed, 70 insertions(+), 29 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 ddf7c51..ccf2f5b 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
@@ -16,6 +16,8 @@
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;
import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +41,8 @@
private QlyIsptItemService qlyIsptItemService;
@Autowired
private WarehouseAreasItemServiceImpl warehouseAreasItemService;
+ @Autowired
+ private CompanysServiceImpl companysService;
/**
* @param
@@ -106,22 +110,28 @@
throw new CoolException("鍗曟嵁鏄庣粏鏁伴噺淇敼澶辫触锛侊紒");
}
- WarehouseAreasItem orderItem = warehouseAreasItemService.getById(item.getRcptId());
- if (Objects.isNull(orderItem)) {
- throw new CoolException("鏀惰揣鍗曟嵁涓嶅瓨鍦紒锛�");
- }
- Double sum = item.getDisQty() + item.getSafeQty();
- orderItem.setIsptQty(sum);
+// WarehouseAreasItem orderItem = warehouseAreasItemService.getById(item.getRcptId());
+// if (Objects.isNull(orderItem)) {
+// throw new CoolException("鏀惰揣鍗曟嵁涓嶅瓨鍦紒锛�");
+// }
- if (!warehouseAreasItemService.updateById(orderItem)) {
- throw new CoolException("鏀惰揣鍖哄簱瀛樹俊鎭洿鏂板け璐ワ紒锛�");
- }
-
- if (Objects.isNull(orderItem.getIsptResult())) {
- operateReceipt(item, orderItem);
- } else {
-
- }
+// 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 +145,6 @@
.eq(QlyInspect::getId, isptItem.stream().findFirst().get().getIspectId()));
}
-// qlyIsptItemService.pageByIsptResult(null, new QueryWrapper<QlyIsptItem>())
return true;
}
@@ -145,48 +154,80 @@
* @description: 璐ㄦ鍚庝慨鏀规敹璐у尯瀛樹俊鎭�
* @version 1.0
*/
- private void operateReceipt(QlyIsptItem item, WarehouseAreasItem orderItem) {
- Double sum = item.getDisQty() + item.getSafeQty();
+ @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 (item.getSafeQty().compareTo(0.0) > 0) {
- orderItem.setIsptQty(item.getSafeQty());
+ if (safeQty.compareTo(0.0) > 0) {
+ orderItem.setIsptQty(safeQty).setAnfme(safeQty);
orderItem.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_EXCELLENT.val);
if (!warehouseAreasItemService.updateById(orderItem)) {
throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
}
}
- if (item.getDisQty().compareTo(0.0) > 0) {
- orderItem.setIsptQty(item.getDisQty())
+ WarehouseAreasItem areasItem = new WarehouseAreasItem();
+ BeanUtils.copyProperties(orderItem, areasItem);
+ if (disQty.compareTo(0.0) > 0) {
+ areasItem.setIsptQty(disQty)
+ .setAnfme(disQty)
.setId(null)
.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_DEFECT.val);
- if (!warehouseAreasItemService.saveOrUpdate(orderItem)) {
+ if (!warehouseAreasItemService.saveOrUpdate(areasItem)) {
throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
}
}
} else {
+ Double anfme = Math.round((orderItem.getAnfme() - sum) * 10000) / 10000.0;
+ orderItem.setAnfme(anfme);
+ if (!warehouseAreasItemService.updateById(orderItem)) {
+ throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
+ }
+
+ WarehouseAreasItem areasItem = new WarehouseAreasItem();
+ BeanUtils.copyProperties(orderItem, areasItem);
//鏈畬鎴愬仛娣诲姞鎿嶄綔
- if (item.getSafeQty().compareTo(0.0) > 0) {
- orderItem.setIsptQty(item.getSafeQty())
+ if (safeQty.compareTo(0.0) > 0) {
+ areasItem.setIsptQty(safeQty)
+ .setAnfme(safeQty)
.setId(null)
.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_EXCELLENT.val);
- if (!warehouseAreasItemService.saveOrUpdate(orderItem)) {
+ if (!warehouseAreasItemService.saveOrUpdate(areasItem)) {
throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
}
}
- if (item.getDisQty().compareTo(0.0) > 0) {
- orderItem.setIsptQty(item.getDisQty())
+ WarehouseAreasItem items = new WarehouseAreasItem();
+ BeanUtils.copyProperties(orderItem, items);
+ if (disQty.compareTo(0.0) > 0) {
+ items.setIsptQty(disQty)
+ .setAnfme(disQty)
.setId(null)
.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_DEFECT.val);
- if (!warehouseAreasItemService.saveOrUpdate(orderItem)) {
+ if (!warehouseAreasItemService.saveOrUpdate(items)) {
throw new CoolException("鏀惰揣鍖哄簱瀛樻槑缁嗘洿鏂板け璐ワ紒锛�");
}
}
}
}
+ @Override
+ public List<QlyIsptItem> selectIsptResult(LambdaQueryWrapper<QlyIsptItem> eq) {
+ return this.baseMapper.selectIsptResult(eq);
+ }
+
/**
* @author Ryan
* @date 2025/5/12
--
Gitblit v1.9.1