去除BaseDocumentService,方法都放到DocumentService
This commit is contained in:
@@ -28,14 +28,6 @@
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<version>3.3.0</version>
|
||||
<configuration>
|
||||
<!-- 可选:指定主类(如果需要可执行) -->
|
||||
<archive>
|
||||
<manifest>
|
||||
<mainClass>com.example.MyApp</mainClass>
|
||||
</manifest>
|
||||
</archive>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- 2. 使用 maven-source-plugin 生成源码 JAR -->
|
||||
|
||||
@@ -1,94 +0,0 @@
|
||||
package com.optima.document.api;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author yanghuanglin
|
||||
* @since 2022/12/28
|
||||
*/
|
||||
public interface BaseDocumentService {
|
||||
/**
|
||||
* 格式转换
|
||||
*
|
||||
* @param source 源文件流,仅支持docx格式
|
||||
* @param sourceExtension 源文件后缀名,不包含"."
|
||||
* @param targetExtension 目标文件后缀名,不包含"."
|
||||
* @return 转换后的文件流
|
||||
*/
|
||||
default byte[] convert(byte[] source, String sourceExtension, String targetExtension) {
|
||||
return convert(source, sourceExtension, targetExtension, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式转换
|
||||
*
|
||||
* @param source 源文件流,仅支持docx格式
|
||||
* @param sourceExtension 源文件后缀名,不包含"."
|
||||
* @param targetExtension 目标文件后缀名,不包含"."
|
||||
* @param targetFormat 目标文件格式,需与目标文件后缀名匹配。
|
||||
* server下此参数无效。
|
||||
* tl-server下参考:
|
||||
* <a href="https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.word.wdsaveformat">word格式</a>
|
||||
* 或 <a href="https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.xlfileformat">excel格式</a>
|
||||
* 或 <a href="https://docs.microsoft.com/en-us/office/vba/api/powerpoint.presentation.saveas">powerpoint格式</a>
|
||||
* @return 转换后的文件流
|
||||
*/
|
||||
default byte[] convert(byte[] source, String sourceExtension, String targetExtension, String targetFormat) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过调用poi生成word
|
||||
*
|
||||
* @param sourceTemplate word模版流,仅支持docx格式
|
||||
* @param dataModel 数据模型
|
||||
* @return word文档流
|
||||
*/
|
||||
default byte[] generateWord(byte[] sourceTemplate, Map<String, Object> dataModel) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* word转为pdf
|
||||
*
|
||||
* @param source word文件流,仅支持docx格式
|
||||
* @param sourceFormat 源文件后缀名,不包含".",tl-server下此参数无效
|
||||
* @param clear 是否清除占位符,如果为true,则在tl-server下源文件只支持docx格式
|
||||
* @return pdf文档流
|
||||
*/
|
||||
default byte[] wordToPdf(byte[] source, String sourceFormat, boolean clear) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过pdfbox将word转图片
|
||||
*
|
||||
* @param source word文件流,仅支持docx格式
|
||||
* @param sourceExtension 源文件后缀名,不包含".",server下此参数无效
|
||||
* @param targetExtension 目标格式 支持jpeg, jpg, gif, tiff or png
|
||||
* @return 图片流
|
||||
*/
|
||||
default byte[] wordToImage(byte[] source, String sourceExtension, String targetExtension) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* doc转为docx
|
||||
*
|
||||
* @param source doc文档流
|
||||
* @return docx文档流
|
||||
*/
|
||||
default byte[] docToDocx(byte[] source) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* xls转为xlsx
|
||||
*
|
||||
* @param source xls文档流
|
||||
* @return xlsx文档流
|
||||
*/
|
||||
default byte[] xlsToXlsx(byte[] source) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,43 @@
|
||||
package com.optima.document.api;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 文档接口,此类中用的poi2生成word文档,使用docto进行格式转换
|
||||
* 文档操作接口
|
||||
*
|
||||
* @author yanghuanglin
|
||||
* @since 2022/12/28
|
||||
*/
|
||||
public interface DocumentService extends BaseDocumentService {
|
||||
public interface DocumentService {
|
||||
/**
|
||||
* 格式转换
|
||||
*
|
||||
* @param source 源文件流,仅支持docx格式
|
||||
* @param sourceExtension 源文件后缀名,不包含"."
|
||||
* @param targetExtension 目标文件后缀名,不包含"."
|
||||
* @param targetFormat 目标文件格式,需与目标文件后缀名匹配。
|
||||
* jodconverter-document-server 下此参数无效。
|
||||
* docto-document-server 下参考:
|
||||
* <a href="https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.word.wdsaveformat">word格式</a>
|
||||
* 或 <a href="https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel.xlfileformat">excel格式</a>
|
||||
* 或 <a href="https://docs.microsoft.com/en-us/office/vba/api/powerpoint.presentation.saveas">powerpoint格式</a>
|
||||
* @return 转换后的文件流
|
||||
*/
|
||||
default byte[] convert(byte[] source, String sourceExtension, String targetExtension, String targetFormat) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过调用poi生成word
|
||||
*
|
||||
* @param sourceTemplate word模版流,仅支持docx格式
|
||||
* @param dataModel 数据模型
|
||||
* @return word文档流
|
||||
*/
|
||||
default byte[] generateWord(byte[] sourceTemplate, Map<String, Object> dataModel) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过调用poi将word转pdf,如果clear为true,则仅支持docx格式
|
||||
*
|
||||
@@ -28,4 +59,24 @@ public interface DocumentService extends BaseDocumentService {
|
||||
default byte[] wordToImage(byte[] source, String targetExtension) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* doc转为docx
|
||||
*
|
||||
* @param source doc文档流
|
||||
* @return docx文档流
|
||||
*/
|
||||
default byte[] docToDocx(byte[] source) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
/**
|
||||
* xls转为xlsx
|
||||
*
|
||||
* @param source xls文档流
|
||||
* @return xlsx文档流
|
||||
*/
|
||||
default byte[] xlsToXlsx(byte[] source) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user