setInitialSecondShowingItem method

void setInitialSecondShowingItem(
  1. TSelectionEntity currentFirstEntity
)

Implementation

void setInitialSecondShowingItem(TSelectionEntity currentFirstEntity) {
  //设置初始化的二级筛选条件 -1没有
  int secondIndex = currentFirstEntity.getFirstSelectedChildIndex();

  // 配置选中不限 : 第一层级是checkbox 并且 没有默认选中的
  if (secondIndex == -1 && currentFirstEntity.children.isNotEmpty) {
    for (int i = 0, n = currentFirstEntity.children.length; i < n; i++) {
      if (currentFirstEntity.children[i].isUnLimit() &&
          currentFirstEntity.filterType == TSelectionFilterType.checkbox) {
        currentFirstEntity.children[i].isSelected = true;
        break;
      }
    }
  }

  //如果二级有选中的,一级配置为选中,否则为不选中
  int selectedIndex = currentFirstEntity.children.indexWhere((data) {
    return data.isSelected;
  });
  if (selectedIndex != -1 && currentFirstEntity.children.isNotEmpty) {
    currentFirstEntity.isSelected = true;
  } else {
    currentFirstEntity.isSelected = false;
  }
}