package com.ruoyi.system.imagedata; import com.ruoyi.system.domain.ImageData; import java.util.List; /** * 图片数据Service接口 */ public interface IImageDataService { /** * 查询图片数据 * * @param id 图片数据主键 * @return 图片数据 */ public ImageData selectImageDataById(Long id); /** * 查询图片数据列表 * * @param imageData 图片数据 * @return 图片数据集合 */ public List selectImageDataList(ImageData imageData); /** * 新增图片数据 * * @param imageData 图片数据 * @return 结果 */ public int insertImageData(ImageData imageData); /** * 修改图片数据 * * @param imageData 图片数据 * @return 结果 */ public int updateImageData(ImageData imageData); /** * 批量删除图片数据 * * @param ids 需要删除的图片数据主键集合 * @return 结果 */ public int deleteImageDataByIds(Long[] ids); /** * 删除图片数据信息 * * @param id 图片数据主键 * @return 结果 */ public int deleteImageDataById(Long id); /** * 根据调度单ID查询图片数据 * * @param dOrdIDDt 调度单ID * @return 图片数据集合 */ public List selectImageDataByDOrdIDDt(Long dOrdIDDt); String generateCompatibleFilePath(Long dispatchOrdID, String mediaId, boolean isThumbnail); String generateCompatibleUrl(Long dispatchOrdID, String mediaId, boolean isThumbnail); /** * 根据服务单ID查询图片数据 * * @param sOrdIDDt 服务单ID * @return 图片数据集合 */ public List selectImageDataBySOrdIDDt(Long sOrdIDDt); /** * 根据图片类型查询图片数据 * * @param imageType 图片类型 * @return 图片数据集合 */ public List selectImageDataByType(Integer imageType); /** * 标记图片为删除状态 * * @param id 图片数据主键 * @return 结果 */ public int markImageDataAsDeleted(Long id); /** * 微信图片上传处理(原ASP代码转换) * * @param dispatchOrdID 调度单ID * @param serviceOrdID 服务单ID * @param oaid OA用户ID * @param mediaId 微信媒体ID * @param imageType 图片类型 * @param adminId 当前管理员ID * @return 处理结果 */ public String uploadWxImage(Long dispatchOrdID, Long serviceOrdID, Integer oaid, String mediaId, Integer imageType, Integer adminId); /** * 保存微信文件到本地(原PHP代码转换) * * @param filename 文件名 * @param fileContent 文件内容 * @return 是否保存成功 */ public boolean saveWeixinFile(String filename, byte[] fileContent); /** * 生成缩略图(原PHP代码转换) * * @param bigImgPath 原始大图路径 * @param width 缩略图宽度 * @param height 缩略图高度(0表示按比例计算) * @param smallImgPath 缩略图保存路径 * @return 是否生成成功 */ public boolean createThumbnail(String bigImgPath, int width, int height, String smallImgPath); /** * 检查文件兼容性(确保与旧系统兼容) * * @param filePath 文件路径 * @return 兼容性检查结果 */ public String checkFileCompatibility(String filePath); /** * 验证URL格式是否与旧系统兼容 * * @param url 图片URL * @return 是否兼容 */ public boolean isUrlCompatible(String url); /** * 通过图片URL上传处理(允许直接传入图片URL) * * @param dispatchOrdID 调度单ID * @param serviceOrdID 服务单ID * @param oaid OA用户ID * @param imageUrl 图片URL * @param thumbnailUrl 缩略图URL(可选) * @param imageType 图片类型 * @param adminId 当前管理员ID * @return 处理结果 */ public String uploadImageByUrl(Long dispatchOrdID, Long serviceOrdID, Integer oaid, String imageUrl, String thumbnailUrl, Integer imageType, Integer adminId); /** * 通过图片URL上传处理(简化版本,自动生成缩略图URL) * * @param dispatchOrdID 调度单ID * @param serviceOrdID 服务单ID * @param oaid OA用户ID * @param imageUrl 图片URL * @param imageType 图片类型 * @param adminId 当前管理员ID * @return 处理结果 */ public String uploadImageByUrlSimple(Long dispatchOrdID, Long serviceOrdID, Integer oaid, String imageUrl, Integer imageType, Integer adminId); /** * 微信图片上传处理(完整版本,包含文件下载和缩略图生成) * * @param accessToken 微信访问令牌 * @param mediaId 微信媒体ID * @param dispatchOrdID 调度单ID * @param oaid OA用户ID * @param imageType 图片类型 * @param adminId 当前管理员ID * @return 处理结果 */ public String uploadWxImageWithDownload(String accessToken, String mediaId, Long dispatchOrdID, Integer oaid, Integer imageType, Integer adminId); /** * 根据调度单ID和图片类型查询图片数据 * * @param dispatchOrdID 调度单ID * @param imageType 图片类型 * @return 图片数据集合 */ public List selectImageDataByDOrdIDDtAndType(Long dispatchOrdID, Integer imageType); }