Browse Source

********************WX***********************
修改outline

zhangweixin 4 years ago
parent
commit
c3426875ab
26 changed files with 264 additions and 141 deletions
  1. 2 2
      data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/graphtype/RelationType.kt
  2. 2 3
      data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/graphtype/RelationTypeProject.kt
  3. 5 5
      data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/objects/Floor.kt
  4. 4 4
      datacenter/src/main/kotlin/com/persagy/server/controllers/graphtype/GraphicTypeController.kt
  5. 53 13
      datacenter/src/main/kotlin/com/persagy/server/controllers/objects/FloorController.kt
  6. 2 2
      datacenter/src/main/kotlin/com/persagy/server/controllers/objects/GeneralSystemController.kt
  7. 3 3
      datacenter/src/main/kotlin/com/persagy/server/controllers/objects/ShaftController.kt
  8. 56 14
      datacenter/src/main/kotlin/com/persagy/server/controllers/objects/ZoneSpaceController.kt
  9. 0 2
      datacenter/src/main/kotlin/com/persagy/server/controllers/rel/RShContainSpBaseController.kt
  10. 2 1
      datacenter/src/main/kotlin/com/persagy/server/controllers/relation_calc/CalcSpecialController.kt
  11. 5 4
      datacenter/src/main/kotlin/com/persagy/server/controllers/relation_calc/RelationCalcController.kt
  12. 2 2
      datacenter/src/main/kotlin/com/persagy/server/services/graphtype/GraphicTypeService.kt
  13. 17 14
      datacenter/src/main/kotlin/com/persagy/server/services/objects/FloorService.kt
  14. 14 10
      datacenter/src/main/kotlin/com/persagy/server/services/objects/ZoneSpaceBaseService.kt
  15. 7 3
      datasyn/src/main/kotlin/com/persagy/server/syn/controllers/obj/ObjectFromToControllers.kt
  16. 3 3
      datasyn/src/main/kotlin/com/persagy/server/syn/task/SchedulerTask.kt
  17. 2 2
      equip-component/src/main/kotlin/com/persagy/server/controllers/EquipController.kt
  18. 2 1
      equip-component/src/main/kotlin/com/persagy/server/controllers/PointController.kt
  19. 1 1
      equip-component/src/main/kotlin/com/persagy/server/controllers/PropertyController.kt
  20. 8 11
      equip-component/src/main/kotlin/com/persagy/server/controllers/SpaceController.kt
  21. 2 5
      equip-component/src/main/kotlin/com/persagy/server/controllers/TenantController.kt
  22. 4 2
      equip-component/src/main/kotlin/com/persagy/server/controllers/planar/PlanarController.kt
  23. 6 0
      equip-component/src/main/kotlin/com/persagy/server/models/planar/PlanarSpace.kt
  24. 6 6
      equip-component/src/main/kotlin/com/persagy/server/service/objects/EquipmentService.kt
  25. 3 3
      equip-component/src/main/kotlin/com/persagy/server/service/objects/ShaftService.kt
  26. 53 25
      equip-component/src/main/kotlin/com/persagy/server/service/objects/ZoneSpaceBaseService.kt

+ 2 - 2
data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/graphtype/RelationType.kt

@@ -80,12 +80,12 @@ open class RelationType : RBaseInfo() {
     /** 是否需要配置源末端 */
     @Schema(description = "是否需要配置源末端")
     @Column(name = "is_source")
-    var isSource: Boolean? = null
+    var source: Boolean? = null
 
     /** 是否自动计算类型 */
     @Schema(description = "是否自动计算类型")
     @Column(name = "is_automatic")
-    var isAutomatic: Boolean? = null
+    var automatic: Boolean? = null
 
     /** 手动计算类型 1 禁用  2提示引导 3手动维护 */
     @Schema(description = "手动计算类型 1 禁用  2提示引导 3手动维护")

+ 2 - 3
data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/graphtype/RelationTypeProject.kt

@@ -26,7 +26,6 @@
 
 package com.persagy.server.datacenter.models.entities.graphtype
 
-import com.alibaba.fastjson.annotation.JSONField
 import com.persagy.server.datacenter.models.entities.base.RBaseInfo
 import io.swagger.v3.oas.annotations.media.Schema
 import javax.persistence.Column
@@ -78,12 +77,12 @@ open class RelationTypeProject : RBaseInfo() {
     /** 是否需要配置源末端 */
     @Schema(description = "是否需要配置源末端")
     @Column(name = "is_source")
-    var isSource: Boolean? = null
+    var source: Boolean? = null
 
     /** 是否自动计算类型 */
     @Schema(description = "是否自动计算类型")
     @Column(name = "is_automatic")
-    var isAutomatic: Boolean? = null
+    var automatic: Boolean? = null
 
     /** 手动计算类型 1 禁用  2提示引导 3手动维护 */
     @Schema(description = "手动计算类型 1 禁用  2提示引导 3手动维护")

+ 5 - 5
data-core/src/main/kotlin/com/persagy/server/datacenter/models/entities/objects/Floor.kt

@@ -146,13 +146,13 @@ open class Floor : BaseInfo() {
 
     /** 轮廓线 */
     @Schema(description = "轮廓线")
-////    @Column(name = "outline")
+    @Column(name = "outline")
     var outline: ArrayList<PointPosition>? = null
 
-    /** 级联-部件   table  对应关系表   idColumn 对应 本类的id    childIdColumn 级联对象的关系id ,注意 idColumn childIdColumn 非数据表中字段名,是实体类属性*/
-    @Schema(description = "级联-轮廓线")
-    @SCascade(table="floor_outline", idColumn="id", childIdColumn="id",self = false)
-    var floorOutline: FloorOutline? = null
+//    /** 级联-部件   table  对应关系表   idColumn 对应 本类的id    childIdColumn 级联对象的关系id ,注意 idColumn childIdColumn 非数据表中字段名,是实体类属性*/
+//    @Schema(description = "级联-轮廓线")
+//    @SCascade(table="floor_outline", idColumn="id", childIdColumn="id",self = false)
+//    var floorOutline: FloorOutline? = null
 
     /** 数量 */
     @Schema(description = "数量")

+ 4 - 4
datacenter/src/main/kotlin/com/persagy/server/controllers/graphtype/GraphicTypeController.kt

@@ -84,7 +84,7 @@ open class GraphicTypeController {
      */
     @Operation(summary="下载模板", description= "")
     @GetMapping(value = ["/template-downloads"])
-    fun templateDownloads(response: HttpServletResponse) {
+    fun templateDownloads(@RequestBody response: HttpServletResponse) {
         RelationTypeProjectService.templateDownloads(response)
     } // Fun templateDownloads
 
@@ -93,7 +93,7 @@ open class GraphicTypeController {
      */
     @Operation(summary="导出关系*", description="")
     @GetMapping(value = ["/export"])
-    fun exportExcel(response: HttpServletResponse, @RequestParam projectId: String,relType: String, code: String = "对象ID", zoneType: String? = null) {
+    fun exportExcel(@RequestBody response: HttpServletResponse, @RequestParam projectId: String,@RequestParam relType: String,@RequestParam code: String = "对象ID", @RequestParam zoneType: String? = null) {
         RelationTypeProjectService.exportExcel(response, projectId,relType, code, zoneType)
     } // Fun exportExcel
 
@@ -105,7 +105,7 @@ open class GraphicTypeController {
      */
     @Operation(summary = "导入excel", description = "")
     @PostMapping("/import")
-    fun importExcel(@RequestParam("file") file: MultipartFile, @RequestParam relType: String, zoneType: String? = null) : SBaseResponse {
+    fun importExcel(@RequestParam("file") file: MultipartFile, @RequestParam relType: String, @RequestParam zoneType: String? = null) : SBaseResponse {
         try {
             RelationTypeProjectService.importExcel(file, relType, zoneType)
         }catch (e : Exception){
@@ -119,7 +119,7 @@ open class GraphicTypeController {
      */
     @Operation(summary="下载报告", description ="")
     @GetMapping(value = ["/report-downloads"])
-    fun reportDownloads(response: HttpServletResponse, @RequestParam relType: String, zoneType: String? = null) {
+    fun reportDownloads(@RequestBody response: HttpServletResponse, @RequestParam relType: String, @RequestParam zoneType: String? = null) {
         RelationTypeProjectService.reportDownloads(response, relType, zoneType)
     } // Fun reportDownloads()
 

+ 53 - 13
datacenter/src/main/kotlin/com/persagy/server/controllers/objects/FloorController.kt

@@ -26,11 +26,12 @@
 
 package com.persagy.server.controllers.objects
 
+import com.persagy.base.extensions.toJson
 import com.persagy.database.SFilter
 import com.persagy.server.Opt
 import com.persagy.server.datacenter.models.entities.objects.Floor
-import com.persagy.server.datacenter.models.entities.objects.FloorOutline
 import com.persagy.server.services.objects.FloorService
+import com.persagy.service.SPageContext
 import com.persagy.service.models.requests.SCreateRequest
 import com.persagy.service.models.requests.SQueryRequest
 import com.persagy.service.models.requests.SUpdateRequest
@@ -96,30 +97,69 @@ open class FloorController {
         return FloorService.upDates(request)
     }
 
+//    /**
+//     * 更新楼层信息-Outline
+//     *
+//     *
+//     * @param request     更新楼层信息 Outline
+//     * @return 更新的结果
+//     */
+//    @Operation(summary = "更新楼层信息-Outline", description = "")
+//    @PostMapping(value = ["/outline/update"])
+//    fun updateOutlines(@RequestBody request: SUpdateRequest<FloorOutline>): SBaseResponse {
+//        return FloorService.updateOutline(request)
+//    }
+
     /**
      * 更新楼层信息-Outline
      *
      *
-     * @param request     更新楼层信息 Outline
-     * @return 更新的结果
+     * @param   request     更新楼层信息-Outline
+     * @return              更新的结果
      */
     @Operation(summary = "更新楼层信息-Outline", description = "")
-    @PostMapping(value = ["/outline/update"])
-    fun updateOutlines(@RequestBody request: SUpdateRequest<FloorOutline>): SBaseResponse {
+    @PostMapping(value = ["/update-outline"])
+    fun updateOutlines(@RequestBody request: SUpdateRequest<Floor>): SBaseResponse {
+        logger.debug("floorUpdate =${request.toJson()}")
         return FloorService.updateOutline(request)
-    }
+    } // Function update()
 
     /**
      * 查询楼层信息
      *
-     * @param request     查询信息条件
-     * @return 查询结果
+     * @param   request     查询信息条件
+     * @return              查询结果
      */
-    @Operation(summary = "查询楼层轮廓线信息", description = "级联 轮廓线 floorOutline")
-    @PostMapping(value = ["/outline/query"])
-    fun queryOutline(@RequestBody request: SQueryRequest): SQueryResponse<FloorOutline> {
-        return FloorService.floorOutlineService.pageQuery(request)
-    }
+    @Operation(summary = "查询楼层信息 - outline", description = "")
+    @PostMapping(value = ["/query-outline"])
+    fun queryOutline(@RequestBody request: SQueryRequest): SQueryResponse<Floor> {
+        logger.debug("floorQuery =${request.toJson()}")
+        if (!request.projection.isNullOrEmpty()){
+            request.projection!!.clear()
+        }
+        val list = ArrayList<String>()
+        list.add("id")
+        list.add("name")
+        list.add("localId")
+        list.add("localName")
+        list.add("sutline")
+        list.add("floorSequenceId")
+        list.add("modelId")
+        request.projection = list
+        return FloorService.pageQuery(request, arrayListOf(SFilter.eq("projectId", SPageContext.getHeader("projectId").toString())))
+    } // Function query()
+
+//    /**
+//     * 查询楼层信息
+//     *
+//     * @param request     查询信息条件
+//     * @return 查询结果
+//     */
+//    @Operation(summary = "查询楼层轮廓线信息", description = "级联 轮廓线 floorOutline")
+//    @PostMapping(value = ["/outline/query"])
+//    fun queryOutline(@RequestBody request: SQueryRequest): SQueryResponse<FloorOutline> {
+//        return FloorService.floorOutlineService.pageQuery(request)
+//    }
 
     /**
      * 查询楼层信息

+ 2 - 2
datacenter/src/main/kotlin/com/persagy/server/controllers/objects/GeneralSystemController.kt

@@ -136,7 +136,7 @@ open class GeneralSystemController {
      */
     @Operation(summary ="查询系统信息-系统建筑楼层一对多", description ="MajorName 专业名称 ,级联查询 系统分类名(categoryNames),系统下的设备(equipmentList),系统下的竖井(shaftList),业务空间(zoneSpaceBaseTableList)")
     @PostMapping(value = ["/query-new"])
-    fun query(buildingId: String?, floorId: String?, @RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem> {
+    fun query(@RequestParam buildingId: String?,@RequestParam floorId: String?, @RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem> {
         logger.debug("generalSystemQuery =${request.toJson()}")
         return GeneralSystemService.pageQuerys(buildingId, floorId, request)
     } // Function query()
@@ -164,7 +164,7 @@ open class GeneralSystemController {
     @Operation(summary ="查询没有和当前空间绑定的系统", description ="例如:prijectId=Pj4201050001,type=AirConditioningZone spaceId=Sp4201050001df2091cdf719443b80bb737aeabf0525 " +
             "spaceId 为当前空间id type为当前空间类型 ")
     @PostMapping(value = ["/unspace-sys"])
-    fun unSpaceSys( type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem>{
+    fun unSpaceSys(@RequestParam  type: String, @RequestParam spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem>{
         return GeneralSystemService.unSpaceSys(type,spaceId, request)
     } // // Function unSpaceSys()
 

+ 3 - 3
datacenter/src/main/kotlin/com/persagy/server/controllers/objects/ShaftController.kt

@@ -169,7 +169,7 @@ class ShaftController {
      */
     @Operation(summary ="查询和当前竖井有关联的业务空间", description ="shaftId 为竖井id")
     @PostMapping(value = ["/shaft-zoneSpaceBaseTable"])
-    fun shaftZoneSpaceBaseTable(ShaftId: String,@RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace>{
+    fun shaftZoneSpaceBaseTable(@RequestParam ShaftId: String,@RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace>{
         return ShaftService.shaftZoneSpaceBaseTable(ShaftId, request)
     } // Fun shaftZoneSpaceBaseTable()
 
@@ -181,7 +181,7 @@ class ShaftController {
      */
     @Operation(summary ="查询和当前竖井没有关联的业务空间", description ="shaftId 为竖井id")
     @PostMapping(value = ["/un-shaft-zoneSpaceBaseTable"])
-    fun unShaftZoneSpaceBaseTable(ShaftId: String,@RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace>{
+    fun unShaftZoneSpaceBaseTable(@RequestParam ShaftId: String,@RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace>{
         return ShaftService.unShaftZoneSpaceBaseTable(ShaftId, request)
     } // Fun shaftZoneSpaceBaseTable()
 
@@ -194,7 +194,7 @@ class ShaftController {
      */
     @Operation(summary ="查询和当前竖井有关联的业务空间所在建筑及楼层信息", description ="shaftId 为竖井id")
     @GetMapping(value = ["/shaft-zoneSpaceBaseTable-building"])
-    fun shaftZoneSpaceBaseTableBuilding(ShaftId: String,ObjectType:String?): SQueryResponse<BuildingDic>{
+    fun shaftZoneSpaceBaseTableBuilding(@RequestParam ShaftId: String,@RequestParam ObjectType:String?): SQueryResponse<BuildingDic>{
         return ShaftService.shaftZoneSpaceBaseTableBuilding(ShaftId,ObjectType)
     } // Fun shaftZoneSpaceBaseTable()
 

+ 56 - 14
datacenter/src/main/kotlin/com/persagy/server/controllers/objects/ZoneSpaceController.kt

@@ -30,17 +30,16 @@ import com.persagy.database.SFilter
 import com.persagy.server.Opt
 import com.persagy.server.datacenter.models.entities.assistant.DictSpaceProject
 import com.persagy.server.datacenter.models.entities.objects.Building
-import com.persagy.server.datacenter.models.entities.objects.SpaceOutline
 import com.persagy.server.datacenter.models.entities.objects.ZoneSpace
 import com.persagy.server.datacenter.models.entities.task.SpaceType
 import com.persagy.server.datacenter.models.requests.DCSQueryRequest
 import com.persagy.server.datacenter.models.requests.UpDataFloorAndBuildingRequests
+import com.persagy.server.datacenter.models.response.SpaceSQueryResponse
 import com.persagy.server.services.objects.ZoneSpaceBaseService
 import com.persagy.server.services.relation_calc.MepSystemCalcService
 import com.persagy.service.SPageContext
 import com.persagy.service.models.requests.SCountRequest
 import com.persagy.service.models.requests.SCreateRequest
-import com.persagy.service.models.requests.SQueryRequest
 import com.persagy.service.models.requests.SUpdateRequest
 import com.persagy.service.models.responses.SBaseResponse
 import com.persagy.service.models.responses.SCountResponse
@@ -184,29 +183,72 @@ open class ZoneSpaceController {
         return ZoneSpaceBaseService.updateList(request)
     } // Function update()
 
+//    /**
+//     * 更新分区信息 Outline
+//     *
+//     * @param request     更新的内容对象
+//     * @return 更新的结果
+//     */
+//    @Operation(summary = "更新分区对象信息 Outline", description = "")
+//    @PostMapping(value = ["/outline/update"])
+//    fun updateOutline(@RequestBody request: SUpdateRequest<SpaceOutline>): SBaseResponse {
+//        return ZoneSpaceBaseService.upDateOutline(request)
+//    } // Function update()
+
+
     /**
      * 更新分区信息 Outline
      *
-     * @param request     更新的内容对象
-     * @return 更新的结果
+     * @param   request     更新的内容对象
+     * @return              更新的结果
      */
-    @Operation(summary = "更新分区对象信息 Outline", description = "")
-    @PostMapping(value = ["/outline/update"])
-    fun updateOutline(@RequestBody request: SUpdateRequest<SpaceOutline>): SBaseResponse {
+    @Operation(summary = "更新分区对象信息-Outline", description = "")
+    @PostMapping(value = ["/update-outline"])
+    fun updateOutline(@RequestBody request: SUpdateRequest<ZoneSpace>): SBaseResponse {
         return ZoneSpaceBaseService.upDateOutline(request)
     } // Function update()
 
+
     /**
      * 查询空间信息
      *
-     * @param request     查询信息条件
-     * @return 查询结果
+     * @param   request     查询信息条件
+     * @return              查询结果
      */
-    @Operation(summary = "查询空间信息 outline", description = "")
-    @PostMapping(value = ["/outline/query"])
-    fun queryOutline(@RequestBody request: SQueryRequest): SQueryResponse<SpaceOutline> {
-        return ZoneSpaceBaseService.spaceOutlineService.pageQuery(request)
-    }
+    @Operation(summary = "查询空间信息-outline", description = "级联查询:建筑(building),楼层(floor),空间类型(objectType)")
+    @PostMapping(value = ["/query-outline"])
+    fun queryOutline(@RequestBody request: DCSQueryRequest): SpaceSQueryResponse {
+        val projectId = SPageContext.getHeader("projectId")
+        if (!request.projection.isNullOrEmpty()){
+            request.projection!!.clear()
+        }
+        val list = ArrayList<String>()
+        list.add("outline")
+        list.add("id")
+        list.add("name")
+        list.add("localId")
+        list.add("localName")
+        list.add("classCode")
+        list.add("buildingId")
+        list.add("floorId")
+        list.add("state")
+        request.projection = list
+        return ZoneSpaceBaseService.querySpaces(request)
+
+    } // Function query()
+
+
+//    /**
+//     * 查询空间信息
+//     *
+//     * @param request     查询信息条件
+//     * @return 查询结果
+//     */
+//    @Operation(summary = "查询空间信息 outline", description = "")
+//    @PostMapping(value = ["/outline/query"])
+//    fun queryOutline(@RequestBody request: SQueryRequest): SQueryResponse<SpaceOutline> {
+//        return ZoneSpaceBaseService.spaceOutlineService.pageQuery(request)
+//    }
 
     /**
      * 修改空间和楼层建筑的关系

+ 0 - 2
datacenter/src/main/kotlin/com/persagy/server/controllers/rel/RShContainSpBaseController.kt

@@ -152,8 +152,6 @@ class RShContainSpBaseController {
         return RShContainSpBaseService.createShSpsReplace(Type,BuildingId,FloorId,rShContainSpBase)
     } // Function createSp()
 
-
-
     /**
      * 查询空间类型和名称
      * @param shaftId 竖井id

+ 2 - 1
datacenter/src/main/kotlin/com/persagy/server/controllers/relation_calc/CalcSpecialController.kt

@@ -34,6 +34,7 @@ import org.slf4j.LoggerFactory
 import org.springframework.beans.factory.annotation.Autowired
 import org.springframework.web.bind.annotation.PostMapping
 import org.springframework.web.bind.annotation.RequestMapping
+import org.springframework.web.bind.annotation.RequestParam
 import org.springframework.web.bind.annotation.RestController
 
 /**
@@ -61,7 +62,7 @@ open class CalcSpecialController {
      */
     @Operation(summary = "管网系统设备分块", description = "Domain 需要计算的管道系统类型,枚举(水管或风管):DomainPiping,DomainHvac;需要计算的building_id,如果没有提供时直接为空")
     @PostMapping(value = ["/sys-block"])
-    fun sysBolck(relationType: String): SBaseResponse{
+    fun sysBolck(@RequestParam relationType: String): SBaseResponse{
         return service.sysBolck(relationType)
     } // Function sysBolck()
 

+ 5 - 4
datacenter/src/main/kotlin/com/persagy/server/controllers/relation_calc/RelationCalcController.kt

@@ -35,6 +35,7 @@ import org.slf4j.LoggerFactory
 import org.springframework.beans.factory.annotation.Autowired
 import org.springframework.web.bind.annotation.PostMapping
 import org.springframework.web.bind.annotation.RequestMapping
+import org.springframework.web.bind.annotation.RequestParam
 import org.springframework.web.bind.annotation.RestController
 
 /**
@@ -60,7 +61,7 @@ class RelationCalcController {
      */
     @Operation(summary = "建筑下的业务空间", description = "objectTypes 参与计算的业务空间(为空表示所有业务空间类型),以英文逗号隔开 HeatingZone,CleanZone,DomesticWaterSupplyZone,NetworkZone,TenantZone,AirConditioningZone,FunctionZone,FireZone,SecurityZone,GeneralZone,PowerSupplyZone,LightingZone")
     @PostMapping(value = ["/bd2sp"])
-    fun calcBd2Sp(objectTypes: String?): SBaseResponse {
+    fun calcBd2Sp(@RequestParam objectTypes: String?): SBaseResponse {
         logger.debug("calcBd2Sp --------------")
         val projectId = SPageContext.getHeader("projectId").toString()
         return service.calcBd2Sp(objectTypes,projectId)
@@ -71,7 +72,7 @@ class RelationCalcController {
      */
     @Operation(summary = "设备所在建筑", description = "")
     @PostMapping(value = ["/eq2bd"])
-    fun calcEq2Bd(relationType: String?): SBaseResponse {
+    fun calcEq2Bd(@RequestParam relationType: String?): SBaseResponse {
         logger.debug("calcEq2Bd --------------")
         val projectId = SPageContext.getHeader("projectId").toString()
         return service.calcEq2Bd(projectId)
@@ -109,7 +110,7 @@ class RelationCalcController {
             "FunctionZone,FireZone,SecurityZone,GeneralZone,PowerSupplyZone,LightingZone\n " +
             "sign 是否要删除手动维护的关系(不填默认为false), boolean型, 值为true或false (true表示删除自动和手动维护的关系, false表示只删除自动计算的的关系)")
     @PostMapping(value = ["/eq2sp_in"])
-    fun calcEq2Sp(objectTypes: String?): SBaseResponse {
+    fun calcEq2Sp(@RequestParam objectTypes: String?): SBaseResponse {
         val projectId = SPageContext.getHeader("projectId").toString()
         logger.debug("calcEq2Sp --------------  $projectId")
         return service.calcEq2Sp(objectTypes,projectId, false)
@@ -136,7 +137,7 @@ class RelationCalcController {
      */
     @Operation(summary = "楼层下的业务空间", description = "objectTypes 参与计算的业务空间(为空表示所有业务空间类型),以英文逗号隔开 HeatingZone,CleanZone,DomesticWaterSupplyZone,NetworkZone,TenantZone,AirConditioningZone,FunctionZone,FireZone,SecurityZone,GeneralZone,PowerSupplyZone,LightingZone")
     @PostMapping(value = ["/fl2sp"])
-    fun calcFl2Sp(objectTypes: String?): SBaseResponse {
+    fun calcFl2Sp(@RequestParam objectTypes: String?): SBaseResponse {
         logger.debug("calcFl2Sp --------------")
         val projectId = SPageContext.getHeader("projectId").toString()
         return service.calcFl2Sp(objectTypes,projectId)

+ 2 - 2
datacenter/src/main/kotlin/com/persagy/server/services/graphtype/GraphicTypeService.kt

@@ -124,8 +124,8 @@ object GraphicTypeService : RService<GraphicType>(SMybatisDao(GraphicType::class
                     relationTypeProject.graphicId = relationType.graphicId
                     relationTypeProject.note = relationType.note
                     relationTypeProject.conneObject = relationType.conneObject
-                    relationTypeProject.isSource = relationType.isSource
-                    relationTypeProject.isAutomatic = relationType.isAutomatic
+                    relationTypeProject.source = relationType.source
+                    relationTypeProject.automatic = relationType.automatic
                     relationTypeProject.manual = relationType.manual
                     relationTypeProject.prompting = relationType.prompting
                     relationTypeProject.tableName = relationType.tableName

+ 17 - 14
datacenter/src/main/kotlin/com/persagy/server/services/objects/FloorService.kt

@@ -134,16 +134,16 @@ object FloorService : Service<Floor>(SMybatisDao(Floor::class.java)) {
                         }
                         val insert = insert(floor)
                         if (insert){
-                            try {
-                                if (!floor.outline.isNullOrEmpty()) {
-                                    val floorOutline = FloorOutline()
-                                    floorOutline.id = floor.id
-                                    floorOutline.outline = floor.outline
-                                    floorOutlineService.replace(floorOutline)
-                                }
-                            } catch (e: Exception) {
-                                e.printStackTrace()
-                            }
+//                            try {
+//                                if (!floor.outline.isNullOrEmpty()) {
+//                                    val floorOutline = FloorOutline()
+//                                    floorOutline.id = floor.id
+//                                    floorOutline.outline = floor.outline
+//                                    floorOutlineService.replace(floorOutline)
+//                                }
+//                            } catch (e: Exception) {
+//                                e.printStackTrace()
+//                            }
 
                             try {
                                 rabbitMqService.sendObjects(Opt.projectId!!, Opt.CREATE,floor.id!!)
@@ -326,15 +326,18 @@ object FloorService : Service<Floor>(SMybatisDao(Floor::class.java)) {
     /**
      * 更新楼层 Outline
      */
-    fun updateOutline(request: SUpdateRequest<FloorOutline>): SBaseResponse{
+    fun updateOutline(request: SUpdateRequest<Floor>): SBaseResponse{
         return try {
             val sBaseResponse = SBaseResponse(SResponseType.success)
             if (!request.content.isNullOrEmpty()){
-                floorOutlineService.updateList(request)
-
+                val listOutline = ArrayList<String>()
+                listOutline.add("outline")
                 if (!request.content.isNullOrEmpty()){
                     for (floorOutline in request.content!!){
-                        rabbitMqService.sendObjects(Opt.projectId!!, Opt.UPDATE,floorOutline.id!!)
+                        val update = update(floorOutline, listOutline)
+                        if (update) {
+                            rabbitMqService.sendObjects(Opt.projectId!!, Opt.UPDATE,floorOutline.id!!)
+                        }
                     }
                     try {
                         /** 处理关系标记 */

+ 14 - 10
datacenter/src/main/kotlin/com/persagy/server/services/objects/ZoneSpaceBaseService.kt

@@ -825,13 +825,17 @@ object ZoneSpaceBaseService : ServiceSpace<ZoneSpace>(SMybatisDao(ZoneSpace::cla
      * @param request   空间对象列表
      * @return 返回状态
      */
-    fun upDateOutline(request: SUpdateRequest<SpaceOutline>): SBaseResponse{
-        /** 不可以为空 */
-        if (request.content.isNullOrEmpty()){
-            return SBaseResponse(SResponseType.failure)
+    fun upDateOutline(request: SUpdateRequest<ZoneSpace>): SBaseResponse{
+        val projectId = SPageContext.getHeader("ProjectId")
+        if (!request.projection.isNullOrEmpty()){
+            request.projection!!.clear()
         }
+        val list = ArrayList<String>()
+        list.add("Outline")
+        request.projection = list
+        val zoneSpace = request.content!![0]
+        val updateList = ZoneSpaceBaseService.updateList(request)
 
-        spaceOutlineService.updateList(request)
         try {
             /** 处理关系标记 */
             val listtype = ArrayList<String>()
@@ -843,21 +847,21 @@ object ZoneSpaceBaseService : ServiceSpace<ZoneSpace>(SMybatisDao(ZoneSpace::cla
             listtype.add("sp2sp_RadiationNetwork_1")
             listtype.add("sp2sp_RadiationNetwork_2")
             for (type in listtype){
-                val entity = relationTypeProjectservice.select(SFilter.eq("projectId", Opt.projectId!!), SFilter.eq("relationType", type)).entity()
+                val entity = relationTypeProjectservice.select(SFilter.eq("projectId", projectId!!), SFilter.eq("relationType", type)).entity()
                 if (entity!=null){
                     entity.computationalState = 2
                     relationTypeProjectservice.update(entity)
                 }
             }
-            val relationType = relationTypeProjectservice.select(SFilter.eq("projectId", Opt.projectId!!), SFilter.eq("relationType", "eq2sp_in"),SFilter.eq("zoneType", "space")).entity()
+            val relationType = relationTypeProjectservice.select(SFilter.eq("projectId", projectId!!), SFilter.eq("relationType", "eq2sp_in"),SFilter.eq("zoneType", zoneSpace.classCode!!)).entity()
             if (relationType!=null){
-                    relationType.computationalState = 2
-                    relationTypeProjectservice.update(relationType)
+                relationType.computationalState = 2
+                relationTypeProjectservice.update(relationType)
             }
         } catch (e: Exception) {
             e.printStackTrace()
         }
-        return SBaseResponse(SResponseType.success)
+        return updateList
     }
 
     /**

+ 7 - 3
datasyn/src/main/kotlin/com/persagy/server/syn/controllers/obj/ObjectFromToControllers.kt

@@ -234,8 +234,10 @@ class ObjectFromToControllers {
                             val type = object : TypeToken<ArrayList<PointPosition>>() {
                             }.type
                             var outline=  Gson().fromJson<ArrayList<PointPosition>>(floorSyn["outline"].toString(),type)
-                            floorOutlineService.replace(FloorOutline(id,outline))
+//                            floorOutlineService.replace(FloorOutline(id,outline))
+                            floor.outline = outline
                         }
+                        floorService.replace(floor)
                     }
                 }
             } else {
@@ -425,7 +427,7 @@ class ObjectFromToControllers {
                                     rSpinFlService.replace(rSpinFl)
                                 }
                             }
-                            zoneSpaceService.update(spaceDataConversion)
+
 
                             val containsKey = spaceSyn.containsKey("outline")
                             if (containsKey){
@@ -436,8 +438,10 @@ class ObjectFromToControllers {
                                 val type = object : TypeToken<ArrayList<ArrayList<ArrayList<PointPosition>>>>() {
                                 }.type
                                 var outline=  Gson().fromJson<ArrayList<ArrayList<ArrayList<PointPosition>>>>(spaceSyn["outline"].toString(),type)
-                                spaceOutlineService.replace(SpaceOutline(id,outline))
+//                                spaceOutlineService.replace(SpaceOutline(id,outline))
+                                spaceDataConversion.outline = outline
                             }
+                            zoneSpaceService.update(spaceDataConversion)
                         }
 
                     }

+ 3 - 3
datasyn/src/main/kotlin/com/persagy/server/syn/task/SchedulerTask.kt

@@ -51,10 +51,10 @@ class SchedulerTask {
     lateinit var messageProcessing: MessageProcessing
 
     //cron表达式:每隔5秒执行一次
-//    @Scheduled(cron = "0 */3 * * * ?")
-    @Scheduled(cron="0/5 * *  * * ? ")   //每5秒执行一次
+    @Scheduled(cron = "0 */3 * * * ?")
+//    @Scheduled(cron="0/5 * *  * * ? ")   //每5秒执行一次
     fun scheduled() {
         logger.info("同步数据中心任务开始至数据中台")
-        messageProcessing.syncDataCenter()
+//        messageProcessing.syncDataCenter()
     }
 }

+ 2 - 2
equip-component/src/main/kotlin/com/persagy/server/controllers/EquipController.kt

@@ -122,7 +122,7 @@ class EquipController {
      */
     @Operation(summary = "查询当前设备类型下允许的所有部件类型,设备下的部件对应类型的数量", description = "")
     @GetMapping(value = ["/equip-compon"])
-    fun getEquipCompon(id:String,category: String): RSQueryResponse<EquipCompon> {
+    fun getEquipCompon(@RequestParam id:String,@RequestParam category: String): RSQueryResponse<EquipCompon> {
         return  rEquipComponService.getEquipCompon(id,category)
     }
 
@@ -243,7 +243,7 @@ class EquipController {
      */
     @Operation(summary = "查询不在当前系统下的设备", description = "")
     @PostMapping(value = ["/equip-sys"])
-    fun pageQueryEquipSys(sysId: String, @RequestBody request: SQueryRequest): SQueryResponse<Equipment>{
+    fun pageQueryEquipSys(@RequestParam sysId: String, @RequestBody request: SQueryRequest): SQueryResponse<Equipment>{
         return EquipmentService.queryBeforeEquipSy(sysId,request)
     } // Function pageQuery()
 

+ 2 - 1
equip-component/src/main/kotlin/com/persagy/server/controllers/PointController.kt

@@ -33,6 +33,7 @@ import io.swagger.v3.oas.annotations.Operation
 import io.swagger.v3.oas.annotations.tags.Tag
 import org.springframework.web.bind.annotation.GetMapping
 import org.springframework.web.bind.annotation.RequestMapping
+import org.springframework.web.bind.annotation.RequestParam
 import org.springframework.web.bind.annotation.RestController
 
 /**
@@ -50,7 +51,7 @@ class PointController {
      */
    @Operation(summary = "查询点位标信息状态,未关联点位标签资产的数量,已经关联的数量", description = " ")
     @GetMapping(value = ["/point-property"])
-    fun pageQueryProperty(buildingId: String?, floorId: String?,startTime: String?, endingTime: String?): SQueryResponse<PointPorperty> {
+    fun pageQueryProperty(@RequestParam buildingId: String?,@RequestParam floorId: String?,@RequestParam startTime: String?,@RequestParam endingTime: String?): SQueryResponse<PointPorperty> {
         return PropertyFamilyService.queryPointPorperty(buildingId,floorId,startTime,endingTime)
     } // Function pageQueryProperty()
 } // Class PointController

+ 1 - 1
equip-component/src/main/kotlin/com/persagy/server/controllers/PropertyController.kt

@@ -67,7 +67,7 @@ class PropertyController {
      */
    @Operation(summary = "查询项目下的设备族分类 以及相同设备族资产的数量数量", description = " ")
     @GetMapping(value = ["/property-family"])
-    fun pageQueryPropertyFamily(buildingId: String?, floorId: String?,startTime: String?, endingTime: String?,pointId: String?, checked: String?): SQueryResponse<PropertyFamily> {
+    fun pageQueryPropertyFamily(@RequestParam buildingId: String?, @RequestParam floorId: String?,@RequestParam startTime: String?,@RequestParam endingTime: String?,@RequestParam pointId: String?,@RequestParam checked: String?): SQueryResponse<PropertyFamily> {
         return PropertyFamilyService.queryFamily(buildingId,floorId,startTime,endingTime,pointId,checked)
     } // Function pageQueryProperty()
 

+ 8 - 11
equip-component/src/main/kotlin/com/persagy/server/controllers/SpaceController.kt

@@ -41,10 +41,7 @@ import com.persagy.service.models.responses.SQueryResponse
 import io.swagger.v3.oas.annotations.Operation
 import io.swagger.v3.oas.annotations.tags.Tag
 import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.web.bind.annotation.PostMapping
-import org.springframework.web.bind.annotation.RequestBody
-import org.springframework.web.bind.annotation.RequestMapping
-import org.springframework.web.bind.annotation.RestController
+import org.springframework.web.bind.annotation.*
 
 /**
  * 空间接口
@@ -68,21 +65,21 @@ class SpaceController {
    @Operation(summary="查询没有和当前空间绑定的系统", description= "例如:prijectId=Pj4201050001,type=AirConditioningZone spaceId=Sp4201050001df2091cdf719443b80bb737aeabf0525 " +
             "spaceId 为当前空间id type为当前空间类型 ")
     @PostMapping(value = ["/unspace-in-sys"])
-    fun unSpaceSys( type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem> {
+    fun unSpaceSys(@RequestParam  type: String, @RequestParam spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<GeneralSystem> {
         return GeneralSystemService.unSpaceSys(type,spaceId, request)
     } // Function unSpaceSys()
 
    @Operation(summary="查询没有和当前空间绑定的设备", description ="例如:prijectId=Pj4201050001,type=AirConditioningZone spaceId=Sp4201050001df2091cdf719443b80bb737aeabf0525 " +
             "spaceId 为当前空间id type为当前空间类型 ")
     @PostMapping(value = ["/unspace-in-eq"])
-    fun  unSpaceEq(type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
+    fun  unSpaceEq(@RequestParam type: String, @RequestParam spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
         return EquipmentService.pageQueryEquip(type,spaceId,request)
     } // Function unSpaceEq()
 
    @Operation(summary="查询没有服务于当前空间的设备", description ="例如:prijectId=Pj4201050001,type=AirConditioningZone spaceId=Sp4201050001df2091cdf719443b80bb737aeabf0525 " +
             "spaceId 为当前空间id type为当前空间类型 ")
     @PostMapping(value = ["/unspace-for-eq"])
-    fun  unSpaceForEq(type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
+    fun  unSpaceForEq(@RequestParam type: String, @RequestParam spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
         return EquipmentService.pageQueryForEquip(type,spaceId,request)
     } // Function unSpaceEq()
 
@@ -91,7 +88,7 @@ class SpaceController {
      */
    @Operation(summary=" 空间内没有服务于当前空间的设备 根据坐标计算", description ="")
     @PostMapping(value = ["/unspace-for-eq-point"])
-    fun unSpaceForEqPoint(type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
+    fun unSpaceForEqPoint(@RequestParam type: String,@RequestParam spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
         return  EquipmentService.unSpaceForEqPoint(type,spaceId,request)
     } // Function unSpaceForEqPoint()
 
@@ -100,7 +97,7 @@ class SpaceController {
      */
    @Operation(summary=" 空间内没有和空间关联的设备 根据坐标计算", description ="")
     @PostMapping(value = ["/unspace-fIn-eq-point"])
-    fun unSpaceInEqPoint(type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
+    fun unSpaceInEqPoint(@RequestParam type: String, spaceId: String,@RequestBody request: SQueryRequest): SQueryResponse<Equipment> {
         return  EquipmentService.unSpaceInEqPoint(type,spaceId,request)
     } // Function unSpaceForEqPoint()
 
@@ -109,7 +106,7 @@ class SpaceController {
      */
    @Operation(summary=" 未关联业务空间的元空间", description ="")
     @PostMapping(value = ["/unspace-ispace"])
-    fun unSpaceIspace(objectType: String, @RequestBody request: ZoneISpaceQueryRequest): SQueryResponse<ZoneIspace> {
+    fun unSpaceIspace(@RequestParam objectType: String, @RequestBody request: ZoneISpaceQueryRequest): SQueryResponse<ZoneIspace> {
         return ISpaceService.unSpaceIspace(objectType,request)
     } // Function unSpaceIspace()
 
@@ -132,7 +129,7 @@ class SpaceController {
             "        \"PageSize\": 50\n" +
             "       }")
     @PostMapping(value = ["/in-bdfl-zonespacebase"])
-    fun inBdflZoneSpace(X: String, Y: String, @RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace> {
+    fun inBdflZoneSpace(@RequestParam X: String,@RequestParam  Y: String, @RequestBody request: SQueryRequest): SQueryResponse<ZoneSpace> {
         return service.inBdflZoneSpace(X,Y,request)
     } // Function unSpaceIspace()
 

+ 2 - 5
equip-component/src/main/kotlin/com/persagy/server/controllers/TenantController.kt

@@ -38,10 +38,7 @@ import com.persagy.service.models.responses.SQueryResponse
 import io.swagger.v3.oas.annotations.Operation
 import io.swagger.v3.oas.annotations.tags.Tag
 import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.web.bind.annotation.PostMapping
-import org.springframework.web.bind.annotation.RequestBody
-import org.springframework.web.bind.annotation.RequestMapping
-import org.springframework.web.bind.annotation.RestController
+import org.springframework.web.bind.annotation.*
 
 /**
  * 租户相关接口
@@ -58,7 +55,7 @@ class TenantController {
      */
    @Operation(summary=" 查询租户的建筑楼层 ", description= "")
     @PostMapping(value = ["/tenant-building-floor"])
-    fun tenantBuildingFloor(tenantId: String,objectType: String): SQueryResponse<Building> {
+    fun tenantBuildingFloor(@RequestParam tenantId: String,@RequestParam objectType: String): SQueryResponse<Building> {
         return TenantService.tenantBuildingFloors(tenantId,objectType)
     } //
 

+ 4 - 2
equip-component/src/main/kotlin/com/persagy/server/controllers/planar/PlanarController.kt

@@ -27,8 +27,10 @@
 package com.persagy.server.controllers.planar
 
 import com.persagy.server.models.planar.PlanarEquip
+import com.persagy.server.models.planar.PlanarSpace
 import com.persagy.server.models.requests.PlanarEquipRequests
 import com.persagy.server.service.EquipmentComService
+import com.persagy.server.service.objects.ZoneSpaceBaseService
 import com.persagy.service.models.responses.SQueryResponse
 import io.swagger.v3.oas.annotations.Operation
 import io.swagger.v3.oas.annotations.tags.Tag
@@ -67,8 +69,8 @@ class PlanarController {
      */
     @Operation(summary = "查询空间信息", description = "")
     @PostMapping(value = ["/space"])
-    fun spaceQuery(){
-
+    fun spaceQuery(@RequestBody request: PlanarEquipRequests): SQueryResponse<PlanarSpace> {
+       return ZoneSpaceBaseService.spaceQuery(request)
     }
 
 }

+ 6 - 0
equip-component/src/main/kotlin/com/persagy/server/models/planar/PlanarSpace.kt

@@ -26,6 +26,7 @@
 
 package com.persagy.server.models.planar
 
+import com.persagy.server.datacenter.models.entities.assistant.PointPosition
 import io.swagger.v3.oas.annotations.media.Schema
 import java.io.Serializable
 import javax.persistence.Column
@@ -78,4 +79,9 @@ class PlanarSpace: Serializable {
     @Column(name = "func_type")
     var roomFuncType: String? = null
 
+    /** 轮廓线 */
+    @Schema(description = "轮廓线")
+    @Column(name = "outline")
+    var outline: ArrayList<ArrayList<ArrayList<PointPosition>>>? = null
+
 }

+ 6 - 6
equip-component/src/main/kotlin/com/persagy/server/service/objects/EquipmentService.kt

@@ -351,7 +351,7 @@ object EquipmentService : Service<Equipment>(SMybatisDao(Equipment::class.java))
         return try {
             val projectId = SPageContext.getHeader("projectId")
 
-            val rEqForSpBaseList = rEq2SpService.select(SFilter.eq("Id2", spaceId),SFilter.eq("projectId", projectId!!),SFilter.eq("type","eq2sp_for")).exec()
+            val rEqForSpBaseList = rEq2SpService.select(SFilter.eq("id2", spaceId),SFilter.eq("projectId", projectId!!),SFilter.eq("type","eq2sp_for")).exec()
             val list = ArrayList<String>()
             val listf= ArrayList<SFilter>()
             for (rEqForSpBase in rEqForSpBaseList){
@@ -360,7 +360,7 @@ object EquipmentService : Service<Equipment>(SMybatisDao(Equipment::class.java))
 
             if (list.size>0){
                 listf.add(SFilter.eq("projectId",projectId))
-                listf.add(SFilter.not(SFilter.inList("equipId",list)))
+                listf.add(SFilter.not(SFilter.inList("id",list)))
             }else{
                 listf.add(SFilter.eq("projectId",projectId))
             }
@@ -503,6 +503,8 @@ object EquipmentService : Service<Equipment>(SMybatisDao(Equipment::class.java))
     fun unSpaceInEqPoint(type: String, spaceId: String, request: SQueryRequest): SQueryResponse<Equipment>{
 
         return try {
+            val sQueryResponse = SQueryResponse<Equipment>(SResponseType.success)
+            sQueryResponse.content = ArrayList<Equipment>()
             val zoneSpaceBaseTable = SObjectService(SMybatisDao(ZoneSpace::class.java))
             val sQueryRequest = SQueryRequest()
             val projectId = SPageContext.getHeader("projectId")
@@ -546,15 +548,13 @@ object EquipmentService : Service<Equipment>(SMybatisDao(Equipment::class.java))
                         val pageQuery = pageQuery(request, listF)
                         pageQuery
                 }else{
-                        val sQueryResponse = SQueryResponse<Equipment>(SResponseType.success)
-                        sQueryResponse.content = ArrayList<Equipment>()
                         sQueryResponse
                 }
             }else{
-                    SQueryResponse(SResponseType.success)
+                    sQueryResponse
             }
             }else{
-                SQueryResponse(SResponseType.success)
+                sQueryResponse
             }
         } catch (e: Exception) {
             e.printStackTrace()

+ 3 - 3
equip-component/src/main/kotlin/com/persagy/server/service/objects/ShaftService.kt

@@ -26,8 +26,6 @@
 
 package com.persagy.server.service.objects
 
-import com.persagy.server.models.requests.ShaftSpaceVertical
-import com.persagy.server.utils.SpaceRunnables
 import com.google.gson.Gson
 import com.google.gson.reflect.TypeToken
 import com.persagy.database.SFilter
@@ -42,8 +40,10 @@ import com.persagy.server.datacenter.models.entities.rel.RSpinFl
 import com.persagy.server.models.SimilarityDegree
 import com.persagy.server.models.objects.FloorCompon
 import com.persagy.server.models.objects.ZoneSpace
+import com.persagy.server.models.requests.ShaftSpaceVertical
 import com.persagy.server.service.RShaftThroughShaftService
 import com.persagy.server.service.base.Service
+import com.persagy.server.utils.SpaceRunnables
 import com.persagy.service.SObjectService
 import com.persagy.service.SPageContext
 import com.persagy.service.models.enums.SResponseType
@@ -116,7 +116,7 @@ object ShaftService : Service<Shaft>(SMybatisDao(Shaft::class.java)) {
 
             if (list.size>0){
                 listf.add(SFilter.eq("projectId",projectId!!))
-                listf.add(SFilter.not(SFilter.inList("ShaftID",list)))
+                listf.add(SFilter.not(SFilter.inList("id",list)))
             }else{
 
                 listf.add(SFilter.eq("projectId",projectId!!))

+ 53 - 25
equip-component/src/main/kotlin/com/persagy/server/service/objects/ZoneSpaceBaseService.kt

@@ -56,11 +56,13 @@ object ZoneSpaceBaseService : SObjectService<ZoneSpace>(SMybatisDao(ZoneSpace::c
     private val rSpatialConnectionService = SObjectService(SMybatisDao(RSpatialConnection::class.java))
     /** 元空间 */
     private val zoneIspaceService = SObjectService(SMybatisDao(ZoneIspace::class.java))
-    /** 空间服务 */
+    /** 平面图空间服务 */
     private val planarSpaceService = SObjectService(SMybatisDao(PlanarSpace::class.java))
     /** 空间建筑楼层 */
     val spInFlService = SObjectService(SMybatisDao(RSpinFl::class.java))
 
+
+
     override fun onQueryBefore(queryBuilder: SQueryBuilder<ZoneSpace>) {
         val projectId = SPageContext.getHeader("projectId")
 //        val spaceBdFlObjs = ZoneAirConditioningService.spaceBdFlObjs(projectId!!)
@@ -127,38 +129,64 @@ object ZoneSpaceBaseService : SObjectService<ZoneSpace>(SMybatisDao(ZoneSpace::c
     } //
 
     /**
+     * 平面图空间查询
      *
+     * @param request   条件查询
+     * @return 返回结果
      */
-    fun spaceQuery(request: PlanarEquipRequests){
-        if (request.spaceIds.isNullOrEmpty()){
-            request.spaceIds = ArrayList()
-        }
-        if (!request.zoneTypes.isNullOrEmpty()&&!request.funcTypes.isNullOrEmpty()){
-            val spInFlList = spInFlService.select(SFilter.eq("projectId", Opt.projectId!!), SFilter.inList("objectType", request.zoneTypes!!),
-                    SFilter.eq("building", request.buildingId!!), SFilter.eq("floorId", request.floorId!!)).exec()
-            if (!spInFlList.isNullOrEmpty()) {
-                val setIds = HashSet<String>()
-                for (spInFl in spInFlList){
-                    setIds.add(spInFl.spaceId!!)
+    fun spaceQuery(request: PlanarEquipRequests): SQueryResponse<PlanarSpace> {
+        try {
+            val sQueryResponse = SQueryResponse<PlanarSpace>(SResponseType.success)
+            if (request.spaceIds.isNullOrEmpty()){
+                request.spaceIds = ArrayList()
+            }
+            if (!request.zoneTypes.isNullOrEmpty()&&!request.funcTypes.isNullOrEmpty()){
+                val spInFlList = spInFlService.select(SFilter.eq("projectId", Opt.projectId!!), SFilter.inList("objectType", request.zoneTypes!!),
+                        SFilter.eq("building", request.buildingId!!), SFilter.eq("floorId", request.floorId!!)).exec()
+                if (!spInFlList.isNullOrEmpty()) {
+                    val setIds = HashSet<String>()
+                    for (spInFl in spInFlList){
+                        request.spaceIds!!.add(spInFl.spaceId!!)
+                    }
+                }
+                if (!request.spaceIds.isNullOrEmpty()) {
+                    val planarSpaceList = planarSpaceService.select(
+                        SFilter.eq("projectId", Opt.projectId!!), SFilter.inList("id", request.spaceIds!!),
+                        SFilter.inList("roomFuncType", request.funcTypes!!)
+                    ).exec()
+                    sQueryResponse.content = planarSpaceList
+                    sQueryResponse.total = planarSpaceList.size.toLong()
+                }else {
+                    sQueryResponse.content = ArrayList()
                 }
 
-
+            } else if (!request.zoneTypes.isNullOrEmpty()){
+                val spInFlList = spInFlService.select(SFilter.eq("projectId", Opt.projectId!!), SFilter.inList("objectType", request.zoneTypes!!),
+                    SFilter.eq("building", request.buildingId!!), SFilter.eq("floorId", request.floorId!!)).exec()
+                if (!spInFlList.isNullOrEmpty()) {
+                    val setIds = HashSet<String>()
+                    for (spInFl in spInFlList){
+                        request.spaceIds!!.add(spInFl.spaceId!!)
+                    }
+                }
+                if (!request.spaceIds.isNullOrEmpty()) {
+                    val planarSpaceList = planarSpaceService.select(
+                        SFilter.eq("projectId", Opt.projectId!!), SFilter.inList("id", request.spaceIds!!)
+                    ).exec()
+                    sQueryResponse.content = planarSpaceList
+                    sQueryResponse.total = planarSpaceList.size.toLong()
+                }else {
+                    sQueryResponse.content = ArrayList()
+                }
 
             } else {
-
+                sQueryResponse.content = ArrayList()
             }
-
-
-
-
-        } else if (!request.zoneTypes.isNullOrEmpty()){
-
-        } else {
-
+            return sQueryResponse
+        } catch (e: Exception) {
+            e.printStackTrace()
+            return  SQueryResponse(SResponseType.success,e.message!!)
         }
-
-
-
     }
 
 }