package com.ruoyi.record.service;

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.List;

import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.record.domain.RecordBusbarTemp;
import org.springframework.core.io.FileSystemResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;

/**
 * 母排测温信息Service接口
 *
 * @author zangch
 * @date 2024-11-07
 */
public interface IRecordBusbarTempService
{
    /**
     * 查询母排测温信息
     *
     * @param objId 母排测温信息主键
     * @return 母排测温信息
     */
    public RecordBusbarTemp selectRecordBusbarTempByObjId(Long objId);

    /**
     * 查询母排测温信息列表
     *
     * @param recordBusbarTemp 母排测温信息
     * @return 母排测温信息集合
     */
    public List<RecordBusbarTemp> selectRecordBusbarTempList(RecordBusbarTemp recordBusbarTemp);

    /**
     * 新增母排测温信息
     *
     * @param recordBusbarTemp 母排测温信息
     * @return 结果
     */
    public int insertRecordBusbarTemp(RecordBusbarTemp recordBusbarTemp);

    /**
     * 修改母排测温信息
     *
     * @param recordBusbarTemp 母排测温信息
     * @return 结果
     */
    public int updateRecordBusbarTemp(RecordBusbarTemp recordBusbarTemp);

    /**
     * 批量删除母排测温信息
     *
     * @param objIds 需要删除的母排测温信息主键集合
     * @return 结果
     */
    public int deleteRecordBusbarTempByObjIds(Long[] objIds);

    /**
     * 删除母排测温信息信息
     *
     * @param objId 母排测温信息主键
     * @return 结果
     */
    public int deleteRecordBusbarTempByObjId(Long objId);

    /**
     * 获取红外热成像照片。
     * @param filePath 需要获取的红外热成像照片的文件路径。
     * @return 如果文件存在，返回包含文件资源的响应实体；如果文件不存在，返回404状态。
     */
    public ResponseEntity<FileSystemResource> getThermalPhoto(String filePath);

    /**
     * 获取可见光图像。
     * @param filePath 需要获取的图像文件的路径。
     * @return 如果文件存在，返回包含文件资源的响应实体；如果文件不存在，返回404状态。
     */
    public ResponseEntity<FileSystemResource> getVisiblePhoto(String filePath);

    public List<RecordBusbarTemp> boardTempList(RecordBusbarTemp recordBusbarTemp);
}
