Explorar o código

fix: 生成后台类别库排列组合有不对

zhangweicheng %!s(int64=3) %!d(string=hai) anos
pai
achega
cf57101e89
Modificáronse 1 ficheiros con 8 adicións e 1 borrados
  1. 8 1
      modules/std_billsGuidance_lib/facade/facades.js

+ 8 - 1
modules/std_billsGuidance_lib/facade/facades.js

@@ -500,7 +500,13 @@ function getItemClassData(nodes, prefix) {
                     optionNode.children.filter(node => !!node.data.rationID).map(node => node.data.rationID) : [];
                 classItems.push({ name: optionNode.data.name, requiredRationIDs });
             } else {
-                classItems.push(...getItemClassData(optionNode.children, optionNode.parent && optionNode.parent.data.required ? optionNode.data.name : ''));
+                const childrenClassItem = getItemClassData(optionNode.children, optionNode.parent && optionNode.parent.data.required ? optionNode.data.name : '');
+                //如果返回的子项为空,但是父项又勾选了必填,则要把本身存入数组
+                if(optionNode.parent && optionNode.parent.data.required && childrenClassItem.length === 0){
+                    classItems.push({ name: optionNode.data.name, requiredRationIDs:[] });
+                }else{
+                    classItems.push(...childrenClassItem);
+                }    
             }
         });
         if (classItems.length) {
@@ -509,6 +515,7 @@ function getItemClassData(nodes, prefix) {
     });
     // 拼接上一文本
     if (classGroups[0] && classGroups[0].length) {
+      
         classGroups[0] = classGroups[0].map(item => {
             item.name = prefix ? `${prefix}@${item.name}` : item.name
             return item;