Riku
2024-08-13 6e1095e946997e406926c204ceeb5c820dbd07c1
1. 修复文件扩展名获取错误问题
2. 调试完善设备信息相关接口
已修改4个文件
27 ■■■■ 文件已修改
src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/DeviceRep.kt 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/DeviceServiceImpl.kt 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/kotlin/cn/flightfeather/supervision/lightshare/web/DeviceController.kt 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt
@@ -130,7 +130,7 @@
    fun saveFiles(files: Array<MultipartFile>, basePath: String, path: String): List<String> {
        val pathList = mutableListOf<String>()
        files.forEach { file ->
            val ext = file.resource.file.extension
            val ext = file.originalFilename?.split(".")?.last()
            val fileName = UUID.randomUUID().toString() + "." + ext
            pathList.add("$path$fileName")
            val absolutePath = "${basePath}/$path/"
src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/DeviceRep.kt
@@ -7,6 +7,7 @@
import cn.flightfeather.supervision.domain.ds1.mapper.TreatmentDeviceInfoMapper
import cn.flightfeather.supervision.domain.ds1.mapper.ProductionDeviceInfoMapper
import org.springframework.stereotype.Repository
import java.util.*
/**
 *
@@ -65,12 +66,18 @@
     * 插入设备信息
     */
    fun insertDevice(monitorDeviceInfo: MonitorDeviceInfo): Int {
        monitorDeviceInfo.diCreateTime = Date()
        monitorDeviceInfo.diUpdateTime = Date()
        return monitorDeviceInfoMapper.insert(monitorDeviceInfo)
    }
    fun insertDevice(treatmentDeviceInfo: TreatmentDeviceInfo): Int {
        treatmentDeviceInfo.piCreateTime = Date()
        treatmentDeviceInfo.piUpdateTime = Date()
        return treatmentDeviceInfoMapper.insert(treatmentDeviceInfo)
    }
    fun insertDevice(productionDeviceInfo: ProductionDeviceInfo): Int {
        productionDeviceInfo.wiCreateTime = Date()
        productionDeviceInfo.wiUpdateTime = Date()
        return productionDeviceInfoMapper.insert(productionDeviceInfo)
    }
@@ -78,12 +85,15 @@
     * 更新设备信息
     */
    fun updateDevice(monitorDeviceInfo: MonitorDeviceInfo): Int {
        monitorDeviceInfo.diUpdateTime = Date()
        return monitorDeviceInfoMapper.updateByPrimaryKey(monitorDeviceInfo)
    }
    fun updateDevice(treatmentDeviceInfo: TreatmentDeviceInfo): Int {
        treatmentDeviceInfo.piUpdateTime = Date()
        return treatmentDeviceInfoMapper.updateByPrimaryKey(treatmentDeviceInfo)
    }
    fun updateDevice(productionDeviceInfo: ProductionDeviceInfo): Int {
        productionDeviceInfo.wiUpdateTime = Date()
        return productionDeviceInfoMapper.updateByPrimaryKey(productionDeviceInfo)
    }
src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/DeviceServiceImpl.kt
@@ -34,17 +34,14 @@
        return when (deviceType) {
            Constant.DeviceType.MONITOR_DEVICE -> {
                val info = Gson().fromJson(deviceInfo, MonitorDeviceInfo::class.java)
                info.diCreateTime = Date()
                deviceRep.insertDevice(info)
            }
            Constant.DeviceType.TREATMENT_DEVICE -> {
                val info = Gson().fromJson(deviceInfo, TreatmentDeviceInfo::class.java)
                info.piCreateTime = Date()
                deviceRep.insertDevice(info)
            }
            Constant.DeviceType.PRODUCTION_DEVICE -> {
                val info = Gson().fromJson(deviceInfo, ProductionDeviceInfo::class.java)
                info.wiCreateTime = Date()
                deviceRep.insertDevice(info)
            }
        }
@@ -72,13 +69,17 @@
        deviceId: Int,
        deviceType: Constant.DeviceType,
    ): List<DeviceStatus> {
        return emptyList()
        return deviceRep.findStatuses(DeviceStatus().apply {
            dlDeviceId = deviceId
            dlDeviceType = deviceType.value
            dlSceneGuid = sceneId
        })
    }
    override fun insertDeviceLocation(deviceLocation: String, files: Array<MultipartFile>): Int {
        val obj = JsonUtil.gson.fromJson(deviceLocation, DeviceStatus::class.java)
        val time = DateUtil.DateToString(obj.dlCreateTime, DateUtil.DateStyle.YYYY_MM_DD)
        val picPath = FileUtil.saveFiles(files, imgPath, "device/${obj.dlId}/${time}")
        val picPath = FileUtil.saveFiles(files, imgPath, "device/${obj.dlSceneGuid}/${obj.dlDeviceId}/${time}")
        obj.dlPicUrl = picPath.joinToString(";")
        obj.dlCreateTime = Date()
        return deviceRep.insertStatus(obj)
src/main/kotlin/cn/flightfeather/supervision/lightshare/web/DeviceController.kt
@@ -44,14 +44,14 @@
    ) = resPack { deviceService.findDeviceLocations(sceneId, deviceId, Constant.DeviceType.fromValue(deviceTypeId)) }
    @ApiOperation("新增场景设备位置变更信息")
    @PutMapping("/status/upload")
    @PostMapping("/status/upload")
    fun uploadDeviceLocation(
        @ApiParam("设备位置信息json") @RequestParam("status") status: String,
        @ApiParam("设备图片") @RequestPart("images") images: Array<MultipartFile>,
    ) = resPack { deviceService.insertDeviceLocation(status, images) }
    @ApiOperation("更新场景设备位置变更信息")
    @PutMapping("/status/update")
    @PostMapping("/status/update")
    fun updateDeviceLocation(
        @ApiParam("设备位置信息json") @RequestParam("status") status: String,
        @ApiParam("删除的设备图片路径") @RequestParam("deleteImg") deleteImg: List<String>,