package com.ruoyi.jarvis.service; import com.alibaba.fastjson2.JSONObject; import java.util.List; import java.util.Map; /** * WPS365 API服务接口 * * @author system */ public interface IWPS365ApiService { /** * 获取用户信息 * * @param accessToken 访问令牌 * @return 用户信息 */ JSONObject getUserInfo(String accessToken); /** * 获取文件列表 * * @param accessToken 访问令牌 * @param params 查询参数(page, page_size等) * @return 文件列表 */ JSONObject getFileList(String accessToken, Map params); /** * 获取文件信息 * * @param accessToken 访问令牌 * @param fileToken 文件token * @return 文件信息 */ JSONObject getFileInfo(String accessToken, String fileToken); /** * 更新单元格数据(KSheet - 在线表格) * * @param accessToken 访问令牌 * @param fileToken 文件token * @param sheetIdx 工作表索引(从0开始) * @param range 单元格范围(如:A1:B2) * @param values 单元格值(二维数组,第一维是行,第二维是列) * @return 更新结果 */ JSONObject updateCells(String accessToken, String fileToken, int sheetIdx, String range, List> values); /** * 读取单元格数据 * * @param accessToken 访问令牌 * @param fileToken 文件token * @param sheetIdx 工作表索引 * @param range 单元格范围 * @return 单元格数据 */ JSONObject readCells(String accessToken, String fileToken, int sheetIdx, String range); /** * 获取工作表列表 * * @param accessToken 访问令牌 * @param fileToken 文件token * @return 工作表列表 */ JSONObject getSheetList(String accessToken, String fileToken); /** * 创建数据表 * * @param accessToken 访问令牌 * @param fileToken 文件token * @param sheetName 工作表名称 * @return 创建结果 */ JSONObject createSheet(String accessToken, String fileToken, String sheetName); /** * 批量更新单元格数据 * * @param accessToken 访问令牌 * @param fileToken 文件token * @param sheetIdx 工作表索引 * @param updates 更新列表,每个元素包含range和values * @return 更新结果 */ JSONObject batchUpdateCells(String accessToken, String fileToken, int sheetIdx, List> updates); /** * 读取AirSheet工作表数据 * * @param accessToken 访问令牌 * @param worksheetId 工作表ID(文件ID) * @param range 单元格范围(如:A1:B10,可选) * @return 单元格数据 */ JSONObject readAirSheetCells(String accessToken, String worksheetId, String range); /** * 更新AirSheet工作表数据 * * @param accessToken 访问令牌 * @param worksheetId 工作表ID(文件ID) * @param range 单元格范围(如:A1:B2) * @param values 单元格值(二维数组,第一维是行,第二维是列) * @return 更新结果 */ JSONObject updateAirSheetCells(String accessToken, String worksheetId, String range, List> values); }