package cn.flightfeather.supervision.domain.ds3.repository
|
|
import cn.flightfeather.supervision.domain.ds3.entity.JSDustSiteInfo
|
import cn.flightfeather.supervision.domain.ds3.entity.JSDustSiteMap
|
import cn.flightfeather.supervision.domain.ds3.mapper.JSDustSiteInfoMapper
|
import cn.flightfeather.supervision.domain.ds3.mapper.JSDustSiteMapMapper
|
import cn.flightfeather.supervision.lightshare.vo.DeviceMapVo
|
import cn.flightfeather.supervision.lightshare.vo.DeviceSiteVo
|
import org.springframework.stereotype.Repository
|
import tk.mybatis.mapper.entity.Example
|
import java.util.*
|
|
/**
|
* 金山扬尘监测点位和系统用户映射关系数据库相关操作
|
*/
|
@Repository
|
class JSDustSiteRep(
|
private val jsDustSiteMapMapper: JSDustSiteMapMapper,
|
private val jsDustSiteInfoMapper: JSDustSiteInfoMapper,
|
) {
|
|
/**
|
* 根据飞羽监管用户id查询场景和监测设备的匹配关系
|
* @param idList 监管场景对应的用户id列表
|
* @return 匹配关系列表
|
*/
|
fun findMapBySVUserId(idList: List<String?>): List<DeviceMapVo> {
|
val res = jsDustSiteMapMapper.selectByExample(Example(JSDustSiteMap::class.java).apply {
|
createCriteria().andIn("svUserId", idList)
|
})
|
return DeviceMapVo.fromJSDustSiteMap(res)
|
}
|
|
/**
|
* 获取金山监测点位基本信息
|
* @return 监测点信息列表
|
*/
|
fun findSiteInfo(): List<DeviceSiteVo> {
|
val res = jsDustSiteInfoMapper.selectAll()
|
return DeviceSiteVo.fromJSDustSiteInfo(res)
|
}
|
|
fun searchSiteInfo(keyword: String): List<DeviceSiteVo> {
|
val res = jsDustSiteInfoMapper.selectByExample(Example(JSDustSiteInfo::class.java).apply {
|
createCriteria().andLike("name", "%$keyword%")
|
})
|
return DeviceSiteVo.fromJSDustSiteInfo(res)
|
}
|
|
/**
|
* 根据id查询
|
*/
|
fun findByPrimaryKey(id: Int?): JSDustSiteMap? {
|
if (id == null) {
|
return null
|
}
|
return jsDustSiteMapMapper.selectByPrimaryKey(id)
|
}
|
|
/**
|
* 新增
|
*/
|
fun insert(jsDustSiteMap: JSDustSiteMap): Int {
|
jsDustSiteMap.createTime = Date()
|
return jsDustSiteMapMapper.insert(jsDustSiteMap)
|
}
|
|
/**
|
* 更新
|
*/
|
fun update(jsDustSiteMap: JSDustSiteMap): Int {
|
jsDustSiteMap.createTime = Date()
|
return jsDustSiteMapMapper.updateByPrimaryKeySelective(jsDustSiteMap)
|
}
|
}
|