Browse Source

工具栏展开时,拖动改变台账、部位明细高度,工具栏被挤到下方

MaiXinRong 6 years ago
parent
commit
433c32c2d2

+ 11 - 9
app/public/js/div_resizer.js

@@ -65,25 +65,27 @@
         });
         $('body').mousemove(function (e) {
             if (drag) {
-                const rType = obj.attr('r-type');
+                const rType = obj.attr('r-type'), aType = obj.attr('a-type');
                 const moveSize = rType === 'height' ? e.clientY - startPos : e.clientX - startPos;
                 //实时刷新页面
                 mouseMoveCount += moveSize;
                 //当累计移动超过5个像素时,才刷新,减少刷新次数
-                if(Math.abs(mouseMoveCount) >=5){
+                if(Math.abs(mouseMoveCount) >= 5){
                     const min = obj.attr('min') ? obj.attr('min') : parseInt(((orgSize1 + orgSize2) / 10).toFixed(0));
                     const max = orgSize1 + orgSize2 - min;
 
                     // 判断拖动范围不能超出
                     newSize1 = Math.min(Math.max(orgSize1 + moveSize, min), max);
                     newSize2 = Math.min(Math.max(orgSize2 - moveSize, min), max);
-                    $(obj.attr('div1'))[rType](newSize1);
-                    $(obj.attr('div2'))[rType](newSize2);
-                    // if (rType === 'height') {
-                    //     $(obj.attr('div1')).css(rType, newSize1);
-                    //     $(obj.attr('div2')).css(rType, newSize2);
-                    // } else {
-                    // }
+                    if (aType === 'percent') {
+                        const percent1 =  (orgSize1 + moveSize) / (orgSize1 + orgSize2) * 100;
+                        $(obj.attr('div1')).css(rType, percent1 + '%');
+                        const percent2 = (orgSize2 - moveSize) / (orgSize1 + orgSize2) * 100;
+                        $(obj.attr('div2')).css(rType, percent2 + '%');
+                    } else {
+                        $(obj.attr('div1'))[rType](newSize1);
+                        $(obj.attr('div2'))[rType](newSize2);
+                    }
 
                     if(setting.callback) { setting.callback(); }
                     mouseMoveCount = 0;

+ 6 - 5
app/public/js/ledger.js

@@ -15,8 +15,6 @@ function getTenderId() {
 
 $(document).ready(function() {
     autoFlashHeight();
-    $('#right-view').css('width', _.round($('#left-view').parent().width() / 3));
-    $('#left-view').css('width', $('#left-view').parent().width());
     // 初始化台账
     const ledgerSpread = SpreadJsObj.createNewSpread($('#ledger-spread')[0]);
     SpreadJsObj.addDeleteBind(ledgerSpread);
@@ -882,8 +880,10 @@ $(document).ready(function() {
                  * A: 右侧工具栏不一定显示,当右侧工具栏显示过一次后,就必须使用parent和right来计算left.width
                  *
                  */
-                left.css('width', parent.width() - right.outerWidth());
-                left.css('width', parent.width() - right.outerWidth());
+                //left.css('width', parent.width() - right.outerWidth());
+                //left.css('width', parent.width() - right.outerWidth());
+                const percent = 100 - right.outerWidth() /parent.width() * 100;
+                left.css('width', percent + '%');
             } else {
                 left.width(parent.width());
                 right.hide();
@@ -891,6 +891,7 @@ $(document).ready(function() {
         };
         // 展开工具栏、切换标签
         if (!tab.hasClass('active')) {
+            const close = $('.active', '#side-menu').length === 0;
             $('a', '#side-menu').removeClass('active');
             tab.addClass('active');
             $('.tab-content .tab-pane').removeClass('active');
@@ -984,7 +985,7 @@ $(document).ready(function() {
             }
         } else { // 收起工具栏
             tab.removeClass('active');
-            tabPanel.hide();
+            tabPanel.removeClass('active');
             showSideTools(tab.hasClass('active'));
         }
         ledgerSpread.refresh();

+ 4 - 4
app/public/js/ledger_audit.js

@@ -18,8 +18,6 @@ function checkTzMeasureType () {
 
 $(document).ready(() => {
     autoFlashHeight();
-    $('#right-view').css('width', _.round($('#left-view').parent().width() / 3));
-    $('#left-view').css('width', $('#left-view').parent().width());
     const ledgerSpread = SpreadJsObj.createNewSpread($('#ledger-spread')[0]);
     const ledgerTree = createNewPathTree('base', {
         id: 'ledger_id',
@@ -105,8 +103,10 @@ $(document).ready(() => {
                  * A: 右侧工具栏不一定显示,当右侧工具栏显示过一次后,就必须使用parent和right来计算left.width
                  *
                  */
-                left.css('width', parent.width() - right.outerWidth());
-                left.css('width', parent.width() - right.outerWidth());
+                // left.css('width', parent.width() - right.outerWidth());
+                // left.css('width', parent.width() - right.outerWidth());
+                const percent = 100 - right.outerWidth() /parent.width() * 100;
+                left.css('width', percent + '%');
             } else {
                 left.width(parent.width());
                 right.hide();

+ 1 - 3
app/public/js/ledger_tree_col.js

@@ -20,9 +20,7 @@ const ledgerTreeCol = {
             return node.children && node.children.length > 0;
         },
         dgnQty: function (node) {
-            console.log(node.b_code);
-            console.log(!_.isEmpty(node.b_code));
-            return _.isEmpty(node.b_code);
+            return !_.isEmpty(node.b_code);
         },
     },
     getEvent: function (eventName) {

+ 2 - 2
app/view/ledger/audit.ejs

@@ -25,7 +25,7 @@
         <!--核心内容(两栏)-->
         <div class="row w-100 sub-content">
             <!--左栏-->
-            <div class="c-body" id="left-view">
+            <div class="c-body" id="left-view" style="width: 100%">
                 <div class="sjs-height-1" id="ledger-spread">
                 </div>
                 <% if (tender.measure_type === measureType.tz.value) { %>
@@ -44,7 +44,7 @@
                 <% } %>
             </div>
             <!--右栏-->
-            <div class="c-body" id="right-view" style="display: none;">
+            <div class="c-body" id="right-view" style="display: none; width: 33%">
                 <div class="resize-x" id="right-spr" r-Type="width" div1="#left-view" div2="#right-view" title="调整大小" a-type="percent"><!--调整左右高度条--></div>
                 <div class="tab-content">
                     <div id="deal-bills" class="tab-pane">

+ 2 - 2
app/view/ledger/explode.ejs

@@ -56,7 +56,7 @@
         <!--核心内容(两栏)-->
         <div class="row w-100 sub-content">
             <!--左栏-->
-            <div class="c-body" id="left-view">
+            <div class="c-body" id="left-view" style="width: 100%">
                 <div id="ledger-spread" class="<% if (tender.measure_type === measureType.tz.value) { %>sjs-height-1<% } else { %>sjs-height-0<% } %>"></div>
                 <% if (tender.measure_type === measureType.tz.value) { %>
                 <div class="bcontent-wrap" id="main-bottom">
@@ -73,7 +73,7 @@
                 </div>
                 <% } %>
             </div>
-            <div class="c-body" id="right-view" style="display: none;">
+            <div class="c-body" id="right-view" style="display: none; width: 33%;">
                 <div class="resize-x" id="right-spr" r-Type="width" div1="#left-view" div2="#right-view" title="调整大小" a-type="percent"><!--调整左右高度条--></div>
                 <div class="tab-content">
                     <div id="search" class="tab-pane">