TonyKang 4 years ago
parent
commit
51905ac1ec
1 changed files with 30 additions and 25 deletions
  1. 30 25
      app/view/report/rpt_all_popup.ejs

+ 30 - 25
app/view/report/rpt_all_popup.ejs

@@ -457,21 +457,23 @@
         let _pushRptLine = function (parentItem, rptItem, level, needChk, parentNodeIdStr, thisItemSeq) {
             if (rptItem.nodeType === 1) {
                 let amt = _countAvailableTpls(rptItem);
-                let classStr = '';
-                if (level > 0) {
-                    classStr = 'pl-' + (level + 3);
-                }
-                if (needChk) {
-                    let chkName = parentItem.name + FOLDER_SEPERATER + rptItem.name;
-                    let checkedStr = (checkingArr.indexOf(chkName) >= 0) ? ' checked' : '';
-                    let sIdStr = parentNodeIdStr + '_sub_' + thisItemSeq;
-                    tbDom.append('<tr><td class="' + classStr + '">' + rptItem.name + '</td><td>' + amt + '</td><td><input id="' + sIdStr + '" onchange="changeFolder(this, ' + isCommonStr + ', \'' + parentNodeIdStr + '\' )" hiddenval="' + chkName + '" type="checkbox"' + checkedStr + '></td></tr>');
-                } else {
-                    tbDom.append('<tr><td class="' + classStr + '">' + rptItem.name + '</td><td>' + amt + '</td><td></td></tr>');
-                }
-                if (rptItem.items && rptItem.items.length > 0) {
-                    for (const subItem of rptItem.items) {
-                        _pushRptLine(rptItem, subItem, level + 1, false, '');
+                if (amt > 0) {
+                    let classStr = '';
+                    if (level > 0) {
+                        classStr = 'pl-' + (level + 3);
+                    }
+                    if (needChk) {
+                        let chkName = parentItem.name + FOLDER_SEPERATER + rptItem.name;
+                        let checkedStr = (checkingArr.indexOf(chkName) >= 0) ? ' checked' : '';
+                        let sIdStr = parentNodeIdStr + '_sub_' + thisItemSeq;
+                        tbDom.append('<tr><td class="' + classStr + '">' + rptItem.name + '</td><td>' + amt + '</td><td><input id="' + sIdStr + '" onchange="changeFolder(this, ' + isCommonStr + ', \'' + parentNodeIdStr + '\' )" hiddenval="' + chkName + '" type="checkbox"' + checkedStr + '></td></tr>');
+                    } else {
+                        tbDom.append('<tr><td class="' + classStr + '">' + rptItem.name + '</td><td>' + amt + '</td><td></td></tr>');
+                    }
+                    if (rptItem.items && rptItem.items.length > 0) {
+                        for (const subItem of rptItem.items) {
+                            _pushRptLine(rptItem, subItem, level + 1, false, '');
+                        }
                     }
                 }
             }
@@ -480,18 +482,21 @@
         let parentIdx = 0;
         let subCnt = topTreeNode.items.length;
         for (const topItem of topTreeNode.items) {
-            TplAmts.push(_countAvailableTpls(topItem));
-            let checkedStr = (checkingArr.indexOf(topItem.name) >= 0) ? ' checked' : '';
-            let pIdStr = tbDomId + '_' + parentIdx + '_' + subCnt;
-            tbDom.append('<tr><td>' + topItem.name + '</td><td>' + TplAmts[TplAmts.length - 1] + '</td><td><input id="' + pIdStr + '" onchange="changeFolder(this, ' + isCommonStr + ', null)" hiddenval="' + topItem.name + '" type="checkbox"' + checkedStr + '></td></tr>');
-            if (topItem.items && topItem.items.length > 0) {
-                let subSeq = 0;
-                for (const subItem of topItem.items) {
-                    _pushRptLine(topItem, subItem, 1, true, pIdStr, subSeq);
+            const avRpts = _countAvailableTpls(topItem);
+            if (avRpts > 0) {
+                TplAmts.push(avRpts);
+                let checkedStr = (checkingArr.indexOf(topItem.name) >= 0) ? ' checked' : '';
+                let pIdStr = tbDomId + '_' + parentIdx + '_' + subCnt;
+                tbDom.append('<tr><td>' + topItem.name + '</td><td>' + TplAmts[TplAmts.length - 1] + '</td><td><input id="' + pIdStr + '" onchange="changeFolder(this, ' + isCommonStr + ', null)" hiddenval="' + topItem.name + '" type="checkbox"' + checkedStr + '></td></tr>');
+                if (topItem.items && topItem.items.length > 0) {
+                    let subSeq = 0;
+                    for (const subItem of topItem.items) {
+                        _pushRptLine(topItem, subItem, 1, true, pIdStr, subSeq);
+                    }
+                    subSeq++;
                 }
-                subSeq++;
+                parentIdx++;
             }
-            parentIdx++;
         }
     }