Browse Source

Merge branch 'dev' of http://192.168.1.41:3000/maixinrong/Calculation into dev

MaiXinRong 2 năm trước cách đây
mục cha
commit
77d6daaf5b

+ 1 - 2
app/public/report/js/jpc_output.js

@@ -599,14 +599,13 @@ let JpcCanvasOutput = {
             //电子签名
             if (page.signature_cells && page.signature_cells.length > 0) {
               
-               
                for (let k = 0; k < page.signature_cells.length; k++) {
                     let cell = page.signature_cells[k];
                     if (PAGE_SHOW['isTextSignature'] === 0 || cell.signature_name.indexOf(JV.SIGNATURE_NAME_DUMMY) >= 0) {
                         // 如果是非文本签名或草图,才显示图片(文本签名已经在后台单独处理,在cells数组内增加一个合适的cell)
                       if(!hideSignature)  private_drawSignatureCell(cell, fonts, styles, controls, newPageMergeBand,moveSignatureTool);
                     }
-                    private_drawSignatureCell(cell, fonts, styles, controls, newPageMergeBand);
+                    // private_drawSignatureCell(cell, fonts, styles, controls, newPageMergeBand);
                 }
               
                 moveSignatureTool.domAddEventListener(canvas);

+ 8 - 6
app/public/report/js/rpt_move_signature.js

@@ -156,19 +156,21 @@ class MoveSignatureTool {
     templateSignatureMove(event, me) {
         // 表格大小
         const size = me.jpcOutput.getReportSizeInPixel(me.pageObj, getScreenDPI());
+        const reportMarginTop= me.pageObj.打印页面_信息.页边距.Top * 96/2;
+        const reportMarginBottom= me.pageObj.打印页面_信息.页边距.Bottom * 96/2;
         const { top, left } = $("#rptCanvas").position();
         const signatureWidth = $("#templateSignature").width();
         const signatureHeight = $("#templateSignature").height();
-        const maxTop = size[1] + top - signatureHeight + me.jpcOutput.offsetY * 2; //签章的最大y坐标
-        const maxLeft = size[0] + left - signatureWidth + me.jpcOutput.offsetX * 2; //签章的最大x坐标
+        const maxTop = size[1] + top - signatureHeight + me.jpcOutput.offsetY - reportMarginBottom  ; //签章的最大y坐标
+        const maxLeft =  me.pageObj.MergeBand.Right + left - signatureWidth + me.jpcOutput.offsetX ; //签章的最大x坐标
 
         const mousePos = me.getMousePos(event, me);
         let newTop = mousePos.y - me.subPos.y + top;
         let newLeft = mousePos.x - me.subPos.x + left;
-        if ((mousePos.y - me.subPos.y) < 0) newTop = top + me.jpcOutput.offsetY;
-        if ((mousePos.x - me.subPos.x) < 0) newLeft = left + me.jpcOutput.offsetX;
-        if ((mousePos.y - me.subPos.y) > maxTop - top) newTop = maxTop ;
-        if ((mousePos.x - me.subPos.x) > maxLeft - left) newLeft = maxLeft;
+        if ((mousePos.y - me.subPos.y) < reportMarginTop+top) newTop = reportMarginTop + top + me.jpcOutput.offsetY;
+        if ((mousePos.x - me.subPos.x) < me.pageObj.MergeBand.Left) newLeft = me.pageObj.MergeBand.Left+left + me.jpcOutput.offsetX;
+        if ((mousePos.y - me.subPos.y) > maxTop ) newTop = maxTop + me.jpcOutput.offsetY*2;
+        if ((mousePos.x - me.subPos.x) > maxLeft - left) newLeft = maxLeft + me.jpcOutput.offsetX/2;
 
         event.currentTarget.style.top = `${newTop}px`;
         event.currentTarget.style.left = `${newLeft}px`;