package com.example.system.service;

import com.example.system.common.R;
import com.example.system.common.Chart;
import com.example.system.pojo.GenChartByAiRequest;
import com.example.system.pojo.BiResponse;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;

/**
 * @author xiaobaitiao
 * @description 针对表【t_chart(图表信息表)】的数据库操作Service
 * @createDate 2023-08-30 11:05:22
 */
public interface ChartService {
    /**
     * AI生成图表
     * @param multipartFile 上传的Excel文件
     * @param genChartByAiRequest 生成图表请求参数
     * @return 分析结果
     */
    R<BiResponse> genChartByAi(MultipartFile multipartFile,
                               GenChartByAiRequest genChartByAiRequest);

    /**
     * 根据ID查询图表
     * @param id 图表ID
     * @return 图表信息
     */
    Chart getChartById(String id);

    /**
     * 保存图表信息
     * @param chart 图表对象
     * @return 是否保存成功
     */
    boolean saveChart(Chart chart);

    /**
     * 更新图表信息
     * @param chart 图表对象
     * @return 是否更新成功
     */
    boolean updateChart(Chart chart);

    /**
     * 删除图表
     * @param id 图表ID
     * @return 是否删除成功
     */
    boolean deleteChart(String id);
}