From 024504a3933e8f2f86e80383e61fa574524a0d28 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期二, 10 三月 2026 16:39:52 +0800
Subject: [PATCH] logo修改 +入库完成校验
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java | 76 ++++++++++++++++++++++++++++++++++++++
1 files changed, 76 insertions(+), 0 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
index 1932160..5088b9b 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java
@@ -56,7 +56,83 @@
private WaveService waveService;
@Autowired
private BasStationService basStationService;
+ @Autowired
+ private MatnrService matnrService;
+ /** 鍏ュ簱/鍑哄簱淇濆瓨鍓嶏細鑻ヨ鏍兼垨鍨嬪彿涓虹┖鍒欎粠鐗╂枡甯﹀嚭 */
+ private void fillSpecModelFromMatnr(LocItem item) {
+ if (item == null || item.getMatnrId() == null) {
+ return;
+ }
+ if (StringUtils.isNotBlank(item.getSpec()) && StringUtils.isNotBlank(item.getModel())) {
+ return;
+ }
+ Matnr matnr = matnrService.getById(item.getMatnrId());
+ if (matnr == null) {
+ return;
+ }
+ if (StringUtils.isBlank(item.getSpec())) {
+ item.setSpec(matnr.getSpec());
+ }
+ if (StringUtils.isBlank(item.getModel())) {
+ item.setModel(matnr.getModel());
+ }
+ }
+
+ @Override
+ public boolean save(LocItem entity) {
+ fillSpecModelFromMatnr(entity);
+ return super.save(entity);
+ }
+
+ @Override
+ public boolean saveBatch(Collection<LocItem> entityList) {
+ if (entityList != null) {
+ entityList.forEach(this::fillSpecModelFromMatnr);
+ }
+ return super.saveBatch(entityList);
+ }
+
+ @Override
+ public boolean saveBatch(Collection<LocItem> entityList, int batchSize) {
+ if (entityList != null) {
+ entityList.forEach(this::fillSpecModelFromMatnr);
+ }
+ return super.saveBatch(entityList, batchSize);
+ }
+
+ @Override
+ public void fillSpecModelFromMatnrForRecords(List<LocItem> records) {
+ if (records == null || records.isEmpty()) {
+ return;
+ }
+ Set<Long> matnrIds = new HashSet<>();
+ for (LocItem r : records) {
+ if (r.getMatnrId() != null && (StringUtils.isBlank(r.getSpec()) || StringUtils.isBlank(r.getModel()))) {
+ matnrIds.add(r.getMatnrId());
+ }
+ }
+ if (matnrIds.isEmpty()) {
+ return;
+ }
+ Map<Long, Matnr> matnrMap = matnrService.listByIds(matnrIds).stream()
+ .collect(Collectors.toMap(Matnr::getId, m -> m));
+ for (LocItem r : records) {
+ if (r.getMatnrId() == null) {
+ continue;
+ }
+ Matnr m = matnrMap.get(r.getMatnrId());
+ if (m == null) {
+ continue;
+ }
+ if (StringUtils.isBlank(r.getSpec())) {
+ r.setSpec(m.getSpec());
+ }
+ if (StringUtils.isBlank(r.getModel())) {
+ r.setModel(m.getModel());
+ }
+ }
+ }
/**
* 搴撳瓨鍑哄簱鐢熸垚鍑哄簱浠诲姟
--
Gitblit v1.9.1