|
@@ -716,16 +716,39 @@ function sortData(sourceData, sortCfg, prjData) {
|
|
|
let addLevel = true;
|
|
|
rst = treeUtil.buildTreeNodeDirectly(tempRstArr, addLevel);
|
|
|
let newTopArr = [];
|
|
|
- if (sortCfg[JV.PROP_FILTER_TOP_BILLS_NODES] && sortCfg[JV.PROP_FILTER_TOP_BILLS_NODES].length > 0) {
|
|
|
+ if ((sortCfg[JV.PROP_FILTER_TOP_BILLS_NODES] && sortCfg[JV.PROP_FILTER_TOP_BILLS_NODES].length > 0) ||
|
|
|
+ (sortCfg[JV.PROP_FILTER_OTHER_BILLS_NODES] && sortCfg[JV.PROP_FILTER_OTHER_BILLS_NODES].length > 0)) {
|
|
|
+ let local_check_bills = function(tItem) {
|
|
|
+ let chkDtl = false;
|
|
|
+ if (tItem.flags && tItem.flags.length > 0) {
|
|
|
+ for (let flagItem of tItem.flags) {
|
|
|
+ if (sortCfg[JV.PROP_FILTER_OTHER_BILLS_NODES].indexOf(flagItem.flag) >= 0) {
|
|
|
+ newTopArr.push(tItem);
|
|
|
+ chkDtl = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!chkDtl && tItem.items && tItem.items.length > 0) {
|
|
|
+ for (let dtlItem of tItem.items) {
|
|
|
+ local_check_bills(dtlItem);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ };
|
|
|
for (let topItem of rst) {
|
|
|
+ let chkTop = false;
|
|
|
if (topItem.flags && topItem.flags.length > 0) {
|
|
|
for (let flagItem of topItem.flags) {
|
|
|
if (sortCfg[JV.PROP_FILTER_TOP_BILLS_NODES].indexOf(flagItem.flag) >= 0) {
|
|
|
newTopArr.push(topItem);
|
|
|
+ chkTop = true;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ if (!chkTop && sortCfg[JV.PROP_FILTER_OTHER_BILLS_NODES] && sortCfg[JV.PROP_FILTER_OTHER_BILLS_NODES].length > 0) {
|
|
|
+ local_check_bills(topItem);
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
newTopArr = rst;
|