|
@@ -39,13 +39,16 @@ import com.persagy.mybatis.SMybatisDao
|
|
|
import com.persagy.server.Opts
|
|
|
import com.persagy.server.datacenter.models.entities.assistant.TaskPic
|
|
|
import com.persagy.server.datacenter.models.entities.dict.EquipCategory
|
|
|
+import com.persagy.server.datacenter.models.entities.dictnew.DefClass
|
|
|
import com.persagy.server.datacenter.models.entities.objects.Equipment
|
|
|
import com.persagy.server.datacenter.models.entities.task.*
|
|
|
import com.persagy.server.datacenter.models.requests.ModelScanSQueryRequest
|
|
|
import com.persagy.server.mappers.StatisticsCountMapper
|
|
|
import com.persagy.server.scanbuilding.UserLog
|
|
|
-import com.persagy.server.services.EquipmentService
|
|
|
+import com.persagy.server.services.AdmBaseService
|
|
|
+import com.persagy.server.services.DmpBaseService
|
|
|
import com.persagy.server.services.base.RService
|
|
|
+import com.persagy.server.util.AdmEntityTransferUtil
|
|
|
import com.persagy.server.util.IdUtils
|
|
|
import com.persagy.service.SBaseService
|
|
|
import com.persagy.service.SObjectService
|
|
@@ -56,6 +59,7 @@ import com.persagy.service.models.requests.SQueryRequest
|
|
|
import com.persagy.service.models.responses.SQueryResponse
|
|
|
import com.persagy.service.utils.SSpringContextUtil
|
|
|
import org.slf4j.LoggerFactory
|
|
|
+import org.springframework.beans.factory.annotation.Autowired
|
|
|
import org.springframework.web.bind.annotation.RequestBody
|
|
|
import java.util.*
|
|
|
import java.util.stream.Collectors
|
|
@@ -74,12 +78,18 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
|
|
|
val modelScanTaskService = SBaseService(SMybatisDao(ModelScanTask::class.java))
|
|
|
/** 设备类型 */
|
|
|
- val equipCategoryService = SObjectService(SMybatisDao(EquipCategory::class.java))
|
|
|
+ // val equipCategoryService = SObjectService(SMybatisDao(EquipCategory::class.java))
|
|
|
/** 扫楼日志 */
|
|
|
var userLogService = SObjectService(SMybatisDao(UserLog::class.java))
|
|
|
/** 用户 */
|
|
|
var userService = SObjectService(SMybatisDao(User::class.java))
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private val admBaseService: AdmBaseService? = AdmBaseService()
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private val dmpBaseService: DmpBaseService? = DmpBaseService()
|
|
|
+
|
|
|
|
|
|
/** 实例化 mapper 对象 */
|
|
|
val mapper by lazy {
|
|
@@ -94,7 +104,8 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
val modelList = request.content;
|
|
|
var newList = arrayListOf<ModelScanTask>()
|
|
|
for(model in modelList){
|
|
|
- val modelTask = ModelScanTaskService.select("equipId" to model.equipId!!,"taskState" to 1).entity()
|
|
|
+ // val modelTask = ModelScanTaskService.select("equipId" to model.equipId!!,"taskState" to 1).entity()
|
|
|
+ val modelTask = ModelScanTaskService.select(SFilter.eq("equipId", model.equipId!!),SFilter.eq("taskState", 1)).entity()
|
|
|
if(modelTask==null){//表示当前设备不存在未验证的任务
|
|
|
newList.add(model)
|
|
|
}
|
|
@@ -128,9 +139,20 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
modelScanTask.taskType = "1"
|
|
|
|
|
|
if (!modelScanTask.equipId.isNullOrEmpty()) {//当设备id不为空时,去设备表查询对应的详细信息
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
- val equipment = equipmentService.select("id" to modelScanTask.equipId!!).entity()
|
|
|
-
|
|
|
+ //val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ //val equipment = equipmentService.select("id" to modelScanTask.equipId!!).entity()
|
|
|
+ // val equipment = equipmentService.select(SFilter.eq("id", modelScanTask.equipId!!)).entity()
|
|
|
+
|
|
|
+ //2021.10.26调整为从中间件查询设备信息
|
|
|
+ var equipRequest = SQueryRequest()
|
|
|
+ equipRequest.filters = "id = '"+modelScanTask.equipId+"'"
|
|
|
+ val equipmentList = admBaseService?.queryEquip(equipRequest)
|
|
|
+
|
|
|
+ if(CollUtil.isEmpty(equipmentList)){
|
|
|
+ return false
|
|
|
+ logger.info("设备不存在 id "+modelScanTask.equipId)
|
|
|
+ }
|
|
|
+ val equipment = equipmentList?.get(0)
|
|
|
if (modelScanTask.schemeId.isNullOrEmpty()){
|
|
|
modelScanTask.schemeId = SchemeUtils.setScheme(equipment!!.classCode!!)
|
|
|
}
|
|
@@ -244,37 +266,39 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
val projectId = SPageContext.getHeader("projectId")
|
|
|
|
|
|
for(task in modelScanTaskList){
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
- val componentList = equipmentService.select("parentId" to task.equipId!!).exec()
|
|
|
-
|
|
|
- for(equipment in componentList){
|
|
|
- val modelScanTask = ModelScanTask()
|
|
|
- modelScanTask.id = IdUtils.uuidCreate()
|
|
|
- if(!task.projectId.isNullOrEmpty()){
|
|
|
- modelScanTask.projectId = task.projectId
|
|
|
- }else{
|
|
|
- modelScanTask.projectId = projectId
|
|
|
- }
|
|
|
- modelScanTask.taskSource = 4//数据源为模型任务
|
|
|
- modelScanTask.taskState = 1//任务状态为待验证
|
|
|
- modelScanTask.parentId = task.equipId
|
|
|
- modelScanTask.equipId = equipment!!.id
|
|
|
- modelScanTask.equipName = equipment!!.name
|
|
|
- modelScanTask.localId = equipment!!.localId
|
|
|
- modelScanTask.localName = equipment!!.localName
|
|
|
- modelScanTask.bimId = equipment!!.bimId
|
|
|
- modelScanTask.classCode = equipment!!.classCode
|
|
|
- modelScanTask.buildingId = equipment!!.buildingId
|
|
|
- modelScanTask.floorId = equipment!!.floorId
|
|
|
- modelScanTask.cadId = equipment!!.cadId
|
|
|
- modelScanTask.bimLocation = equipment.bimLocation
|
|
|
- modelScanTask.taskParentId = task.id
|
|
|
- if (equipment.codeType!=null){
|
|
|
- modelScanTask.taskType = equipment.codeType.toString()
|
|
|
- }else{
|
|
|
- modelScanTask.taskType = "1"
|
|
|
+ //val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ // val componentList = equipmentService.select(SFilter.eq("parentId", task.equipId!!)).exec()
|
|
|
+ val componentList = task.equipId?.let { EquipScanTaskService.queryComponyByEquipId(it) }
|
|
|
+ if (componentList != null) {
|
|
|
+ for(equipment in componentList){
|
|
|
+ val modelScanTask = ModelScanTask()
|
|
|
+ modelScanTask.id = IdUtils.uuidCreate()
|
|
|
+ if(!task.projectId.isNullOrEmpty()){
|
|
|
+ modelScanTask.projectId = task.projectId
|
|
|
+ }else{
|
|
|
+ modelScanTask.projectId = projectId
|
|
|
+ }
|
|
|
+ modelScanTask.taskSource = 4//数据源为模型任务
|
|
|
+ modelScanTask.taskState = 1//任务状态为待验证
|
|
|
+ modelScanTask.parentId = task.equipId
|
|
|
+ modelScanTask.equipId = equipment!!.id
|
|
|
+ modelScanTask.equipName = equipment!!.name
|
|
|
+ modelScanTask.localId = equipment!!.localId
|
|
|
+ modelScanTask.localName = equipment!!.localName
|
|
|
+ modelScanTask.bimId = equipment!!.bimId
|
|
|
+ modelScanTask.classCode = equipment!!.classCode
|
|
|
+ modelScanTask.buildingId = equipment!!.buildingId
|
|
|
+ modelScanTask.floorId = equipment!!.floorId
|
|
|
+ modelScanTask.cadId = equipment!!.cadId
|
|
|
+ modelScanTask.bimLocation = equipment.bimLocation
|
|
|
+ modelScanTask.taskParentId = task.id
|
|
|
+ if (equipment.codeType!=null){
|
|
|
+ modelScanTask.taskType = equipment.codeType.toString()
|
|
|
+ }else{
|
|
|
+ modelScanTask.taskType = "1"
|
|
|
+ }
|
|
|
+ ModelScanTaskService.insert(modelScanTask)
|
|
|
}
|
|
|
- ModelScanTaskService.insert(modelScanTask)
|
|
|
}
|
|
|
resetObjStatus(task)
|
|
|
}
|
|
@@ -290,9 +314,10 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
val projectId = SPageContext.getHeader("projectId")
|
|
|
|
|
|
for (task in list) {
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ // val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
if(task.equipId == null ){
|
|
|
- val modelScanTaskScanTask = ModelScanTaskService.select("id" to task.id!!).entity()
|
|
|
+
|
|
|
+ val modelScanTaskScanTask = ModelScanTaskService.select(SFilter.eq("id", task.id!!)).entity()
|
|
|
task.equipId = modelScanTaskScanTask!!.equipId
|
|
|
}
|
|
|
|
|
@@ -310,12 +335,17 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
updateComponetTaskStatus(task)
|
|
|
}
|
|
|
//更改设备对象的状态
|
|
|
- val equipmentOld = equipmentService.select("id" to task.equipId!!).entity()
|
|
|
+ val equipmentOld = admBaseService?.queryEquipById(task.equipId!!)?.get(0)
|
|
|
if(equipmentOld!!.taskState != -1){//未找到
|
|
|
val equip = Equipment()
|
|
|
equip.id = task.equipId!!
|
|
|
- equip.taskState = task.taskState
|
|
|
- equipmentService.update(equip)
|
|
|
+ /* equip.taskState = task.taskState
|
|
|
+ equipmentService.update(equip)*/
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",task.taskState!!)
|
|
|
+ equip.infos = infos
|
|
|
+
|
|
|
+ admBaseService?.updateEquip(arrayListOf(equip))
|
|
|
}
|
|
|
try {
|
|
|
if (!Opts.coming.isNullOrEmpty()&&Opts.coming == "app"){
|
|
@@ -343,19 +373,34 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
* 更新设备对象状态时,对应更改部件对象状态,当为未找到状态时,特殊处理
|
|
|
*/
|
|
|
fun updateComponetObjStatus(task: ModelScanTask){
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
- val componentList = equipmentService.select("parentId" to task!!.equipId!!).exec()
|
|
|
-
|
|
|
+ // val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ // val componentList = equipmentService.select(SFilter.eq("parentId", task.equipId!!)).exec()
|
|
|
+ val componentList = task.equipId?.let { EquipScanTaskService.queryComponyByEquipId(it) }
|
|
|
if(task.taskState == 1 || task.taskState == -1){ // 待验证和未找到
|
|
|
- for(component in componentList){
|
|
|
- component.taskState = task.taskState
|
|
|
- equipmentService.update(component)
|
|
|
+ if (componentList != null) {
|
|
|
+ for(component in componentList){
|
|
|
+ component.taskState = task.taskState
|
|
|
+ // equipmentService.update(component)
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",task.taskState!!)
|
|
|
+ component.infos = infos
|
|
|
+
|
|
|
+ admBaseService?.updateComponent(arrayListOf(component))
|
|
|
+ }
|
|
|
}
|
|
|
}else if(task.taskState == 0){ // 已完成
|
|
|
- for(component in componentList){
|
|
|
- if(component.taskState != -1){//如果部件状态为未找到,则不改变状态
|
|
|
- component.taskState = task.taskState
|
|
|
- equipmentService.update(component)
|
|
|
+ if (componentList != null) {
|
|
|
+ for(component in componentList){
|
|
|
+ if(component.taskState != -1){//如果部件状态为未找到,则不改变状态
|
|
|
+ component.taskState = task.taskState
|
|
|
+ //equipmentService.update(component)
|
|
|
+
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",task.taskState!!)
|
|
|
+ component.infos = infos
|
|
|
+
|
|
|
+ admBaseService?.updateComponent(arrayListOf(component))
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -368,7 +413,7 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
val modelScanTaskService = SBaseService(SMybatisDao(ModelScanTask::class.java))
|
|
|
|
|
|
- val componentTaskList = modelScanTaskService.select("parentId" to task!!.equipId!!).exec()
|
|
|
+ val componentTaskList = modelScanTaskService.select(SFilter.eq("parentId", task.equipId!!)).exec()
|
|
|
|
|
|
for(childTask in componentTaskList){
|
|
|
childTask.taskState = task.taskState
|
|
@@ -380,11 +425,19 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
* 更新设备对象状态时,对应更改部件对象状态
|
|
|
*/
|
|
|
fun resetComponetObjStatus(task: ModelScanTask){
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
- val componentList = equipmentService.select("parentId" to task!!.equipId!!).exec()
|
|
|
- for(component in componentList){
|
|
|
- component.taskState = task.taskState
|
|
|
- equipmentService.update(component)
|
|
|
+ // val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ // val componentList = equipmentService.select(SFilter.eq("parentId", task.equipId!!)).exec()
|
|
|
+ val componentList = EquipScanTaskService.queryComponyByEquipId(task!!.equipId!!)
|
|
|
+ if (componentList != null) {
|
|
|
+ for(component in componentList){
|
|
|
+ /*component.taskState = task.taskState
|
|
|
+ equipmentService.update(component)*/
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",task.taskState!!)
|
|
|
+ component.infos = infos
|
|
|
+ //equipmentService.update(component)
|
|
|
+ admBaseService?.updateComponent(arrayListOf(component))
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -392,9 +445,10 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
* 重新生成任务时,将任务状态改为已完成
|
|
|
*/
|
|
|
fun resetTaskStatus(task: ModelScanTask) {
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ //val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
val modelScanTaskService = SBaseService(SMybatisDao(ModelScanTask::class.java))
|
|
|
- val resetTask = modelScanTaskService.select("equipId" to task.equipId!!, "taskState" to -1).entity()
|
|
|
+
|
|
|
+ val resetTask = modelScanTaskService.select(SFilter.eq("equipId", task.equipId!!), SFilter.eq("taskState", -1)).entity()
|
|
|
if (resetTask != null) {
|
|
|
resetTask.taskState = 0
|
|
|
modelScanTaskService.update(resetTask)//更改设备任务状态
|
|
@@ -405,7 +459,7 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
* 重新生成任务时,将设备和部件状态改变为待验证
|
|
|
*/
|
|
|
fun resetObjStatus(task: ModelScanTask){
|
|
|
- val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
+ /*val equipmentService = SBaseService(SMybatisDao(Equipment::class.java))
|
|
|
|
|
|
//更改设备对象状态
|
|
|
val equip = Equipment()
|
|
@@ -413,7 +467,18 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
equip.taskState = task.taskState
|
|
|
equipmentService.update(equip)
|
|
|
//更改部件对象状态
|
|
|
- resetComponetObjStatus(task)
|
|
|
+ resetComponetObjStatus(task)*/
|
|
|
+
|
|
|
+ val equip = Equipment()
|
|
|
+ equip.id = task.equipId!!
|
|
|
+
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",task.taskState!!)
|
|
|
+ equip.infos = infos
|
|
|
+
|
|
|
+ admBaseService?.updateEquip(arrayListOf(equip))
|
|
|
+ //更改部件对象状态
|
|
|
+ resetComponetObjStatus(task)
|
|
|
}
|
|
|
|
|
|
|
|
@@ -537,15 +602,21 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
for (equip in subList){
|
|
|
logger.debug("数据 = ${equip.toJson()}")
|
|
|
try {
|
|
|
- val entity = equipCategoryService.select(SFilter.eq("code", equip.classCode!!)).entity()
|
|
|
+ /*val entity = equipCategoryService.select(SFilter.eq("code", equip.classCode!!)).entity()
|
|
|
if (entity!=null){
|
|
|
equip.equipCategory = entity
|
|
|
+ }*/
|
|
|
+ val equipCategoryList = dmpBaseService?.getEquipCategory(equip.classCode!!)
|
|
|
+ if (equipCategoryList != null) {
|
|
|
+ equip.equipCategory = equipCategoryList.get(0)
|
|
|
}
|
|
|
+
|
|
|
val exec = modelScanTaskService.select(SFilter.eq("parentId", equip.id!!)).exec()
|
|
|
if (exec.size>0){
|
|
|
equip.component = exec
|
|
|
}
|
|
|
- val entity1 = EquipmentService.select(SFilter.eq("id", equip.id!!)).entity()
|
|
|
+ //val entity1 = EquipmentService.select(SFilter.eq("id", equip.id!!)).entity()
|
|
|
+ val entity1 = admBaseService?.queryEquipById(equip.id!!)?.get(0)
|
|
|
equip.bimId = entity1!!.bimId
|
|
|
equip.localId = entity1.localId
|
|
|
equip.localName = entity1.localName
|
|
@@ -608,11 +679,17 @@ object ModelScanTaskService : RService<ModelScanTask>(SMybatisDao(ModelScanTask:
|
|
|
if(entity2 == null){
|
|
|
return false
|
|
|
}
|
|
|
- val entity1 = EquipmentService.select(SFilter.eq("id", entity2!!.equipId!!)).entity()
|
|
|
+ //val entity1 = EquipmentService.select(SFilter.eq("id", entity2!!.equipId!!)).entity()
|
|
|
+ val entity1 = admBaseService?.queryEquipById(entity2!!.equipId!!)?.get(0)
|
|
|
if (entity1!=null){
|
|
|
if (entity1.taskState == 1){
|
|
|
- entity1.taskState = null
|
|
|
- EquipmentService.update(entity1, arrayListOf("TaskState"))
|
|
|
+ /* entity1.taskState = null
|
|
|
+ EquipmentService.update(entity1, arrayListOf("TaskState"))*/
|
|
|
+ val infos = HashMap<String, Any?>()
|
|
|
+ infos.put("taskState",null)
|
|
|
+ entity1.infos = infos
|
|
|
+
|
|
|
+ admBaseService?.updateEquip(arrayListOf(entity1))
|
|
|
}
|
|
|
}
|
|
|
} catch (e: Exception) {
|