import {Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef, Output, EventEmitter} from '@angular/core';
import {concatMap, filter, tap} from 'rxjs/operators';
import {Router} from '@angular/router';
import {TestingInformationService} from '../../../../../../core/service/testing-information/testing-information.service';
import {SweetalertService} from '../../../../../../core/service/sweetalert/sweetalert';
import {Observable} from 'rxjs';
import {AcademicYearService} from '../../../../../../core/service/settings/academic-year.service';
import {createQueryStringFromObject} from '../../../../../../shared/util/func';

@Component({
  selector: 'app-create-exam-calender-search',
  templateUrl: './create-exam-calender-search.component.html',
  styleUrls: ['./create-exam-calender-search.component.scss'],
  changeDetection: ChangeDetectionStrategy.OnPush
})
export class CreateExamCalenderSearchComponent implements OnInit {
  @Output() add = new EventEmitter();
  @Output() search = new EventEmitter();
  academicYearList;
  statusMock = [{id: 1, name: 'ใช้งาน'}, {id: 2, name: 'ยกเลิก'}];
  query = {
    academic_year_code: null,
    testing_information_code: null,
    testing_information_name: null,
    academic_semester_code: null
  };
  constructor(
    private AcademicYearSV: AcademicYearService,
  ) { }

  ngOnInit(): void {
    this.AcademicYearSV.getAll().subscribe(
      result => {
        this.academicYearList = result;
      }
    );
  }

  onAdd(){
    this.add.emit();
  }

  onSearch(){
    const query = createQueryStringFromObject(this.query);
    this.search.emit(query);
  }

  clear(){
    this.query = {
      academic_year_code: null,
      testing_information_code: null,
      testing_information_name: null,
      academic_semester_code: null
    };
  }

}
