|
@@ -584,7 +584,7 @@ function writeSheet(pageData, sheetData, paperSize, sharedStrList, stylesObj, ap
|
|
|
if (typeof cell[JV.PROP_FONT] === 'string') {
|
|
|
sheetFont = pageData[JV.NODE_FONT_COLLECTION][cell[JV.PROP_FONT]];
|
|
|
} else {
|
|
|
- sheetFont = cell[JV.PROP_FONT];
|
|
|
+ sheetFont = cell[JV.PROP_FONT] || pageData[JV.NODE_FONT_COLLECTION]['Content'];
|
|
|
}
|
|
|
for (let i = 0; i < stylesObj.fonts.length; i++) {
|
|
|
const font = stylesObj.fonts[i];
|
|
@@ -756,6 +756,7 @@ function writeSheet(pageData, sheetData, paperSize, sharedStrList, stylesObj, ap
|
|
|
fontAngle = parseInt(pageData[JV.NODE_FONT_COLLECTION][cell[JV.PROP_FONT]].FontAngle);
|
|
|
} else {
|
|
|
fontAngle = parseInt(cell[JV.PROP_FONT].FontAngle);
|
|
|
+ // fontAngle = parseInt(cell[JV.PROP_FONT]?.FontAngle || 0);
|
|
|
}
|
|
|
|
|
|
const borderId = private_getBorderId(cell);
|
|
@@ -1332,7 +1333,8 @@ function _checkAndSetSignatureCache(pageData, signKeyArr, signPathArr, roleRel,
|
|
|
if (signatureCell.isStamp) {
|
|
|
//签章不能用role的图片!!!
|
|
|
let sPObj = _getDupPicPath(signatureCell.path);
|
|
|
- if (sPObj !== null && isSinglePage) { // 只有在isSinglePage为true时,才需要优化签名
|
|
|
+ // if (sPObj !== null && isSinglePage) { // 只有在isSinglePage为true时,才需要优化签名
|
|
|
+ if (sPObj !== null && (isSinglePage || signatureCell.isStamp)) { // 但感觉实际上allInOneBook的isStamp情况下,也需要优化签名
|
|
|
signatureCell.signature_name = sPObj.signature_name; // 重点,如果有相同路径的,修改signature_name!
|
|
|
rst = true;
|
|
|
} else {
|
|
@@ -1642,31 +1644,32 @@ const excelExportUtil = {
|
|
|
for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
maxY = 0;
|
|
|
minY = 100000;
|
|
|
- if (pageDataArray[i].items[j][JV.PAGE_SPECIAL_MERGE_POS]) {
|
|
|
- let pos = pageDataArray[i].items[j][JV.PAGE_SPECIAL_MERGE_POS][JV.PROP_TOP][0] + offsetY;
|
|
|
+ const currentPage = pageDataArray[i].items[j];
|
|
|
+ if (currentPage[JV.PAGE_SPECIAL_MERGE_POS]) {
|
|
|
+ let pos = currentPage[JV.PAGE_SPECIAL_MERGE_POS][JV.PROP_TOP][0] + offsetY;
|
|
|
mergeBand[JV.PROP_TOP].push(pos);
|
|
|
- pos = pageDataArray[i].items[j][JV.PAGE_SPECIAL_MERGE_POS][JV.PROP_BOTTOM][0] + offsetY;
|
|
|
+ pos = currentPage[JV.PAGE_SPECIAL_MERGE_POS][JV.PROP_BOTTOM][0] + offsetY;
|
|
|
mergeBand[JV.PROP_BOTTOM].push(pos);
|
|
|
- } else if (pageDataArray[i].items[j][JV.PROP_PAGE_MERGE_BORDER]) {
|
|
|
- let pos = pageDataArray[i].items[j][JV.PROP_PAGE_MERGE_BORDER][JV.PROP_TOP] + offsetY;
|
|
|
+ } else if (currentPage[JV.PROP_PAGE_MERGE_BORDER]) {
|
|
|
+ let pos = currentPage[JV.PROP_PAGE_MERGE_BORDER][JV.PROP_TOP] + offsetY;
|
|
|
mergeBand[JV.PROP_TOP].push(pos);
|
|
|
- pos = pageDataArray[i].items[j][JV.PROP_PAGE_MERGE_BORDER][JV.PROP_BOTTOM] + offsetY;
|
|
|
+ pos = currentPage[JV.PROP_PAGE_MERGE_BORDER][JV.PROP_BOTTOM] + offsetY;
|
|
|
mergeBand[JV.PROP_BOTTOM].push(pos);
|
|
|
} else if (pageDataArray[i][JV.BAND_PROP_MERGE_BAND]) {
|
|
|
mergeBand[JV.PROP_TOP].push(pageDataArray[i][JV.BAND_PROP_MERGE_BAND][JV.PROP_TOP] + offsetY);
|
|
|
mergeBand[JV.PROP_BOTTOM].push(pageDataArray[i][JV.BAND_PROP_MERGE_BAND][JV.PROP_BOTTOM] + offsetY);
|
|
|
}
|
|
|
// 1.2.1 重新设置普通cells的Top Bottom坐标
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_CELLS]);
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_INTERACT_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_INTERACT_CELLS]);
|
|
|
// 1.2.2 重新设置电子签名cells的Top Bottom坐标
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_SIGNATURE_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_SIGNATURE_CELLS]);
|
|
|
// 1.2.3 重新设置电子签名日期cells的Top Bottom坐标
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_SIGNATURE_DATE_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_SIGNATURE_DATE_CELLS]);
|
|
|
// 1.2.4 重置电子签名审核意见cells的Top Bottom坐标
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_SIGNATURE_AUDIT_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_SIGNATURE_AUDIT_CELLS]);
|
|
|
// 1.2.5 重置水印的Top Bottom坐标
|
|
|
- checkAndResetCellYPos(pageDataArray[i].items[j][JV.PROP_WATERMARK_CELLS]);
|
|
|
+ checkAndResetCellYPos(currentPage[JV.PROP_WATERMARK_CELLS]);
|
|
|
|
|
|
const bottomGap = Math.round((pageDataArray[i][JV.NODE_PAGE_INFO][JV.NODE_PAGE_SIZE][1] - parseFloat(pageDataArray[i][JV.NODE_PAGE_INFO][JV.NODE_MARGINS][JV.PROP_BOTTOM]) / 2.54) * DPI) - maxY;
|
|
|
offsetY += (maxY - minY);
|
|
@@ -1682,40 +1685,19 @@ const excelExportUtil = {
|
|
|
const pageItem = {};
|
|
|
pageItem[JV.PROP_PAGE_SEQ] = i + 1;
|
|
|
pageItem[JV.PROP_CELLS] = [];
|
|
|
- for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_CELLS].push(pageDataArray[i].items[j][JV.PROP_CELLS][k]);
|
|
|
- }
|
|
|
- }
|
|
|
pageItem[JV.PROP_INTERACT_CELLS] = [];
|
|
|
- for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_INTERACT_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_INTERACT_CELLS].push(pageDataArray[i].items[j][JV.PROP_INTERACT_CELLS][k]);
|
|
|
- }
|
|
|
- }
|
|
|
pageItem[JV.PROP_SIGNATURE_CELLS] = [];
|
|
|
- for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_SIGNATURE_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_SIGNATURE_CELLS].push(pageDataArray[i].items[j][JV.PROP_SIGNATURE_CELLS][k]);
|
|
|
- }
|
|
|
- }
|
|
|
pageItem[JV.PROP_SIGNATURE_DATE_CELLS] = [];
|
|
|
- for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_SIGNATURE_DATE_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_SIGNATURE_DATE_CELLS].push(pageDataArray[i].items[j][JV.PROP_SIGNATURE_DATE_CELLS][k]);
|
|
|
- }
|
|
|
- }
|
|
|
pageItem[JV.PROP_SIGNATURE_AUDIT_CELLS] = [];
|
|
|
- for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_SIGNATURE_AUDIT_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_SIGNATURE_AUDIT_CELLS].push(pageDataArray[i].items[j][JV.PROP_SIGNATURE_AUDIT_CELLS][k]);
|
|
|
- }
|
|
|
- }
|
|
|
pageItem[JV.PROP_WATERMARK_CELLS] = [];
|
|
|
for (let j = 0; j < pageDataArray[i].items.length; j++) {
|
|
|
- for (let k = 0; k < pageDataArray[i].items[j][JV.PROP_WATERMARK_CELLS].length; k++) {
|
|
|
- pageItem[JV.PROP_WATERMARK_CELLS].push(pageDataArray[i].items[j][JV.PROP_WATERMARK_CELLS][k]);
|
|
|
- }
|
|
|
+ const currentPage = pageDataArray[i].items[j];
|
|
|
+ pageItem[JV.PROP_CELLS].push(...(currentPage[JV.PROP_CELLS] || []));
|
|
|
+ pageItem[JV.PROP_INTERACT_CELLS].push(...(currentPage[JV.PROP_INTERACT_CELLS] || []));
|
|
|
+ pageItem[JV.PROP_SIGNATURE_CELLS].push(...(currentPage[JV.PROP_SIGNATURE_CELLS] || []));
|
|
|
+ pageItem[JV.PROP_SIGNATURE_DATE_CELLS].push(...(currentPage[JV.PROP_SIGNATURE_DATE_CELLS] || []));
|
|
|
+ pageItem[JV.PROP_SIGNATURE_AUDIT_CELLS].push(...(currentPage[JV.PROP_SIGNATURE_AUDIT_CELLS] || []));
|
|
|
+ pageItem[JV.PROP_WATERMARK_CELLS].push(...(currentPage[JV.PROP_WATERMARK_CELLS] || []));
|
|
|
}
|
|
|
newPagePos[i][JV.NODE_PAGE_SIZE] = pageDataArray[i][JV.NODE_PAGE_INFO][JV.NODE_PAGE_SIZE];
|
|
|
pageItem[JV.PAGE_SPECIAL_MERGE_POS] = newPagePos[i];
|