Merge branch 'MOHEMM-Q2-DEV' into enad-Q1

zohaib-huawei-q2
enadhilal 5 years ago
commit 5f9260d111

@ -1,5 +1,5 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { Platform, Events, MenuController, ModalController } from '@ionic/angular'; import { Platform, Events, MenuController, ModalController, NavController } from '@ionic/angular';
import { TranslatorService } from './hmg-common/services/translator/translator.service'; import { TranslatorService } from './hmg-common/services/translator/translator.service';
import { CommonService } from './hmg-common/services/common/common.service'; import { CommonService } from './hmg-common/services/common/common.service';
import { AuthenticationService } from './hmg-common/services/authentication/authentication.service'; import { AuthenticationService } from './hmg-common/services/authentication/authentication.service';
@ -53,7 +53,8 @@ export class AppComponent implements OnInit {
public pushService: PushService, public pushService: PushService,
private splashScreen: SplashScreen, private splashScreen: SplashScreen,
public router: Router, public router: Router,
public modalController: ModalController public modalController: ModalController,
public nav: NavController,
) { ) {
this.events.subscribe('img-change', displayImg => { this.events.subscribe('img-change', displayImg => {
console.log('app compont: ' + displayImg); console.log('app compont: ' + displayImg);
@ -116,6 +117,9 @@ export class AppComponent implements OnInit {
this.platform.backButton.subscribe(() => { this.platform.backButton.subscribe(() => {
if (this.router.isActive('/authentication/login', true)) { if (this.router.isActive('/authentication/login', true)) {
navigator['app'].exitApp(); navigator['app'].exitApp();
} else if (this.router.isActive('/home', true)) {
this.nav.navigateRoot('/home');
} }
}); });
this.events.subscribe('setMenu', () => { this.events.subscribe('setMenu', () => {
@ -185,7 +189,7 @@ export class AppComponent implements OnInit {
public openMyRequestPage() { public openMyRequestPage() {
this.cs.openMyRequestPage(); this.cs.openMyRequestPage();
this.menu.toggle(); this.menu.toggle();
} }
public profile() { public profile() {

@ -1,6 +1,7 @@
<div class="full-ads" style="background-image: url(https://i.pinimg.com/564x/a8/b4/42/a8b442181f7c004f98d4eef842a76e76.jpg);"> <div class="full-ads" style="background-image: url(https://i.pinimg.com/564x/a8/b4/42/a8b442181f7c004f98d4eef842a76e76.jpg);">
<div class="skip-btn" (click)="skip()">Skip</div> <div class="skip-btn" (click)="skip()" *ngIf="isSkip ==true">{{ts.trPK('worklistMain','skip')}}</div>
<div class="seconds" *ngIf="isSkip ==false">{{setTime}}</div>
<div class="info-container"> <div class="info-container">
<ion-icon name="thumbs-down" class="red"></ion-icon> <ion-icon name="thumbs-down" class="red"></ion-icon>

@ -8,7 +8,8 @@ import { CommonService } from 'src/app/hmg-common/services/common/common.service
styleUrls: ['./home.component.scss'], styleUrls: ['./home.component.scss'],
}) })
export class HomeComponent implements OnInit { export class HomeComponent implements OnInit {
isSkip: boolean = false;
setTime: number = 5;
constructor(public nav: NavController,) { } constructor(public nav: NavController,) { }
ngOnInit() { } ngOnInit() { }
@ -16,4 +17,14 @@ export class HomeComponent implements OnInit {
this.nav.pop(); this.nav.pop();
CommonService.SKIP = true; CommonService.SKIP = true;
} }
setTimer() {
setTimeout(() => {
this.setTime--;
if (this.setTime == 0) {
this.isSkip = true;
} else {
this.setTimer();
}
}, 1000);
}
} }

@ -1,16 +1,17 @@
<ion-content padding class="survey-content"> <ion-content padding class="survey-content">
<div class="skip-btn" (click)="skip()">Skip</div> <div class="skip-btn" (click)="skip()" *ngIf="isSkip ==true">{{ts.trPK('worklistMain','skip')}} </div>
<div class="seconds" *ngIf="isSkip ==false">{{setTime}}</div>
<ion-grid class="ion-no-padding grid-parent"> <ion-grid class="ion-no-padding grid-parent">
<ion-row> <ion-row>
<ion-text class="title-text"> <ion-text class="title-text">
This is to get feedback about the user experience
{{ts.trPK('erm-channel','fedback-about-ux')}}
</ion-text> </ion-text>
</ion-row> </ion-row>
<ion-row> <ion-row>
<ion-col [size]="12"> <ion-col [size]="12">
<p class="subheading">1. How would you like to rate </p> <p class="subheading">1. {{ts.trPK('erm-channel','how-would-you-like')}} </p>
</ion-col> </ion-col>
</ion-row> </ion-row>
<ion-row> <ion-row>
@ -22,7 +23,7 @@
<ion-grid> <ion-grid>
<ion-row> <ion-row>
<ion-col> <ion-col>
<p class="subheading">2. How do you satisfied about this application </p> <p class="subheading">2. {{ts.trPK('erm-channel','how-would-you-satisfied')}} </p>
</ion-col> </ion-col>
</ion-row> </ion-row>
<ion-row class="faces-row"> <ion-row class="faces-row">
@ -47,7 +48,7 @@
</ion-grid> </ion-grid>
<ion-row> <ion-row>
<ion-col> <ion-col>
<p class="comments">Please give us a comments</p> <p class="comments"> {{ts.trPK('erm-channel','give-comments')}} </p>
</ion-col> </ion-col>
</ion-row> </ion-row>
<ion-card class="doctor-card"> <ion-card class="doctor-card">
@ -56,7 +57,7 @@
<ion-col [size]="12"> <ion-col [size]="12">
<ion-textarea rows="6" cols="20" [(ngModel)]="Note" placeholder="Enter any notes here..."></ion-textarea> <ion-textarea rows="6" cols="20" [(ngModel)]="Note" [placeholder]="ts.trPK('replacementRoll','enterNote')"></ion-textarea>
</ion-col> </ion-col>
</ion-row> </ion-row>
</ion-card> </ion-card>

@ -10,11 +10,25 @@ import { TranslatorService } from 'src/app/hmg-common/services/translator/transl
}) })
export class SurveyComponent implements OnInit { export class SurveyComponent implements OnInit {
rate: any; rate: any;
isSkip: boolean = false;
setTime: number = 5;
constructor(public ts: TranslatorService, public cs: CommonService, public nav: NavController) { } constructor(public ts: TranslatorService, public cs: CommonService, public nav: NavController) { }
ngOnInit() { } ngOnInit() {
this.setTimer();
}
skip() { skip() {
this.nav.pop(); this.nav.pop();
CommonService.SKIP = true; CommonService.SKIP = true;
} }
setTimer() {
setTimeout(() => {
this.setTime--;
if (this.setTime == 0) {
this.isSkip = true;
} else {
this.setTimer();
}
}, 1000);
}
} }

@ -13,6 +13,7 @@ import { GetDayAndHoursDetailsRequest } from 'src/app/time-card/service/models/g
import { GetTimeCardSummaryRequest } from 'src/app/time-card/service/models/get-time-card-summary.request'; import { GetTimeCardSummaryRequest } from 'src/app/time-card/service/models/get-time-card-summary.request';
import { DashboredService } from 'src/app/hmg-common/services/dashbored/dashbored.service'; import { DashboredService } from 'src/app/hmg-common/services/dashbored/dashbored.service';
import { AttendanceTrackingResponse } from 'src/app/hmg-common/services/dashbored/attendance-tracking.response'; import { AttendanceTrackingResponse } from 'src/app/hmg-common/services/dashbored/attendance-tracking.response';
import { WorklistService } from 'src/app/notification/service/worklist.service';
@Component({ @Component({
selector: 'app-details', selector: 'app-details',
templateUrl: './details.component.html', templateUrl: './details.component.html',
@ -57,7 +58,7 @@ export class DetailsComponent implements OnInit {
public yearTitle: string; public yearTitle: string;
public activeMonth: any; public activeMonth: any;
public currentMonthName = ''; public currentMonthName = '';
favoriteUserList: [] = [];
public showAttendence = false; public showAttendence = false;
public showData = false; public showData = false;
public currentYear = new Date().getFullYear(); public currentYear = new Date().getFullYear();
@ -90,9 +91,9 @@ export class DetailsComponent implements OnInit {
public EmpTotal = []; public EmpTotal = [];
public selectedFilter = ''; public selectedFilter = '';
public itemType = ''; public itemType = '';
public monthNo : any; public monthNo: any;
public filters = [ public filters = [
{ {
@ -100,7 +101,7 @@ export class DetailsComponent implements OnInit {
name: 'JAN', name: 'JAN',
active: true, active: true,
color: '#0a0a0a', color: '#0a0a0a',
key: 'January', key: 'January',
monthNo: 1, monthNo: 1,
disable: false disable: false
}, },
@ -208,7 +209,7 @@ export class DetailsComponent implements OnInit {
slidesPerView: 7, slidesPerView: 7,
spaceBetween: 1 spaceBetween: 1
}; };
constructor( constructor(
public timeCardService: TimeCardService, public timeCardService: TimeCardService,
public menuService: MenuService, public menuService: MenuService,
@ -218,6 +219,7 @@ export class DetailsComponent implements OnInit {
public modalController: ModalController, public modalController: ModalController,
public authService: AuthenticationService, public authService: AuthenticationService,
public dashboardService: DashboredService, public dashboardService: DashboredService,
public worklistService: WorklistService,
) { ) {
this.direction = TranslatorService.getCurrentLanguageName(); this.direction = TranslatorService.getCurrentLanguageName();
} }
@ -229,7 +231,7 @@ export class DetailsComponent implements OnInit {
// tslint:disable-next-line: max-line-length // tslint:disable-next-line: max-line-length
this.currentMonthName = this.direction === 'en' ? this.common.getMonthName(this.monthIndex) : this.common.getMonthNameAr(this.monthIndex); this.currentMonthName = this.direction === 'en' ? this.common.getMonthName(this.monthIndex) : this.common.getMonthNameAr(this.monthIndex);
this.getSuborinatesAttStatus(); this.getSuborinatesAttStatus();
} }
showAttendanceTracking() { showAttendanceTracking() {
@ -239,11 +241,11 @@ export class DetailsComponent implements OnInit {
P_SELECTED_EMPLOYEE_NUMBER: this.employee.EMPLOYEE_NUMBER P_SELECTED_EMPLOYEE_NUMBER: this.employee.EMPLOYEE_NUMBER
}; };
this.dashboardService.getAttendanceTracking(request).subscribe((result: AttendanceTrackingResponse) => { this.dashboardService.getAttendanceTracking(request).subscribe((result: AttendanceTrackingResponse) => {
if (this.common.validResponse(result)) { if (this.common.validResponse(result)) {
const key = 'GetAttendanceTrackingList'; const key = 'GetAttendanceTrackingList';
this.attendanceTrackingList = result[key]; this.attendanceTrackingList = result[key];
} }
}); });
} }
public segmentChanged(event: any) { public segmentChanged(event: any) {
@ -264,7 +266,10 @@ export class DetailsComponent implements OnInit {
this.showData = false; this.showData = false;
this.nextMonth = new Date().getMonth() + 2; this.nextMonth = new Date().getMonth() + 2;
this.preMonth = new Date().getMonth(); this.preMonth = new Date().getMonth();
this.calendarConfig(this.common.getMonthName(new Date().getMonth() + 1) , new Date().getFullYear()); // this.currentActiveIndex = this.nextMonth -1;
this.activeFilter(this.preMonth);
this.calendarConfig(this.common.getMonthName(new Date().getMonth() + 1), new Date().getFullYear());
} }
calendarConfig(month?, year?) { calendarConfig(month?, year?) {
@ -301,31 +306,38 @@ export class DetailsComponent implements OnInit {
}); });
} }
monthCardSliders(monthNo){ monthCardSliders(monthNo) {
console.log(monthNo+"__________________") console.log(monthNo + "__________________")
// this.common.startLoading();
// this.showData = false; /* change
// this.currentMonth = this.nextMonth - 1; */
// this.currentDate = new Date(this.currentYear, (this.preMonth + 1), 1); this.currentMonthName = this.direction === 'en' ? this.common.getMonthName(this.monthIndex) : this.common.getMonthNameAr(this.monthIndex);
this.calendarConfig(this.getMonthName(this.monthNo) , this.currentYear); this.currentYear = new Date().getFullYear();
console.log("next month =" + this.nextMonth ); this.currentDate = new Date(new Date().getFullYear(), monthNo - 1);
console.log(" Month Name =" + this.currentMonthName); this.showData = false;
this.nextMonth = monthNo;//new Date().getMonth() + 2;
this.preMonth = monthNo - 1;///new Date().getMonth();
//end
this.calendarConfig(this.getMonthName(monthNo), this.currentYear);
console.log("next month =" + this.nextMonth);
console.log(" Month Name =" + this.currentMonthName);
} }
nextSlide() { nextSlide() {
if (this.currentMonthName !== this.month) { if (this.currentMonthName !== this.month) {
this.common.startLoading(); this.common.startLoading();
this.showData = false; this.showData = false;
if (this.nextMonth > 12) { if (this.nextMonth > 12) {
this.currentYear = this.currentYear + 1; this.currentYear = this.currentYear + 1;
this.nextMonth = 1; this.nextMonth = 1;
} }
this.currentDate = new Date(this.currentYear, (this.nextMonth - 1), 1); this.currentDate = new Date(this.currentYear, (this.nextMonth - 1), 1);
this.calendarConfig(this.getMonthName(this.nextMonth) , this.currentYear); this.calendarConfig(this.getMonthName(this.nextMonth), this.currentYear);
this.nextMonth = this.nextMonth + 1; this.nextMonth = this.nextMonth + 1;
this.preMonth = this.nextMonth - 2; this.preMonth = this.nextMonth - 2;
} }
} }
@ -333,12 +345,12 @@ export class DetailsComponent implements OnInit {
this.common.startLoading(); this.common.startLoading();
this.showData = false; this.showData = false;
if (this.preMonth === 0) { if (this.preMonth === 0) {
this.currentYear = this.currentYear - 1; this.currentYear = this.currentYear - 1;
this.preMonth = 12; this.preMonth = 12;
} }
this.currentDate = new Date(this.currentYear, (this.preMonth - 1), 1); this.currentDate = new Date(this.currentYear, (this.preMonth - 1), 1);
console.log(this.currentDate); console.log(this.currentDate);
this.calendarConfig(this.getMonthName(this.preMonth) , this.currentYear); this.calendarConfig(this.getMonthName(this.preMonth), this.currentYear);
this.preMonth = this.preMonth - 1; this.preMonth = this.preMonth - 1;
this.nextMonth = this.preMonth + 2; this.nextMonth = this.preMonth + 2;
} }
@ -363,14 +375,14 @@ export class DetailsComponent implements OnInit {
allDays[i].customDaysOff = false; allDays[i].customDaysOff = false;
allDays[i].customSchedule = false; allDays[i].customSchedule = false;
allDays[i].customScheduleDate = new Date(allDays[i].SCHEDULE_DATE); allDays[i].customScheduleDate = new Date(allDays[i].SCHEDULE_DATE);
// tslint:disable-next-line: triple-equals // tslint:disable-next-line: triple-equals
} else if (allDays[i].ATTENDED_FLAG == 'N' && allDays[i].ABSENT_FLAG == 'Y') { } else if (allDays[i].ATTENDED_FLAG == 'N' && allDays[i].ABSENT_FLAG == 'Y') {
allDays[i].customPresent = false; allDays[i].customPresent = false;
allDays[i].customAbsent = true; allDays[i].customAbsent = true;
allDays[i].customDaysOff = false; allDays[i].customDaysOff = false;
allDays[i].customSchedule = false; allDays[i].customSchedule = false;
allDays[i].customScheduleDate = new Date(allDays[i].SCHEDULE_DATE); allDays[i].customScheduleDate = new Date(allDays[i].SCHEDULE_DATE);
// tslint:disable-next-line: triple-equals // tslint:disable-next-line: triple-equals
} else if (allDays[i].ATTENDED_FLAG == 'N' && allDays[i].DAY_TYPE === 'OFF') { } else if (allDays[i].ATTENDED_FLAG == 'N' && allDays[i].DAY_TYPE === 'OFF') {
allDays[i].customPresent = false; allDays[i].customPresent = false;
allDays[i].customAbsent = false; allDays[i].customAbsent = false;
@ -424,12 +436,12 @@ export class DetailsComponent implements OnInit {
], ],
borderWidth: 1, borderWidth: 1,
// cutoutPrecentage:20 , // cutoutPrecentage:20 ,
}], }],
labels: [ labels: [
'Apsent', 'Apsent',
'Present' 'Present'
] ]
}; };
} }
@ -455,7 +467,7 @@ export class DetailsComponent implements OnInit {
return 'July'; return 'July';
case 8: case 8:
return 'August'; return 'August';
case 9 : case 9:
return 'September'; return 'September';
case 10: case 10:
return 'October'; return 'October';
@ -468,32 +480,32 @@ export class DetailsComponent implements OnInit {
} }
public getMonthNameAr(value: any): any { public getMonthNameAr(value: any): any {
switch (value) { switch (value) {
case 1: case 1:
return 'يناير'; return 'يناير';
case 2: case 2:
return ' فبراير'; return ' فبراير';
case 3: case 3:
return 'مارس'; return 'مارس';
case 4: case 4:
return 'أبريل'; return 'أبريل';
case 5: case 5:
return 'مايو'; return 'مايو';
case 6: case 6:
return 'يونيو'; return 'يونيو';
case 7: case 7:
return 'يوليو'; return 'يوليو';
case 8: case 8:
return 'أغسطس'; return 'أغسطس';
case 9: case 9:
return 'سبتمبر'; return 'سبتمبر';
case 10: case 10:
return ' اكتوبر'; return ' اكتوبر';
case 11: case 11:
return ' نوفمبر'; return ' نوفمبر';
case 12: case 12:
return 'ديسمبر'; return 'ديسمبر';
} }
} }
intializeMemberDetail(userID?) { intializeMemberDetail(userID?) {
@ -502,8 +514,8 @@ export class DetailsComponent implements OnInit {
this.pageLimit = 50; this.pageLimit = 50;
this.pageNum = 1; this.pageNum = 1;
this.employee = this.common.sharedService.getSharedData(MyTeamService.EMPLOYEE_SHARED_DATA, false); this.employee = this.common.sharedService.getSharedData(MyTeamService.EMPLOYEE_SHARED_DATA, false);
const employees = this.common.sharedService.getSharedData( DetailsComponent.opendEmployeesARR, false); const employees = this.common.sharedService.getSharedData(DetailsComponent.opendEmployeesARR, false);
if ( employees ) { if (employees) {
this.opendEmployees.push(this.employee); this.opendEmployees.push(this.employee);
this.common.sharedService.setSharedData(this.opendEmployees, DetailsComponent.opendEmployeesARR); this.common.sharedService.setSharedData(this.opendEmployees, DetailsComponent.opendEmployeesARR);
} }
@ -524,14 +536,14 @@ export class DetailsComponent implements OnInit {
} else { } else {
// tslint:disable-next-line: prefer-for-of // tslint:disable-next-line: prefer-for-of
for (let i = 0; i < this.opendEmployees.length; i++) { for (let i = 0; i < this.opendEmployees.length; i++) {
if (this.opendEmployees[i].EMPLOYEE_NUMBER === this.employee.SUPERVISOR_NUMBER) { if (this.opendEmployees[i].EMPLOYEE_NUMBER === this.employee.SUPERVISOR_NUMBER) {
this.common.sharedService.setSharedData( this.common.sharedService.setSharedData(
this.opendEmployees[i], this.opendEmployees[i],
MyTeamService.EMPLOYEE_SHARED_DATA MyTeamService.EMPLOYEE_SHARED_DATA
); );
break; break;
}
} }
}
this.intializeMemberDetail(this.employee.SUPERVISOR_NUMBER); this.intializeMemberDetail(this.employee.SUPERVISOR_NUMBER);
} }
} }
@ -562,8 +574,8 @@ export class DetailsComponent implements OnInit {
if (userID) { if (userID) {
selEmpNo = userID; selEmpNo = userID;
} else { } else {
selEmpNo = this.employee.EMPLOYEE_NUMBER; selEmpNo = this.employee.EMPLOYEE_NUMBER;
} }
const body = { const body = {
P_SELECTED_EMPLOYEE_NUMBER: selEmpNo, P_SELECTED_EMPLOYEE_NUMBER: selEmpNo,
P_SEARCH_EMPLOYEE_NUMBER: searchEmpNum, P_SEARCH_EMPLOYEE_NUMBER: searchEmpNum,
@ -576,8 +588,8 @@ export class DetailsComponent implements OnInit {
this.myTeamService.getEmployeeSubordinates(body).subscribe((result: any) => { this.myTeamService.getEmployeeSubordinates(body).subscribe((result: any) => {
console.log('one'); console.log('one');
if (this.common.validResponse(result)) { if (this.common.validResponse(result)) {
this.handleEmpResult(result.GetEmployeeSubordinatesList); this.handleEmpResult(result.GetEmployeeSubordinatesList);
} }
}); });
} }
@ -607,23 +619,23 @@ export class DetailsComponent implements OnInit {
} else { } else {
this.empSubordinate = []; this.empSubordinate = [];
} }
} }
doInfinite(infiniteScroll) { doInfinite(infiniteScroll) {
if (!this.isReachEnd) { if (!this.isReachEnd) {
this.myTeamService.getEmployeeSubordinates(this.getEmployeeSubordinatesRequestObject).subscribe((result: any) => { this.myTeamService.getEmployeeSubordinates(this.getEmployeeSubordinatesRequestObject).subscribe((result: any) => {
console.log('two'); console.log('two');
if (this.common.validResponse(result)) { if (this.common.validResponse(result)) {
this.handleEmpResult(result.GetEmployeeSubordinatesList); this.handleEmpResult(result.GetEmployeeSubordinatesList);
} }
this.infiniteScroll.complete(); this.infiniteScroll.complete();
}); });
} else { } else {
if (this.infiniteScroll) { if (this.infiniteScroll) {
this.infiniteScroll.complete(); this.infiniteScroll.complete();
}
} }
} }
}
getDetails(index) { getDetails(index) {
this.common.sharedService.setSharedData(this.empSubordinate[index], MyTeamService.EMPLOYEE_SHARED_DATA); this.common.sharedService.setSharedData(this.empSubordinate[index], MyTeamService.EMPLOYEE_SHARED_DATA);
@ -692,17 +704,17 @@ doInfinite(infiniteScroll) {
this.showEmailInput = true; this.showEmailInput = true;
} }
} }
showCalender(){
if(this.showAttendence){
this.showAttendence = false
}else{ showCalender() {
if (this.showAttendence) {
this.showAttendence = false
} else {
this.showAttendence = true this.showAttendence = true
} }
} }
getSuborinatesAttStatus(){ getSuborinatesAttStatus() {
const request = { const request = {
// VersionID:2.8, // VersionID:2.8,
// Channel:37, // Channel:37,
@ -714,53 +726,121 @@ doInfinite(infiniteScroll) {
// P_USER_NAME:"111209", // P_USER_NAME:"111209",
// UserName:"111209", // UserName:"111209",
// P_EMAIL_ADDRESS:"Faisal.AlQurashi@cloudsolutions.com.sa", // P_EMAIL_ADDRESS:"Faisal.AlQurashi@cloudsolutions.com.sa",
SearchMonth:"January", SearchMonth: "January",
SearchYear:2021 SearchYear: 2021
}; };
// this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) => // this.myTeamService.getSuborinatesAttStatus().subscribe((result: any) =>
this.myTeamService.getSuborinatesAttStatus(request, ()=> {} , this.ts.trPK('general', 'retry')).subscribe((result)=> this.myTeamService.getSuborinatesAttStatus(request, () => { }, this.ts.trPK('general', 'retry')).subscribe((result) => {
{ this.handleRespondSuborinatesAttStatusResult(result);
this.handleRespondSuborinatesAttStatusResult(result);
})
}
handleRespondSuborinatesAttStatusResult(result){ })
// this.EmpTotal = result.GetSubordinatesAttdStatusList.length; }
this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES;
console.log("total no "+this.EmpTotal) handleRespondSuborinatesAttStatusResult(result) {
// this.EmpTotal = result.GetSubordinatesAttdStatusList.length;
this.EmpTotal = result.GetSubordinatesAttdStatusList[0].NUMBER_OF_EMPLOYEES;
console.log("total no " + this.EmpTotal)
}
activeFilter(index: number) {
console.log(this.filters);
if (this.currentActiveIndex !== index) {
this.previousActiveIndex = this.currentActiveIndex;
this.currentActiveIndex = index;
this.filters[this.previousActiveIndex].active = false;
this.filters[this.currentActiveIndex].active = true;
this.selectedFilter = this.filters[this.currentActiveIndex].key;
}
}
disableFilters() {
for (const filter of this.filters) {
if (filter.key === this.itemType) {
filter.disable = false;
filter.active = true;
// filter.value = this.nextMonth - 1;
this.selectedFilter = filter.name;
} else if (this.itemType === '') {
filter.disable = false;
filter.active = false;
} else {
filter.disable = true;
filter.active = false;
} }
}
if (this.itemType === '') {
this.filters[0].active = true;
}
}
activeFilter(index: number) { //save favorite here
console.log(this.filters);
if (this.currentActiveIndex !== index) { setFavorite(selEmp) {
this.previousActiveIndex = this.currentActiveIndex; selEmp.EMPLOYEE_DISPLAY_NAME = selEmp.EMPLOYEE_DISPLAY_NAME ? selEmp.EMPLOYEE_DISPLAY_NAME : selEmp.NAME;
this.currentActiveIndex = index; selEmp.EMPLOYEE_IMAGE = selEmp.EMPLOYEE_IMAGE ? selEmp.EMPLOYEE_IMAGE : '';
this.filters[this.previousActiveIndex].active = false; selEmp.EMAIL_ADDRESS = selEmp.EMAIL_ADDRESS ? selEmp.EMAIL_ADDRESS : '';
this.filters[this.currentActiveIndex].active = true; var confirmBoxhtml = `<div>
this.selectedFilter = this.filters[this.currentActiveIndex].key; <h4>Do you want to add ` + selEmp.EMPLOYEE_DISPLAY_NAME + ` in your favorite list </h4>
} <br/>
<br/>
<div class="fav-profileImageDiv"><ion-row>`;
if (selEmp.EMPLOYEE_IMAGE)
confirmBoxhtml += '<div class="img-box"><img class="empImgeRep" src="data:image/png;base64,' + selEmp.EMPLOYEE_IMAGE + '"></div>';
if (!selEmp.EMPLOYEE_IMAGE)
confirmBoxhtml += '<div class="img-box"><img class="empImgeRep" src="../assets/imgs/profile.png"></div>';
confirmBoxhtml += ` <div class="name-box"><ion-label class="fav-employee-details">
<span>` + selEmp.EMPLOYEE_DISPLAY_NAME + `</span>
</ion-label>
</div></ion-row> </div>
</div>`
let userIndex = this.favoriteUserList.findIndex(x => x['USER_NAME'] == selEmp.USER_NAME)
if (userIndex == -1)
this.common.presentConfirmDialog(
confirmBoxhtml
, () => {
var request =
[{ "USER_NAME": selEmp['USER_NAME'], "EMPLOYEE_DISPLAY_NAME": selEmp['EMPLOYEE_DISPLAY_NAME'], "EMAIL_ADDRESS": selEmp.EMAIL_ADDRESS, "EMPLOYEE_IMAGE": selEmp.EMPLOYEE_IMAGE, "IsFavorite": true }];
this.saveUserFavruiteList(request);
}, () => {
})
// if (selectValue == "1" || selectValue == "2" || selectValue == "3") {
// this.isSelect = true;
// }
// else {
// this.isSelect = false;
// }
}
getFavruite() {
this.worklistService.getFavorite({}, () => {
}).subscribe((result) => {
if (this.common.validResponse(result)) {
this.common.stopLoading();
this.favoriteUserList = result['Mohemm_GetFavoriteReplacementsList'];
} }
})
}
saveUserFavruiteList(request) {
this.worklistService.saveFavoriteList(request, () => {
}).subscribe((result) => {
if (this.common.validResponse(result)) {
this.common.toastPK("replacementRoll", "favorite-saved");
disableFilters() {
for (const filter of this.filters) {
if (filter.key === this.itemType) {
filter.disable = false;
filter.active = true;
// filter.value = this.nextMonth - 1;
this.selectedFilter = filter.name;
} else if (this.itemType === '') {
filter.disable = false;
filter.active = false;
} else {
filter.disable = true;
filter.active = false;
}
}
if (this.itemType === '') {
this.filters[0].active = true;
}
} }
})
}
} }

@ -108,7 +108,7 @@
<!-- <br>{{employee.USER_NAME}}<br> <!-- <br>{{employee.USER_NAME}}<br>
{{employee.EMAIL_ADDRESS}} --> {{employee.EMAIL_ADDRESS}} -->
</ion-label> </ion-label>
<div [ngClass]="direction == 'en' ? 'star-fav' : 'star-fav-left'"> <div [ngClass]="direction == 'en' ? 'star-fav' : 'star-fav-left'" (click)="setFavorite()">
<img src="assets/imgs/fav.svg" /> <img src="assets/imgs/fav.svg" />
</div> </div>
</div> </div>

@ -75,7 +75,7 @@
<span>{{employee.NAME}}</span> <span>{{employee.NAME}}</span>
</ion-label> </ion-label>
<div [ngClass]="direction == 'en' ? 'star-fav' : 'star-fav-left'"> <div [ngClass]="direction == 'en' ? 'star-fav' : 'star-fav-left'" (click)="setFavorite(employee)">
<img src="assets/imgs/fav.svg" /> <img src="assets/imgs/fav.svg" />
</div> </div>
</div> </div>

@ -327,7 +327,7 @@ export class WorkListReplacementRollComponent implements OnInit {
data: "Success" data: "Success"
}); });
if (this.selEmp && this.isAnswer == false) if (this.selEmp && this.isAnswer == false)
this.setFavorite(); this.setFavorite(this.selEmp);
}, 5000); }, 5000);
this.cs.openNotificationPage(); this.cs.openNotificationPage();
@ -457,38 +457,41 @@ export class WorkListReplacementRollComponent implements OnInit {
this.worklistService.saveFavoriteList(request, () => { this.worklistService.saveFavoriteList(request, () => {
}).subscribe((result) => { }).subscribe((result) => {
if (this.cs.validResponse(result)) { if (this.cs.validResponse(result)) {
console.log(result); this.cs.toastPK("replacementRoll", "favorite-saved");
} }
}) })
} }
setFavorite() { setFavorite(selEmp) {
selEmp.EMPLOYEE_DISPLAY_NAME = selEmp.EMPLOYEE_DISPLAY_NAME ? selEmp.EMPLOYEE_DISPLAY_NAME : selEmp.NAME;
selEmp.EMPLOYEE_IMAGE = selEmp.EMPLOYEE_IMAGE ? selEmp.EMPLOYEE_IMAGE : '';
selEmp.EMAIL_ADDRESS = selEmp.EMAIL_ADDRESS ? selEmp.EMAIL_ADDRESS : '';
var confirmBoxhtml = `<div> var confirmBoxhtml = `<div>
<h4>Do you want to add ` + this.selEmp.EMPLOYEE_DISPLAY_NAME + ` in your favorite list </h4> <h4>Do you want to add ` + selEmp.EMPLOYEE_DISPLAY_NAME + ` in your favorite list </h4>
<br/> <br/>
<br/> <br/>
<div class="fav-profileImageDiv">`; <div class="fav-profileImageDiv"><ion-row>`;
if (this.selEmp.EMPLOYEE_IMAGE) if (selEmp.EMPLOYEE_IMAGE)
confirmBoxhtml += '<img class="empImgeRep" src="data:image/png;base64,' + this.selEmp.EMPLOYEE_IMAGE + '">'; confirmBoxhtml += '<div class="img-box"><img class="empImgeRep" src="data:image/png;base64,' + selEmp.EMPLOYEE_IMAGE + '"></div>';
if (!this.selEmp.EMPLOYEE_IMAGE) if (!selEmp.EMPLOYEE_IMAGE)
confirmBoxhtml += '<img class="empImgeRep" src="../assets/imgs/profile.png">'; confirmBoxhtml += '<div class="img-box"><img class="empImgeRep" src="../assets/imgs/profile.png"></div>';
confirmBoxhtml += ` <ion-label class="fav-employee-details"> confirmBoxhtml += ` <div class="name-box"><ion-label class="fav-employee-details">
<span>` + this.selEmp.EMPLOYEE_DISPLAY_NAME + `</span> <span>` + selEmp.EMPLOYEE_DISPLAY_NAME + `</span>
</ion-label> </ion-label>
</div> </div></ion-row> </div>
</div>` </div>`
let userIndex = this.favoriteUserList.findIndex(x => x['USER_NAME'] == this.selEmp.USER_NAME) let userIndex = this.favoriteUserList.findIndex(x => x['USER_NAME'] == selEmp.USER_NAME)
if (userIndex == -1) if (userIndex == -1)
this.cs.presentConfirmDialog( this.cs.presentConfirmDialog(
confirmBoxhtml confirmBoxhtml
, () => { , () => {
var request = var request =
[{ "USER_NAME": this.selEmp['USER_NAME'], "EMPLOYEE_DISPLAY_NAME": this.selEmp['EMPLOYEE_DISPLAY_NAME'], "EMAIL_ADDRESS": this.selEmp.EMAIL_ADDRESS, "EMPLOYEE_IMAGE": this.selEmp.EMPLOYEE_IMAGE, "IsFavorite": true }]; [{ "USER_NAME": selEmp['USER_NAME'], "EMPLOYEE_DISPLAY_NAME": selEmp['EMPLOYEE_DISPLAY_NAME'], "EMAIL_ADDRESS": selEmp.EMAIL_ADDRESS, "EMPLOYEE_IMAGE": selEmp.EMPLOYEE_IMAGE, "IsFavorite": true }];
this.saveUserFavruiteList(request); this.saveUserFavruiteList(request);
}, () => { }, () => {

@ -2105,6 +2105,10 @@
"en": "Enter a note", "en": "Enter a note",
"ar": "أدخل ملاحظة" "ar": "أدخل ملاحظة"
}, },
"favorite-saved": {
"en": "Your Favorite saved successfully",
"ar": "تم حفظ مفضلتك بنجاح"
},
"msg": { "msg": {
"en": "Select a replacement", "en": "Select a replacement",
"ar": "اختر بديل" "ar": "اختر بديل"
@ -3093,5 +3097,23 @@
"en": "Whatsapp", "en": "Whatsapp",
"ar": "واتس اب" "ar": "واتس اب"
} }
},
"erm-channel": {
"fedback-about-ux": {
"en": "This is to get feedback about the user experience",
"ar": "هذا للحصول على تعليقات حول تجربة المستخدم"
},
"how-would-you-like": {
"en": "How would you like to rate",
"ar": "كيف تريد أن تقيم"
},
"how-would-you-satisfied": {
"en": "How do you satisfied with this application",
"ar": "ما مدى رضائك عن هذا التطبيق"
},
"give-comments": {
"en": "Please give us a comments",
"ar": "من فضلك اعطنا تعليقات"
}
} }
} }

@ -1562,11 +1562,12 @@ table.monthview-datetable th small {
display: block; display: block;
} }
.fav-employee-details{ .fav-employee-details{
font-size: 24px; font-size: 20px;
position: relative; position: absolute;
bottom: 30px; bottom: 85px;
font-weight: bold; font-weight: bold;
color: black !important; color: black !important;
padding: 5px;
} }
.fav-profileImageDiv{ .fav-profileImageDiv{
width: 100%; width: 100%;

Loading…
Cancel
Save