|
@@ -105,6 +105,9 @@ open class JSONAnalyzerService {
|
|
|
// val baseObj = mapper.readValue<BaseObj<AllComponents>>(json.toString(), mapper.typeFactory.constructParametricType(BaseObj::class.java, AllComponents::class.java))
|
|
|
// 验证是否baseObj.modelId合法, 不合法不允许入库
|
|
|
val modelFile = checkModelId(baseObj.modelId) ?: return "ModelId ${baseObj.modelId} 不存在!"
|
|
|
+
|
|
|
+ val checkProject = checkProject(modelFile.projectId)
|
|
|
+
|
|
|
var result = true
|
|
|
// 获取model, 更新字段
|
|
|
result = result and ModelAnalyzer.analyze(dataService.modelFileService, modelFile, baseObj)
|
|
@@ -185,21 +188,37 @@ open class JSONAnalyzerService {
|
|
|
return "处理BoundarySegment异常"
|
|
|
}
|
|
|
|
|
|
- //修改万达管道名称对应标准管道名称
|
|
|
- val pdCompService = dataService.pdCompService // 管道对照
|
|
|
- val pdComps = pdCompService.selectAll().exec()
|
|
|
- val map = HashMap<String, String>()
|
|
|
- for (pdComp in pdComps) {
|
|
|
- map[pdComp.pPdName!!] = pdComp.pdName!!
|
|
|
+ var pipes = baseObj.elements!!.pipes as ArrayList<BaseComponent>?
|
|
|
+ var flexPipes = baseObj.elements!!.flexPipes as ArrayList<BaseComponent>?
|
|
|
+ var ducts = baseObj.elements!!.ducts as ArrayList<BaseComponent>?
|
|
|
+ var flexDucts = baseObj.elements!!.flexDucts as ArrayList<BaseComponent>?
|
|
|
+ var connectors = baseObj.elements!!.connectors
|
|
|
+
|
|
|
+
|
|
|
+ if(checkProject){
|
|
|
+ //修改万达管道名称对应标准管道名称
|
|
|
+ val pdCompService = dataService.pdCompService // 管道对照
|
|
|
+ val pdComps = pdCompService.selectAll().exec()
|
|
|
+ val map = HashMap<String, String>()
|
|
|
+ for (pdComp in pdComps) {
|
|
|
+ map[pdComp.pPdName!!] = pdComp.pdName!!
|
|
|
+ }
|
|
|
+ pipes = pipeConvert(null, baseObj.elements!!.pipes,map)
|
|
|
+ flexPipes = pipeConvert(null, baseObj.elements!!.flexPipes,map)
|
|
|
+ ducts = pipeConvert(null, baseObj.elements!!.flexPipes,map)
|
|
|
+ flexDucts = pipeConvert(baseObj.elements!!.ducts, null,map)
|
|
|
+ connectors = connectorConvert(baseObj.elements!!.connectors,map)
|
|
|
}
|
|
|
|
|
|
+
|
|
|
// 处理Pipe
|
|
|
val revitIdMap = HashMap<String, BaseComponent>() // revit_id --> 对象
|
|
|
result = result and RevitIdAnalyzer.analyzePipesDucts(
|
|
|
dataService.pipeService as SObjectService<BaseComponent>,
|
|
|
baseObj,
|
|
|
//baseObj.elements!!.pipes as ArrayList<BaseComponent>?,
|
|
|
- pipeConvert(null, baseObj.elements!!.pipes,map),
|
|
|
+// pipeConvert(null, baseObj.elements!!.pipes,map),
|
|
|
+ pipes,
|
|
|
revitIdMap,
|
|
|
"Pipe"
|
|
|
)
|
|
@@ -211,7 +230,8 @@ open class JSONAnalyzerService {
|
|
|
dataService.pipeService as SObjectService<BaseComponent>,
|
|
|
baseObj,
|
|
|
// baseObj.elements!!.flexPipes as ArrayList<BaseComponent>?,
|
|
|
- pipeConvert(null, baseObj.elements!!.flexPipes,map),
|
|
|
+// pipeConvert(null, baseObj.elements!!.flexPipes,map),
|
|
|
+ flexPipes,
|
|
|
revitIdMap,
|
|
|
"FlexPipe"
|
|
|
)
|
|
@@ -223,7 +243,8 @@ open class JSONAnalyzerService {
|
|
|
dataService.ductService as SObjectService<BaseComponent>,
|
|
|
baseObj,
|
|
|
// baseObj.elements!!.ducts as ArrayList<BaseComponent>?,
|
|
|
- pipeConvert(baseObj.elements!!.ducts, null,map),
|
|
|
+// pipeConvert(baseObj.elements!!.ducts, null,map),
|
|
|
+ ducts,
|
|
|
revitIdMap,
|
|
|
"Duct"
|
|
|
)
|
|
@@ -235,7 +256,8 @@ open class JSONAnalyzerService {
|
|
|
dataService.ductService as SObjectService<BaseComponent>,
|
|
|
baseObj,
|
|
|
// baseObj.elements!!.flexDucts as ArrayList<BaseComponent>?,
|
|
|
- pipeConvert(baseObj.elements!!.flexDucts, null,map),
|
|
|
+// pipeConvert(baseObj.elements!!.flexDucts, null,map),
|
|
|
+ flexDucts,
|
|
|
revitIdMap,
|
|
|
"FlexDuct"
|
|
|
)
|
|
@@ -278,7 +300,7 @@ open class JSONAnalyzerService {
|
|
|
baseObj,
|
|
|
baseObj.elements!!.equipments,
|
|
|
bimIdPrefix, revitIdMap,
|
|
|
- checkProject(modelFile.projectId),
|
|
|
+ checkProject,
|
|
|
dataService.equipCompService,
|
|
|
dataService.infoPointCompService,
|
|
|
dataService.unrecognizedEquipService
|
|
@@ -304,7 +326,8 @@ open class JSONAnalyzerService {
|
|
|
dataService.connectorService,
|
|
|
baseObj,
|
|
|
//连接件转换
|
|
|
- connectorConvert(baseObj.elements!!.connectors,map),
|
|
|
+// connectorConvert(baseObj.elements!!.connectors,map),
|
|
|
+ connectors,
|
|
|
revitIdMap
|
|
|
)
|
|
|
if (!result) {
|
|
@@ -381,9 +404,12 @@ open class JSONAnalyzerService {
|
|
|
|
|
|
fun checkProject(projectId: String?): Boolean {
|
|
|
if (projectId.isNullOrEmpty()) {
|
|
|
- return false;
|
|
|
+ return false
|
|
|
}
|
|
|
- return dataService.projectService.select(SFilter.eq("id", projectId)).entity() == null;
|
|
|
+ val projectConfig = dataService.projectService.select(SFilter.eq("id", projectId)).entity()
|
|
|
+ return if(projectConfig == null){
|
|
|
+ false
|
|
|
+ }else projectConfig.type == "wanda"
|
|
|
}
|
|
|
|
|
|
/**
|