// 基于 @CONTROL/树表格(增强)/MODEL.ts.ftl 生成
<#ibizinclude>
../@MACRO/MODEL/MODEL_HEADER.ts.ftl
</#ibizinclude>

	/**
	 * 日历项类型
	 *
	 * @returns {any[]}
	 * @memberof ${srfclassname('${ctrl.getCodeName()}')}${srfclassname('${ctrl.name}')}Mode
	 */
	public itemType: string = "";

	/**
	 * 获取数据项集合
	 *
	 * @returns {any[]}
	 * @memberof ${srfclassname('${ctrl.getCodeName()}')}${srfclassname('${ctrl.name}')}Mode
	 */
	public getDataItems(): any[] {
     let dataItems: any = [
<#--  关联主实体的主键  -->
<#if ctrl.getPSAppDataEntity()??>
  <#assign appDataEntity = ctrl.getPSAppDataEntity() />
  <#if appDataEntity.isMajor() == false && appDataEntity.getMinorPSAppDERSs()??>
    <#list appDataEntity.getMinorPSAppDERSs() as minorAppDERSs>
      <#if minorAppDERSs.getMajorPSAppDataEntity()??>
      <#assign majorAppDataEntity = minorAppDERSs.getMajorPSAppDataEntity() />
          {
            name: '${majorAppDataEntity.getCodeName()?lower_case}',
            prop: '<#if majorAppDataEntity.getPSDER1N?? && majorAppDataEntity.getPSDER1N()??>${majorAppDataEntity.getPSDER1N().getPSPickupDEField().getCodeName()?lower_case}<#else>${majorAppDataEntity.getKeyPSAppDEField().getCodeName()?lower_case}</#if>'
          },
      </#if>
    </#list>
  </#if>
</#if>
          // 前端新增修改标识,新增为"0",修改为"1"或未设值
          {
            name: 'srffrontuf',
            prop: 'srffrontuf',
            dataType: 'TEXT',
          },
          {
            name: 'style',
          },
          {
            name: 'textColor',
          },
          {
            name: 'itemType',
          },
          {
            name: 'parentId'
          },
          {
            name: 'query',
            prop: 'query',
          },
      ];
      switch(this.itemType){
    <#--  甘特项实体映射  -->
<#if ctrl.getPSDETreeNodes()??>
  <#list ctrl.getPSDETreeNodes() as ganttItem>
    <#if ganttItem.getTreeNodeType() == "DE">
          case "${ganttItem.getNodeType()}":
              dataItems = [...dataItems,
                  <#if ganttItem.getIdPSAppDEField()??>
                  {
                    name: 'id',
                    prop: '${ganttItem.getIdPSAppDEField().getCodeName()?lower_case}'
                  },
                  </#if>
                  <#if ganttItem.getPSDETreeNodeDataItems()??>
                  <#list ganttItem.getPSDETreeNodeDataItems() as dataItem>
                  {
                    name: '<#if dataItem.getName() == 'begin'>start<#else>${dataItem.getName()?lower_case}</#if>',
                    prop: '<#if dataItem.getPSDEField()??>${dataItem.getPSDEField().getCodeName()?lower_case}</#if>'
                  },
                  </#list>
                  </#if>
              ];
              break;
    </#if>
  </#list>
</#if>
      }
      return dataItems;
	}

<#ibizinclude>
../@MACRO/MODEL/MODEL_BOTTOM.ts.ftl
</#ibizinclude>