opt-cc/static/src/app/request/sql-dashboard/sql-dashboard.component.ts

51 lines
1.6 KiB
TypeScript

import {Component, OnInit} from '@angular/core';
import {ActivatedRoute, Router} from '@angular/router';
import {Award, Promotion, Rank} from '../../models/model-interfaces';
import {RankService} from '../../services/army-management/rank.service';
import {PromotionService} from '../../services/army-management/promotion.service';
import {LoginService} from '../../services/app-user-service/login-service';
import {AwardingService} from '../../services/army-management/awarding.service';
@Component({
templateUrl: './sql-dashboard.component.html',
styleUrls: ['./sql-dashboard.component.css', '../../style/overview.css'],
})
export class SqlDashboardComponent implements OnInit {
ranks: Rank[];
promotions: Promotion[];
awards: Award[];
constructor(private router: Router,
private route: ActivatedRoute,
private rankService: RankService,
private promotionService: PromotionService,
private awardingService: AwardingService,
private loginService: LoginService) {
}
ngOnInit() {
const currentUser = this.loginService.getCurrentUser();
this.promotionService.getSquadPromotions(currentUser.squad._id).subscribe(promotions => {
this.promotions = promotions.filter(promotion => promotion.confirmed === 0);
});
this.awardingService.getUnprocessedSquadAwards(currentUser.squad._id).subscribe(awards => {
this.awards = awards;
});
this.rankService.findRanks('', currentUser.squad.fraction).subscribe(ranks => {
this.ranks = ranks;
});
}
cancel() {
this.router.navigate(['..'], {relativeTo: this.route});
return false;
}
}