TonyKang пре 5 година
родитељ
комит
fc8fc0fe9d

+ 2 - 2
app/public/report/js/rpt_custom.js

@@ -55,8 +55,8 @@ const rptCustomObj = (function () {
             STAGE_AUDIT = result.stageAudit;
             rptSignatureHelper.originalRoleRelList = zTreeOprObj._parseRoleRelList(result.signatureRelInfo[0].rel_content);
             if (current_stage_status === 3) {
-                rptSignatureHelper.mergeSignDate(pageRst);
-                rptSignatureHelper.mergeSignature(pageRst);
+                rptSignatureHelper.mergeSignDate(pageRst, ROLE_REL_LIST);
+                rptSignatureHelper.mergeSignature(pageRst, ROLE_REL_LIST);
             }
         } else {
             CURRENT_ROLE_REL_ID = -1;

+ 11 - 12
app/public/report/js/rpt_jspdf.js

@@ -58,6 +58,10 @@ let JpcJsPDFHelper = {
         }
 
         let newPageMergeBand = private_getIniPageMergeBorder(pageObj[JV.BAND_PROP_MERGE_BAND]);
+        if (current_stage_status === 3) {
+            rptSignatureHelper.mergeSignDate(pageObj, signatureRelArr);
+            // rptSignatureHelper.mergeSignature(pageObj, signatureRelArr); // 这里merge的意义不大
+        }
         // let signatureCounter = {"allAmt": 0, "picAmt": 0};
         if (pageObj && pageObj.items.length > 0 ) {
             for(let i = 0; i < pageObj.items.length; i++) {
@@ -86,7 +90,9 @@ let JpcJsPDFHelper = {
                 }
                 // 计量有电子签名,要单独处理
                 for (let cell of page.signature_cells) {
-                    private_drawSignature(doc, ctx, cell, styles, controls, newPageMergeBand, signatureRelArr);
+                    if (current_stage_status === 3) {
+                        private_drawSignature(doc, ctx, cell, styles, controls, newPageMergeBand, signatureRelArr);
+                    }
                 }
             }
         }
@@ -128,19 +134,12 @@ let JpcJsPDFHelper = {
                 } else {
                     private_drawImage(doc, ctx, cell, control, cell.pic);
                 }
-            //} else if (cell.path) {
             } else {
                 // 导出PDF时,根本不需要判断cell.path是不是null or undefined
-                let finded = false;
-                for (const rtpSignRel of signatureRelArr) {
-                    if (!finded) {
-                        for (const signRel of rtpSignRel) {
-                            if (cell.signature_name === signRel.signature_name && signRel.sign_pic !== null && signRel.sign_pic !== undefined) {
-                                private_drawImage(doc, ctx, cell, control, signRel.sign_pic);
-                                finded = true;
-                                break;
-                            }
-                        }
+                for (const signRel of signatureRelArr) {
+                    if (cell.signature_name === signRel.signature_name && signRel.sign_pic !== null && signRel.sign_pic !== undefined) {
+                        private_drawImage(doc, ctx, cell, control, signRel.sign_pic);
+                        break;
                     }
                 }
             }

+ 5 - 4
app/public/report/js/rpt_main.js

@@ -296,8 +296,8 @@ let zTreeOprObj = {
                     STAGE_AUDIT = result.stageAudit;
                     rptSignatureHelper.originalRoleRelList = me._parseRoleRelList(result.signatureRelInfo[0].rel_content);
                     if (current_stage_status === 3) {
-                        rptSignatureHelper.mergeSignDate(pageRst);
-                        rptSignatureHelper.mergeSignature(pageRst);
+                        rptSignatureHelper.mergeSignDate(pageRst, ROLE_REL_LIST);
+                        rptSignatureHelper.mergeSignature(pageRst, ROLE_REL_LIST);
                     }
                 } else {
                     CURRENT_ROLE_REL_ID = -1;
@@ -590,10 +590,11 @@ let rptControlObj = {
                             //     rptSignatureHelper.mergeSignature(pageData);
                             // }
                             // 备注:因多表的原因,无需merge电子签名,在下面处理
-                            const singleSignatureRelArr = [];
+                            let singleSignatureRelArr = [];
                             for (let rIdx = 0; rIdx < result.signatureRelInfo.length; rIdx++) {
                                 if (result.signatureRelInfo[rIdx].rpt_id === refRptTplIds[idx]) {
-                                    singleSignatureRelArr.push(signatureRelArr[rIdx]);
+                                    // singleSignatureRelArr.push(signatureRelArr[rIdx]);
+                                    singleSignatureRelArr = signatureRelArr[rIdx]; // 有些报表可能没有签名
                                     break;
                                 }
                             }

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

@@ -14,8 +14,23 @@ let rptPrintHelper = {
             }
             CommonAjax.postXsrfEx("/tender/report_api/getMultiReports", params, 60000, true, getCookie('csrfToken'),
                 function(result){
+                    const signatureRelArr = [];
+                    for (const signatureRel of result.signatureRelInfo) {
+                        signatureRelArr.push(JSON.parse(signatureRel.rel_content));
+                    }
                     for (let idx = 0; idx < result.data.length; idx++) {
-                        rptSignatureHelper.mergeSignature(result.data[idx]);
+                        let singleSignatureRelArr = [];
+                        for (let rIdx = 0; rIdx < result.signatureRelInfo.length; rIdx++) {
+                            if (result.signatureRelInfo[rIdx].rpt_id === refRptTplIds[idx]) {
+                                singleSignatureRelArr = signatureRelArr[rIdx]; // 有些报表可能没有签名
+                                break;
+                            }
+                        }
+                        // rptSignatureHelper.mergeSignature(result.data[idx], ROLE_REL_LIST);
+                        if (current_stage_status === 3) {
+                            rptSignatureHelper.mergeSignDate(result.data[idx], singleSignatureRelArr);
+                            rptSignatureHelper.mergeSignature(result.data[idx], singleSignatureRelArr);
+                        }
                     }
                     sessionStorage.multiRptsData = JSON.stringify(result.data);
                     sessionStorage.pageSize = rptControlObj.getCurrentPageSize();

+ 11 - 7
app/public/report/js/rpt_signature.js

@@ -498,11 +498,11 @@ let rptSignatureHelper = {
         }
         return rst;
     },
-    mergeSignature: function (pageData) {
+    mergeSignature: function (pageData, currRoleRelList) {
         for (const page of pageData.items) {
             if (page.signature_cells) {
                 for (const sCell of page.signature_cells) {
-                    for (const role_rel of ROLE_REL_LIST) {
+                    for (const role_rel of currRoleRelList) {
                         if (role_rel.signature_name === sCell.signature_name) {
                             sCell.path = role_rel.sign_path;
                             sCell.pre_path = role_rel.sign_path;
@@ -512,10 +512,10 @@ let rptSignatureHelper = {
             }
         }
     },
-    mergeSignDate: function (pageData) {
-        if (ROLE_REL_LIST && ROLE_REL_LIST.length > 0 && STAGE_AUDIT && STAGE_AUDIT.length > 0) {
-            for (let rridx = 0; rridx < ROLE_REL_LIST.length; rridx++) {
-                const role_rel = ROLE_REL_LIST[rridx];
+    mergeSignDate: function (pageData, currRoleRelList) {
+        if (currRoleRelList && currRoleRelList.length > 0 && STAGE_AUDIT && STAGE_AUDIT.length > 0) {
+            for (let rridx = 0; rridx < currRoleRelList.length; rridx++) {
+                const role_rel = currRoleRelList[rridx];
                 if (role_rel.sign_date === undefined || role_rel.sign_date ===  null || role_rel.sign_date ===  '') {
                     for (const stg_audit of STAGE_AUDIT) {
                         if (role_rel.acc_id === stg_audit.aid) {
@@ -531,11 +531,15 @@ let rptSignatureHelper = {
             if (page.signature_date_cells) {
                 for (const sCell of page.signature_date_cells) {
                     sCell.Value = _getSignDateDftName();
-                    for (const role_rel of ROLE_REL_LIST) {
+                    for (const role_rel of currRoleRelList) {
                         if (sCell.signature_name === role_rel.signature_name + '_签字日期') {
                             if (role_rel.sign_date !== '') {
+                                if (typeof role_rel.sign_date === 'string') {
+                                    role_rel.sign_date = new Date(role_rel.sign_date);
+                                }
                                 sCell.Value = role_rel.sign_date.Format(role_rel.sign_date_format);
                             }
+                            break;
                         }
                     }
                 }

BIN
app/public/upload/1732/im/calcImg_1575343988.jpg


BIN
app/public/upload/1732/im/calcImg_1575343988.png


BIN
app/public/upload/1732/im/calcImg_1575344743.png


BIN
app/public/upload/1732/im/calcImg_1575345699.png


BIN
app/public/upload/1846/im/calcImg_1575343988.png


BIN
app/public/upload/1846/im/calcImg_1575344743.png


BIN
app/public/upload/1846/im/calcImg_1575345699.png


BIN
app/public/upload/1846/im/calcImg_1575440670.jpg


BIN
app/public/upload/1846/im/calcImg_1575440670_org.jpg


BIN
app/public/upload/1854/im/calcImg_1575530556.png


BIN
app/public/upload/1854/im/calcImg_1575530694.png


BIN
app/public/upload/1854/im/calcImg_1575530697.jpg


BIN
app/public/upload/1854/im/calcImg_1575530763.png


BIN
app/public/upload/1854/im/calcImg_1575530765.jpg


BIN
app/public/upload/sign/20191121_sign_15743282431.png


BIN
app/public/upload/sign/20191121_sign_1574328317.png


BIN
app/public/upload/sign/20191121_sign_1574328344.png


BIN
app/public/upload/sign/20191121_sign_1574330508.png