// 基于 @CONTROL/甘特图部件/MODEL.ts.ftl 生成
/**
 * GanttTree 部件模型
 *
 * @export
 * @class GanttTreeModel
 */
export default class GanttTreeModel {

	/**
	 * 日历项类型
	 *
	 * @returns {any[]}
	 * @memberof GanttTreeGanttMode
	 */
	public itemType: string = "";

	/**
	 * 获取数据项集合
	 *
	 * @returns {any[]}
	 * @memberof GanttTreeGanttMode
	 */
	public getDataItems(): any[] {
     let dataItems: any = [
          // 前端新增修改标识，新增为"0",修改为"1"或未设值
          {
            name: 'srffrontuf',
            prop: 'srffrontuf',
            dataType: 'TEXT',
          },
          {
            name: 'style',
          },
          {
            name: 'textColor',
          },
          {
            name: 'itemType',
          },
          {
            name: 'parentId'
          },
          {
            name: 'query',
            prop: 'query',
          },
      ];
      switch(this.itemType){
          case "orderData":
              dataItems = [...dataItems,
                  {
                    name: 'id',
                    prop: 'ibizorderid'
                  },
                  {
                    name: 'name',
                    prop: 'ibizordername'
                  },
                  {
                    name: 'end',
                    prop: 'updatedate'
                  },
                  {
                    name: 'datakey',
                    prop: 'orderuid'
                  },
                  {
                    name: 'start',
                    prop: 'createdate'
                  },
              ];
              break;
          case "orderDetailData":
              dataItems = [...dataItems,
                  {
                    name: 'id',
                    prop: 'ibizorderdetailid'
                  },
                  {
                    name: 'end',
                    prop: 'updatedate'
                  },
                  {
                    name: 'start',
                    prop: 'createdate'
                  },
                  {
                    name: 'datakey',
                    prop: 'ibizorderdetailid'
                  },
                  {
                    name: 'name',
                    prop: 'ibizorderdetailname'
                  },
              ];
              break;
      }
      return dataItems;
	}

}