Explorar o código

模型列表修改

lyhzzz %!s(int64=3) %!d(string=hai) anos
pai
achega
3e6a36288e

+ 2 - 0
src/main/java/com/fdkankan/fusion/service/IModelService.java

@@ -31,4 +31,6 @@ public interface IModelService extends IService<Model> {
     void deleteByNum(List<String> numList);
 
     List<Model> getByUserName(String username);
+
+    List<Model> getListByModelIds(List<Integer> modelIds);
 }

+ 14 - 6
src/main/java/com/fdkankan/fusion/service/impl/FusionNumServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.fdkankan.common.constant.ErrorCode;
 import com.fdkankan.fusion.entity.CaseFusion;
 import com.fdkankan.fusion.entity.FusionNum;
+import com.fdkankan.fusion.entity.Model;
 import com.fdkankan.fusion.exception.BusinessException;
 import com.fdkankan.fusion.mapper.IFusionNumMapper;
 import com.fdkankan.fusion.request.CaseParam;
@@ -15,6 +16,7 @@ import com.fdkankan.fusion.service.ICaseFusionService;
 import com.fdkankan.fusion.service.ICaseService;
 import com.fdkankan.fusion.service.IFusionNumService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fdkankan.fusion.service.IModelService;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +42,8 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
     ICaseFusionService caseFusionService;
     @Autowired
     ICaseService caseService;
+    @Autowired
+    IModelService modelService;
 
     @Override
     public List<FusionNum> getByNum(String num) {
@@ -71,7 +75,6 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
         List<SceneVo> sceneVos = caseService.sceneList(param, token);
         HashMap<Integer,SceneVo> sceneMap = new HashMap<>();
         sceneVos.forEach(entity -> sceneMap.put(entity.getModelId(),entity));
-
         List<FusionNumVo> numVoList = new ArrayList<>();
         for (FusionNum fusionNum : listByFusionIdList) {
             FusionNumVo fusionNumVo = new FusionNumVo();
@@ -84,15 +87,20 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
 
     private HashMap<Integer, List<String>> getTypeMap( List<FusionNum> list) {
         HashMap<Integer,List<String>> typeMap = new HashMap<>();
-        for (FusionNum fusionNum : list) {
+        List<Integer> modelIds = list.parallelStream().map(FusionNum::getModelId).collect(Collectors.toList());
+        List<Model> modelList = modelService.getListByModelIds(modelIds);
+        for (Model model : modelList) {
+            if(model.getType() == 3){           //用户上传模型跳过
+                continue;
+            }
             List<String> numList ;
-            if(typeMap.get(fusionNum.getModelId()) == null){
+            if(typeMap.get(model.getType()) == null){
                 numList = new ArrayList<>();
             }else {
-                numList = typeMap.get(fusionNum.getModelId());
+                numList = typeMap.get(model.getType());
             }
-            numList.add(fusionNum.getModelId().toString());
-            typeMap.put(fusionNum.getModelId(),numList);
+            numList.add(model.getNum());
+            typeMap.put(model.getType(),numList);
         }
         return typeMap;
     }

+ 7 - 0
src/main/java/com/fdkankan/fusion/service/impl/ModelServiceImpl.java

@@ -148,6 +148,13 @@ public class ModelServiceImpl extends ServiceImpl<IModelMapper, Model> implement
     }
 
     @Override
+    public List<Model> getListByModelIds(List<Integer> modelIds) {
+        LambdaQueryWrapper<Model> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(Model::getModelId,modelIds);
+        return this.list(wrapper);
+    }
+
+    @Override
     public void deleteByNum(List<String> numList) {
         LambdaQueryWrapper<Model> wrapper = new LambdaQueryWrapper<>();
         wrapper.in(Model::getNum,numList);