package cn.flightfeather.supervision.lightshare.service.impl
|
|
import cn.flightfeather.supervision.common.utils.Constant
|
import cn.flightfeather.supervision.domain.ds1.entity.Domainitem
|
import cn.flightfeather.supervision.domain.ds1.mapper.DomainitemMapper
|
import cn.flightfeather.supervision.lightshare.service.DomainitemService
|
import cn.flightfeather.supervision.lightshare.vo.DomainitemVo
|
import org.springframework.beans.BeanUtils
|
import org.springframework.stereotype.Service
|
import tk.mybatis.mapper.entity.Example
|
|
@Service
|
class DomainitemServiceImpl(val domainitemMapper: DomainitemMapper) : DomainitemService {
|
|
//根据logname查询
|
override fun findByLogName(name: String): List<DomainitemVo> {
|
val domainitemVoList = mutableListOf<DomainitemVo>()
|
val domainitem = Domainitem()
|
domainitem.catelogname = name
|
val domainitemList = domainitemMapper.select(domainitem)
|
domainitemList.forEach {
|
val domainitemVo = DomainitemVo()
|
BeanUtils.copyProperties(it, domainitemVo)
|
domainitemVoList.add(domainitemVo)
|
}
|
//排序
|
domainitemVoList.sortBy { it.index }
|
return domainitemVoList
|
}
|
|
//根据name查询
|
override fun findOneByName(text: String): DomainitemVo {
|
val domainitemVo = DomainitemVo()
|
val domainitem = Domainitem()
|
domainitem.text = text
|
val result = domainitemMapper.selectOne(domainitem)
|
if (result != null) {
|
BeanUtils.copyProperties(result, domainitemVo)
|
}
|
return domainitemVo
|
}
|
|
//根据logid查询
|
override fun findByLogID(guid: String): List<DomainitemVo> {
|
val domainitemVoList = mutableListOf<DomainitemVo>()
|
val domainitem = Domainitem()
|
domainitem.dcguid = guid
|
val domainitemList = domainitemMapper.select(domainitem)
|
domainitemList.forEach {
|
val domainitemVo = DomainitemVo()
|
BeanUtils.copyProperties(it, domainitemVo)
|
domainitemVoList.add(domainitemVo)
|
}
|
return domainitemVoList
|
}
|
|
override fun findOne(id: String): DomainitemVo {
|
val domainitemVo = DomainitemVo()
|
val domainitem = domainitemMapper.selectByPrimaryKey(id)
|
if (domainitem != null) {
|
BeanUtils.copyProperties(domainitem, domainitemVo)
|
}
|
return domainitemVo
|
}
|
|
override fun findAll(): MutableList<DomainitemVo> {
|
val domainitemVoList = mutableListOf<DomainitemVo>()
|
val domainitemList = domainitemMapper.selectAll()
|
domainitemList.forEach {
|
val domainitem = DomainitemVo()
|
BeanUtils.copyProperties(it, domainitem)
|
domainitemVoList.add(domainitem)
|
}
|
return domainitemVoList
|
}
|
|
override fun save(domainitem: Domainitem): Int = domainitemMapper.insert(domainitem)
|
|
override fun update(domainitem: Domainitem): Int = domainitemMapper.updateByPrimaryKey(domainitem)
|
|
override fun delete(id: String): Int = domainitemMapper.deleteByPrimaryKey(id)
|
|
override fun getLocation(sceneType: Int): List<Domainitem> {
|
val lId = when (sceneType.toString()) {
|
Constant.SceneType.TYPE1.value -> Constant.INDUSTRY_LOCATION_ID
|
Constant.SceneType.TYPE2.value -> Constant.WHARF_LOCATION_ID
|
Constant.SceneType.TYPE14.value -> Constant.STORAGE_YARD_LOCATION_ID
|
Constant.SceneType.TYPE3.value -> Constant.MIX_LOCATION_ID
|
Constant.SceneType.TYPE5.value -> Constant.RESTAURANT_LOCATION_ID
|
Constant.SceneType.TYPE6.value -> Constant.Vehicle_LOCATION_ID
|
else -> Constant.INDUSTRY_LOCATION_ID
|
}
|
|
return domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", lId)
|
orderBy("index")
|
})
|
}
|
|
override fun getTaskType(): List<Domainitem> {
|
return domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", Constant.DOMAIN_GUID_TASK_TYPE)
|
orderBy("index")
|
})
|
}
|
|
override fun getDeadlineType(): List<Domainitem> {
|
return domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", Constant.DOMAIN_GUID_TASK_DEADLINE_TYPE)
|
orderBy("index")
|
})
|
}
|
|
override fun getLevelType(): List<Domainitem> {
|
return domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", Constant.DOMAIN_GUID_TASK_LEVEL)
|
orderBy("index")
|
})
|
}
|
|
override fun getMediaFileType(sceneType: Int?): MutableMap<String?, String?> {
|
val res = mutableMapOf<String?, String?>()
|
val type = Constant.SceneType.getByValue(sceneType.toString())
|
when (type) {
|
// 工地
|
Constant.SceneType.TYPE1 -> {
|
val domainItems = domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", Constant.MEDIA_FILE_TYPE_INDUSTRY)
|
orderBy("index")
|
})
|
domainItems.forEach { res[it.value] = it.text }
|
// 工地中的任意拍包含“常规记录”类型
|
res[Constant.MediaFileType.RoutineRecord.value.toString()] = Constant.MediaFileType.RoutineRecord.des
|
return res
|
}
|
// 餐饮
|
Constant.SceneType.TYPE5 -> {
|
val domainItems = domainitemMapper.selectByExample(Example(Domainitem::class.java).apply {
|
createCriteria().andEqualTo("dcguid", Constant.MEDIA_FILE_TYPE_RESTAURANT)
|
orderBy("index")
|
})
|
domainItems.forEach { res[it.value] = it.text }
|
// 餐饮中的任意拍包含“常规记录”类型
|
res[Constant.MediaFileType.RoutineRecord.value.toString()] = Constant.MediaFileType.RoutineRecord.des
|
return res
|
}
|
// 其余类型场景,使用默认的分类
|
else -> {
|
listOf(
|
Constant.MediaFileType.Nameplate,
|
Constant.MediaFileType.MonitorDevice,
|
Constant.MediaFileType.RoutineRecord,
|
).forEach {
|
res[it.value.toString()] = it.des
|
}
|
}
|
}
|
return res
|
}
|
}
|