|
@@ -6,8 +6,11 @@ import com.fdkankan.fusion.entity.CaseFusion;
|
|
|
import com.fdkankan.fusion.entity.FusionNum;
|
|
|
import com.fdkankan.fusion.exception.BusinessException;
|
|
|
import com.fdkankan.fusion.mapper.IFusionNumMapper;
|
|
|
+import com.fdkankan.fusion.request.CaseParam;
|
|
|
import com.fdkankan.fusion.request.FusionParam;
|
|
|
+import com.fdkankan.fusion.response.SceneVo;
|
|
|
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 org.apache.commons.lang3.StringUtils;
|
|
@@ -16,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -32,6 +36,8 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
|
|
|
|
|
|
@Autowired
|
|
|
ICaseFusionService caseFusionService;
|
|
|
+ @Autowired
|
|
|
+ ICaseService caseService;
|
|
|
|
|
|
@Override
|
|
|
public List<FusionNum> getByNum(String num) {
|
|
@@ -49,13 +55,33 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<FusionNum> getListByCaseId(Integer caseId) {
|
|
|
+ public List<SceneVo> getListByCaseId(Integer caseId, String token) {
|
|
|
List<CaseFusion> fusionList = caseFusionService.getListByCaseId(caseId);
|
|
|
if(fusionList.size()<=0){
|
|
|
return new ArrayList<>();
|
|
|
}
|
|
|
List<Integer> fusionIdList = fusionList.parallelStream().map(CaseFusion::getFusionId).collect(Collectors.toList());
|
|
|
- return getListByFusionIdList(fusionIdList);
|
|
|
+ List<FusionNum> listByFusionIdList = getListByFusionIdList(fusionIdList);
|
|
|
+ CaseParam param =new CaseParam();
|
|
|
+ HashMap<Integer, List<String>> typeMap = this.getTypeMap(listByFusionIdList);
|
|
|
+ param.setTypeMap(typeMap);
|
|
|
+ param.setCaseId(caseId);
|
|
|
+ return caseService.sceneList(param,token);
|
|
|
+ }
|
|
|
+
|
|
|
+ private HashMap<Integer, List<String>> getTypeMap( List<FusionNum> list) {
|
|
|
+ HashMap<Integer,List<String>> typeMap = new HashMap<>();
|
|
|
+ for (FusionNum fusionNum : list) {
|
|
|
+ List<String> numList ;
|
|
|
+ if(typeMap.get(fusionNum.getNumType()) == null){
|
|
|
+ numList = new ArrayList<>();
|
|
|
+ }else {
|
|
|
+ numList = typeMap.get(fusionNum.getNumType());
|
|
|
+ }
|
|
|
+ numList.add(fusionNum.getNum());
|
|
|
+ typeMap.put(fusionNum.getNumType(),numList);
|
|
|
+ }
|
|
|
+ return typeMap;
|
|
|
}
|
|
|
|
|
|
@Override
|