|
@@ -1032,7 +1032,8 @@ function writeSheet(pageData, sheetData, paperSize, sharedStrList, stylesObj, ap
|
|
}
|
|
}
|
|
// 插入分页符结束---------------------------
|
|
// 插入分页符结束---------------------------
|
|
// 图形要放在最后,否则excel会报错(但WPS不会)
|
|
// 图形要放在最后,否则excel会报错(但WPS不会)
|
|
- if (hasSignature && signSheetIdxArr[sheetIdx]) {
|
|
|
|
|
|
+ // console.log(`sheetData is null: ${sheetData === null}`);
|
|
|
|
+ if (hasSignature && (sheetData === null || signSheetIdxArr[sheetIdx])) {
|
|
// let rIdx = 1;
|
|
// let rIdx = 1;
|
|
// for (let ssIdx = 0; ssIdx < signSheetIdxArr.length; ssIdx++) {
|
|
// for (let ssIdx = 0; ssIdx < signSheetIdxArr.length; ssIdx++) {
|
|
// if (signSheetIdxArr[ssIdx]) {
|
|
// if (signSheetIdxArr[ssIdx]) {
|
|
@@ -1367,10 +1368,14 @@ function _checkAndSetSignatureCache(pageData, signKeyArr, signPathArr, roleRel,
|
|
// signPathArr.push([]);
|
|
// signPathArr.push([]);
|
|
// }
|
|
// }
|
|
// 优化调整,不再每页都设置一个,重复的签名只需要一个即可(极端case: 13xx多页的签名文档,导出有1.3G大)
|
|
// 优化调整,不再每页都设置一个,重复的签名只需要一个即可(极端case: 13xx多页的签名文档,导出有1.3G大)
|
|
|
|
+ // console.log('signKeyArr');
|
|
|
|
+ // console.log(signKeyArr);
|
|
const curSignIdx = signKeyArr.length - 1;
|
|
const curSignIdx = signKeyArr.length - 1;
|
|
signSheetIdxArr[pageIdx] = false;
|
|
signSheetIdxArr[pageIdx] = false;
|
|
// console.log('page index: ' + pageIdx);
|
|
// console.log('page index: ' + pageIdx);
|
|
// console.log(page[JV.PROP_SIGNATURE_CELLS]);
|
|
// console.log(page[JV.PROP_SIGNATURE_CELLS]);
|
|
|
|
+ // console.log('chkRoles');
|
|
|
|
+ // console.log(chkRoles);
|
|
if (page[JV.PROP_SIGNATURE_CELLS] && page[JV.PROP_SIGNATURE_CELLS].length > 0) {
|
|
if (page[JV.PROP_SIGNATURE_CELLS] && page[JV.PROP_SIGNATURE_CELLS].length > 0) {
|
|
// let dummySignIdx = 0;
|
|
// let dummySignIdx = 0;
|
|
for (const signature of page[JV.PROP_SIGNATURE_CELLS]) {
|
|
for (const signature of page[JV.PROP_SIGNATURE_CELLS]) {
|
|
@@ -1456,6 +1461,10 @@ function _checkAndSetSignatureCache(pageData, signKeyArr, signPathArr, roleRel,
|
|
let sPObj = _getDupPicPath(role.sign_path);
|
|
let sPObj = _getDupPicPath(role.sign_path);
|
|
if (sPObj !== null && isSinglePage) { // 只有在isSinglePage为true时,才需要优化签名
|
|
if (sPObj !== null && isSinglePage) { // 只有在isSinglePage为true时,才需要优化签名
|
|
// if (sPObj !== null) {
|
|
// if (sPObj !== null) {
|
|
|
|
+ // console.log('signature');
|
|
|
|
+ // console.log(signature);
|
|
|
|
+ // console.log('role');
|
|
|
|
+ // console.log(role);
|
|
signature.signature_name = sPObj.signature_name; // 重点,如果有相同路径的,修改signature_name!
|
|
signature.signature_name = sPObj.signature_name; // 重点,如果有相同路径的,修改signature_name!
|
|
// signSheetIdxArr[pageIdx] = true;
|
|
// signSheetIdxArr[pageIdx] = true;
|
|
rst = true;
|
|
rst = true;
|
|
@@ -1466,6 +1475,8 @@ function _checkAndSetSignatureCache(pageData, signKeyArr, signPathArr, roleRel,
|
|
signKeyArr.push(signature.signature_name);
|
|
signKeyArr.push(signature.signature_name);
|
|
rst = true;
|
|
rst = true;
|
|
signSheetIdxArr[pageIdx] = true;
|
|
signSheetIdxArr[pageIdx] = true;
|
|
|
|
+ // console.log(`pageIdx: ${pageIdx}`);
|
|
|
|
+ // console.log(signSheetIdxArr);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
break;
|
|
break;
|