lyhzzz hai 10 meses
pai
achega
e587c6638a

+ 10 - 7
src/main/java/com/fdkankan/fusion/service/impl/FusionNumServiceImpl.java

@@ -136,15 +136,18 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
         if(model == null){
             throw new BusinessException(ResultCode.MODEL_NOT_EXIST);
         }
-        List<CaseFusion> list = caseFusionService.getListByCaseId(param.getCaseId());
         CaseFusion caseFusion = null;
-        if(list.size() <=0){
-            caseFusion = new CaseFusion();
-            caseFusion.setCaseId(param.getCaseId());
-            caseFusionService.save(caseFusion);
-            list.add(caseFusion);
+        synchronized (param.getCaseId()){
+            List<CaseFusion> list = caseFusionService.getListByCaseId(param.getCaseId());
+            if(list.size() <=0){
+                caseFusion = new CaseFusion();
+                caseFusion.setCaseId(param.getCaseId());
+                caseFusionService.save(caseFusion);
+                list.add(caseFusion);
+            }
+            caseFusion = list.get(0);
         }
-        caseFusion = list.get(0);
+
         List<FusionNum> fusionNums = this.getByFusionIdAndModelId(caseFusion.getFusionId(),param.getModelId());
         if(fusionNums.size()>0){
            this.removeByIds(fusionNums);