|
@@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.fdkankan.fusion.common.FilePath;
|
|
import com.fdkankan.fusion.common.FilePath;
|
|
import com.fdkankan.fusion.common.util.OBJToGLBUtil;
|
|
import com.fdkankan.fusion.common.util.OBJToGLBUtil;
|
|
import com.fdkankan.fusion.entity.CaseNumEntity;
|
|
import com.fdkankan.fusion.entity.CaseNumEntity;
|
|
|
|
+import com.fdkankan.fusion.entity.Model;
|
|
import com.fdkankan.fusion.mapper.ICaseNumMapper;
|
|
import com.fdkankan.fusion.mapper.ICaseNumMapper;
|
|
import com.fdkankan.fusion.request.SceneNumParam;
|
|
import com.fdkankan.fusion.request.SceneNumParam;
|
|
import com.fdkankan.fusion.service.ICaseNumService;
|
|
import com.fdkankan.fusion.service.ICaseNumService;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
+import com.fdkankan.fusion.service.IModelService;
|
|
import com.fdkankan.fyun.oss.UploadToOssUtil;
|
|
import com.fdkankan.fyun.oss.UploadToOssUtil;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
@@ -38,6 +40,8 @@ public class CaseNumServiceImpl extends ServiceImpl<ICaseNumMapper, CaseNumEntit
|
|
private String GLB_PATH;
|
|
private String GLB_PATH;
|
|
@Value("${upload.query-path}")
|
|
@Value("${upload.query-path}")
|
|
private String queryPath;
|
|
private String queryPath;
|
|
|
|
+ @Autowired
|
|
|
|
+ IModelService modelService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<CaseNumEntity> getByCaseId(Integer caseId) {
|
|
public List<CaseNumEntity> getByCaseId(Integer caseId) {
|
|
@@ -53,20 +57,33 @@ public class CaseNumServiceImpl extends ServiceImpl<ICaseNumMapper, CaseNumEntit
|
|
this.deleteByCaseId(caseId);
|
|
this.deleteByCaseId(caseId);
|
|
|
|
|
|
List<CaseNumEntity> newCaseNums = new ArrayList<>();
|
|
List<CaseNumEntity> newCaseNums = new ArrayList<>();
|
|
|
|
+ List<Model> modelList = new ArrayList<>();
|
|
for (SceneNumParam param : sceneNumParam) {
|
|
for (SceneNumParam param : sceneNumParam) {
|
|
for (String num : param.getNumList()) {
|
|
for (String num : param.getNumList()) {
|
|
CaseNumEntity caseNumEntity = new CaseNumEntity();
|
|
CaseNumEntity caseNumEntity = new CaseNumEntity();
|
|
caseNumEntity.setCaseId(caseId);
|
|
caseNumEntity.setCaseId(caseId);
|
|
caseNumEntity.setNumType(param.getType());
|
|
caseNumEntity.setNumType(param.getType());
|
|
caseNumEntity.setNum(num);
|
|
caseNumEntity.setNum(num);
|
|
- caseNumEntity.setGlbUrl(getGlbUrl(param.getType(),num));
|
|
|
|
newCaseNums.add(caseNumEntity);
|
|
newCaseNums.add(caseNumEntity);
|
|
|
|
+
|
|
|
|
+ Model model = new Model();
|
|
|
|
+ model.setModelDateType("obj");
|
|
|
|
+ model.setType(param.getType());
|
|
|
|
+ model.setModelObjUrl(String.format(OBJ_PATH ,num) +"/mesh.obj");
|
|
|
|
+ model.setModelGlbUrl(getGlbUrl(param.getType(),num));
|
|
|
|
+ model.setModelType("glb");
|
|
|
|
+ model.setNum(num);
|
|
|
|
+ model.setCreateStatus(1);
|
|
|
|
+ modelList.add(model);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
if(newCaseNums.size() >0){
|
|
if(newCaseNums.size() >0){
|
|
this.saveBatch(newCaseNums);
|
|
this.saveBatch(newCaseNums);
|
|
}
|
|
}
|
|
|
|
+ if(modelList.size() >0){
|
|
|
|
+ modelService.saveBatch(modelList);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
private String getGlbUrl(Integer type, String num) {
|
|
private String getGlbUrl(Integer type, String num) {
|
|
@@ -95,7 +112,12 @@ public class CaseNumServiceImpl extends ServiceImpl<ICaseNumMapper, CaseNumEntit
|
|
public void deleteByCaseId(Integer caseId) {
|
|
public void deleteByCaseId(Integer caseId) {
|
|
LambdaQueryWrapper<CaseNumEntity> wrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<CaseNumEntity> wrapper = new LambdaQueryWrapper<>();
|
|
wrapper.eq(CaseNumEntity::getCaseId,caseId);
|
|
wrapper.eq(CaseNumEntity::getCaseId,caseId);
|
|
- this.remove(wrapper);
|
|
|
|
|
|
+ List<CaseNumEntity> list = this.list(wrapper);
|
|
|
|
+ if(list.size() >0){
|
|
|
|
+ List<String> numList = list.parallelStream().map(CaseNumEntity::getNum).collect(Collectors.toList());
|
|
|
|
+ modelService.deleteByNum(numList);
|
|
|
|
+ this.remove(wrapper);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|