menu.ts 1.78 KB
import { Component } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';
import { DataService } from '../../providers/data-service';
import { Menu } from '../../providers/define-menu';
import { UnitPage } from '../unit/unit';
import { StatusPage } from '../status/status';
import { AboutPage } from '../about/about';

/*
  Generated class for the Menu page.

  See http://ionicframework.com/docs/v2/components/#navigation for more info on
  Ionic pages and navigation.
*/
@Component({
  selector: 'page-menu',
  templateUrl: 'menu.html'
})
export class MenuPage {
  list_f: Menu[];

  list1state: Array<String> = new Array();

  constructor(public navCtrl: NavController, private dataSevice: DataService) {
      this.list_f = dataSevice.getMenuFirst();
  }

  ionViewDidLoad() {
    console.log('ionViewDidLoad MenuPage');
  }

  ionViewWillEnter() {
      this.getChartData();
  }

  getChartData() {

    var promiseArray1 = new Array();
    for (var i = 0; i < this.list_f.length; i++) {
      var key: string;
      key = this.list_f[i].menuId.toString();
      promiseArray1.push(this.dataSevice.getInfo(key));
    }

    Promise.all(promiseArray1)
    .then(val =>
    {
      for(var i = 0; i< this.list_f.length; i++)
      {
          var num: number;
          if(val[i] == null)
          {
            num = 0;
          }
          else
          {
            num = +val[i];
          }

          if(this.dataSevice.getQaCnt(this.list_f[i].menuId) == num)
          {
              this.list1state[i] = "done";
          }
      }

    });
  }

   itemSelected(item: Menu) {
       this.navCtrl.push(UnitPage, {menuId: item.menuId, title:item.title});
   }

   gotoStatus() {
       this.navCtrl.push(StatusPage);
   }

   gotoAbout() {
       this.navCtrl.push(AboutPage);
   }
}