Jelajahi Sumber

Merge branch 'master' of http://192.168.1.41:3000/maixinrong/Calculation

MaiXinRong 5 tahun lalu
induk
melakukan
b0755dcf53

+ 1 - 0
app/controller/report_controller.js

@@ -245,6 +245,7 @@ module.exports = app => {
                 // fsUtil.writeObjToFile(pageRstArr, 'D:/GitHome/temp/testBuiltPageResult.jsp');
                 runnableRst.push(getExcelByPageData(pageRstArr[idx], params.rpt_names[idx], roleRel));
             }
+            // fsUtil.writeObjToFile(pageRstArr, 'D:/GitHome/temp/计量导出pageArr.js');
             const uuidRst = await Promise.all(runnableRst);
             ctx.body = { data: uuidRst };
             ctx.status = 201;

+ 1 - 1
app/public/report/js/rpt_print.js

@@ -348,7 +348,7 @@ function buildText(destRst, cell, font, control, offsetX, offsetY, adjustY, canv
             let innerDftFontHeight = (dftFontHeight * 3 / 4); //SVG的字体与canvas的字体大小的切换, 不用考虑取整
             if (control) {
                 if (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_VERTICAL]] === "top") {
-                    y = innerArea[JV.IDX_TOP] + JV.OUTPUT_OFFSET[JV.IDX_TOP];
+                    y = innerArea[JV.IDX_TOP] + JV.OUTPUT_OFFSET[JV.IDX_TOP] + orgFontHeight;
                 } else if (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_VERTICAL]] === "bottom") {
                     y = innerArea[JV.IDX_BOTTOM] - JV.OUTPUT_OFFSET[JV.IDX_BOTTOM];
                 } else if (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_VERTICAL]] === "center") {

+ 37 - 15
app/reports/util/rpt_excel_util.js

@@ -1144,25 +1144,47 @@ function resetDummuySignature(pageData, roleRel) {
     }
 }
 
+function _createDummyCell(dummyOrgCells, parentPage) {
+    for (const signature of dummyOrgCells) {
+        const dummyCell = {
+            font: 'Content',
+            control: 'Default',
+            style: 'Default_None',
+            Value: '',
+            area: { Left: 0, Right: 0, Top: 0, Bottom: 0 }
+        };
+        if (signature.style) dummyCell.style = signature.style;
+        dummyCell[JV.PROP_AREA][JV.PROP_LEFT] = signature[JV.PROP_AREA][JV.PROP_LEFT];
+        dummyCell[JV.PROP_AREA][JV.PROP_RIGHT] = signature[JV.PROP_AREA][JV.PROP_RIGHT];
+        dummyCell[JV.PROP_AREA][JV.PROP_TOP] = signature[JV.PROP_AREA][JV.PROP_TOP];
+        dummyCell[JV.PROP_AREA][JV.PROP_BOTTOM] = signature[JV.PROP_AREA][JV.PROP_BOTTOM];
+        parentPage[JV.PROP_CELLS].push(dummyCell);
+    }
+}
+
 function createDummySignatureCell(pageData) {
     for (let pageIdx = 0; pageIdx < pageData.items.length; pageIdx++) {
         const page = pageData.items[pageIdx];
         if (page[JV.PROP_SIGNATURE_CELLS] && page[JV.PROP_SIGNATURE_CELLS].length > 0) {
-            for (const signature of page[JV.PROP_SIGNATURE_CELLS]) {
-                const dummyCell = {
-                    font: 'Content',
-                    control: 'Default',
-                    style: 'Default_None',
-                    Value: '',
-                    area: { Left: 0, Right: 0, Top: 0, Bottom: 0 }
-                };
-                if (signature.style) dummyCell.style = signature.style;
-                dummyCell[JV.PROP_AREA][JV.PROP_LEFT] = signature[JV.PROP_AREA][JV.PROP_LEFT];
-                dummyCell[JV.PROP_AREA][JV.PROP_RIGHT] = signature[JV.PROP_AREA][JV.PROP_RIGHT];
-                dummyCell[JV.PROP_AREA][JV.PROP_TOP] = signature[JV.PROP_AREA][JV.PROP_TOP];
-                dummyCell[JV.PROP_AREA][JV.PROP_BOTTOM] = signature[JV.PROP_AREA][JV.PROP_BOTTOM];
-                page[JV.PROP_CELLS].push(dummyCell);
-            }
+            _createDummyCell(page[JV.PROP_SIGNATURE_CELLS], page);
+            // for (const signature of page[JV.PROP_SIGNATURE_CELLS]) {
+            //     const dummyCell = {
+            //         font: 'Content',
+            //         control: 'Default',
+            //         style: 'Default_None',
+            //         Value: '',
+            //         area: { Left: 0, Right: 0, Top: 0, Bottom: 0 }
+            //     };
+            //     if (signature.style) dummyCell.style = signature.style;
+            //     dummyCell[JV.PROP_AREA][JV.PROP_LEFT] = signature[JV.PROP_AREA][JV.PROP_LEFT];
+            //     dummyCell[JV.PROP_AREA][JV.PROP_RIGHT] = signature[JV.PROP_AREA][JV.PROP_RIGHT];
+            //     dummyCell[JV.PROP_AREA][JV.PROP_TOP] = signature[JV.PROP_AREA][JV.PROP_TOP];
+            //     dummyCell[JV.PROP_AREA][JV.PROP_BOTTOM] = signature[JV.PROP_AREA][JV.PROP_BOTTOM];
+            //     page[JV.PROP_CELLS].push(dummyCell);
+            // }
+        }
+        if (page[JV.PROP_SIGNATURE_DATE_CELLS] && page[JV.PROP_SIGNATURE_DATE_CELLS].length > 0) {
+            _createDummyCell(page[JV.PROP_SIGNATURE_DATE_CELLS], page);
         }
     }
 }

+ 5 - 3
app/view/report/index.ejs

@@ -127,9 +127,11 @@
                             </div>
                         </div>
                     </div>
-                    <div class="print-view form-view">
-                        <div class="pageContainer">
-                            <canvas id="rptCanvas" height="820" width="920"></canvas>
+                    <div class="sjs-height-4">
+                        <div class="print-view form-view">
+                            <div class="pageContainer">
+                                <canvas id="rptCanvas" height="820" width="920"></canvas>
+                            </div>
                         </div>
                     </div>
                 </div>