TabBar01Comp.ets 1.45 KB
/**
 * CompStyle:NAV_BAR-01
 * 导航栏(顶导/首页/体育/vip)tab
 */
import { CompDTO } from '../bean/CompDTO';
import { Tab01Bean } from '../bean/Tab01Bean';
import { NetDataStatusType } from '../enum/NetDataStatusType';
import { DataFromExtraComp } from './DataFromExtraComp';
import List from '@ohos.util.List';
import { ExtraDTO } from '../bean/ExtraDTO';
import { Tab01DTO } from '../bean/Tab01DTO';
import { CompFilterUtil } from '../utils/CompFilterUtil';
import { WDGroup } from './WDGroup';

export class TabBar01Comp extends DataFromExtraComp<Tab01Bean> {
  constructor(parent: WDGroup, compDTO: CompDTO, initParams: Map<string, Object>) {
    super(parent, compDTO, initParams);
    this.status = NetDataStatusType.LOADED
  }

  public getItems(): List<Tab01Bean> {
    return this.items;
  }

  protected convertDto2Vo(extraDataDTO: ExtraDTO): List<Tab01Bean> {
    if (!extraDataDTO) {
      return new List<Tab01Bean>();
    }
    let beanList: List<Tab01Bean> = new List<Tab01Bean>();
    // let dtoArray: Tab01DTO[] | undefined = extraDataDTO["menus"]
    let dtoArray: Tab01DTO[]  | undefined= extraDataDTO.menus
    if (!dtoArray) {
      return new List<Tab01Bean>();
    }
    for (let index = 0; index < dtoArray.length; index = index + 1) {
      let dto: Tab01DTO = dtoArray[index];
      if (!CompFilterUtil.filterTab01(dto)) {
        continue
      }
      let bean: Tab01Bean = new Tab01Bean(dto);
      beanList.add(bean);
    }
    return beanList;
  }
}