Переглянути джерело

Merge remote-tracking branch 'origin/demo_' into demo_

3254194295 3 роки тому
батько
коміт
9560ad6758

+ 10 - 4
platform-service/src/main/java/com/platform/service/sqarepartmanage/impl/SparePartInfoServiceImpl.java

@@ -572,14 +572,20 @@ public class SparePartInfoServiceImpl extends BaseServiceImpl<SparePartInfoMappe
             spareStoreMapper.insert(spareStore);
         }
 
-        // 插入设备关联
+        // 插入设备关联,排除model.getSbId,防止重复插入数据
         List<SbModelSpareBomDTO> detailList = model.getDetailList();
         if (!CollectionUtils.isEmpty(detailList)) {
+            List<SbModelSpareBomDTO> insertList = new ArrayList<>();
             for (SbModelSpareBomDTO detail : detailList) {
-                detail.setSpareId(model.getId());
-                detail.setId(IdGeneratorUtils.getObjectId());
+                if(!detail.getSbId().equals(model.getSbId())){
+                    detail.setSpareId(model.getId());
+                    detail.setId(IdGeneratorUtils.getObjectId());
+                    insertList.add(detail);
+                }
+            }
+            if(insertList.size() > 0){
+                sbModelSpareBomMapper.insertListforComplex(BeanConverterUtil.copyListProperties(insertList, SbModelSpareBom.class));
             }
-            sbModelSpareBomMapper.insertListforComplex(BeanConverterUtil.copyListProperties(detailList, SbModelSpareBom.class));
         }
         return super.saveModelHaveCreateInfo(model);
     }