1.合同签章合同盖章
This commit is contained in:
ljw 2024-11-18 15:21:40 +08:00
parent fb56bb116a
commit 12b0c26e23
5 changed files with 11 additions and 28 deletions

View File

@ -112,7 +112,7 @@ public class SalesOrderAutoSignOp extends AbstractOperationServicePlugIn {
InputStream validatorStream = new ByteArrayInputStream(out.toByteArray());
// 获取书签
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream, filename);
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream);
validatorSignAble(bookMarks, BOOKMARK, filename);
File file;

View File

@ -86,7 +86,7 @@ public class SalescontracValidetor extends AbstractValidator {
InputStream validatorStream = new ByteArrayInputStream(out.toByteArray());
// 获取书签
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream, filename);
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream);
for (CTBookmark bookMark : bookMarks) {
String bookMarkName = bookMark.getName();
if (bookMarkName.contains(BOOKMARK)) {

View File

@ -116,7 +116,7 @@ public class SalesOrderAutoSignOp extends AbstractOperationServicePlugIn {
InputStream validatorStream = new ByteArrayInputStream(out.toByteArray());
// 获取书签
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream, filename);
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream);
validatorSignAble(bookMarks, BOOKMARK, filename);
File file;

View File

@ -83,7 +83,7 @@ public class SalesOrderSignatureValidetor extends AbstractValidator {
InputStream validatorStream = new ByteArrayInputStream(out.toByteArray());
// 获取书签
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream,filename);
List<CTBookmark> bookMarks = ContactSignUtils.getFileBookMarks(validatorStream);
for (CTBookmark bookMark : bookMarks) {
String bookMarkName = bookMark.getName();
if (bookMarkName.contains(BOOKMARK)) {

View File

@ -7,7 +7,6 @@ import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.util.Units;
import org.apache.poi.xwpf.usermodel.*;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBookmark;
@ -28,31 +27,15 @@ import java.util.*;
public class ContactSignUtils {
private static final Logger logger = LoggerFactory.getLogger(ContactSignUtils.class);
//<?php
// echo readfile('.doc')
// ?>
public static List<CTBookmark> getFileBookMarks(InputStream in, String filename) {
public static List<CTBookmark> getFileBookMarks(InputStream in) {
List<CTBookmark> list = new ArrayList<>();
int lastIndexOf = filename.lastIndexOf(".");
String extension = "";
if (lastIndexOf>0) {
extension = filename.substring(lastIndexOf + 1);
}
if ("docx".equals(extension)) {
try (XWPFDocument doc = new XWPFDocument(in)) {
for (XWPFParagraph paragraph : doc.getParagraphs()) {
list.addAll(paragraph.getCTP().getBookmarkStartList());
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}else if ("doc".equals(extension)){
try (POIFSFileSystem doc = new POIFSFileSystem(in)){//HWPFDocument
for (int i = 0; i < doc.getBigBlockSize(); i++) {
}
} catch (IOException e) {
throw new RuntimeException(e);
try (XWPFDocument doc = new XWPFDocument(in)) {
for (XWPFParagraph paragraph : doc.getParagraphs()) {
list.addAll(paragraph.getCTP().getBookmarkStartList());
}
} catch (IOException e) {
throw new RuntimeException(e);
}
return list;
}