Merge branch 'master-newdesign' into umar-issues

master
umasoodch 6 years ago
commit 490ef376c3

@ -443,9 +443,9 @@ export class SubmitAbsenceComponent implements OnInit {
this.textInput = new TextInput( this.textInput = new TextInput(
feildsList[i].SEGMENT_PROMPT, feildsList[i].SEGMENT_PROMPT,
feildsList[i].APPLICATION_COLUMN_NAME, feildsList[i].APPLICATION_COLUMN_NAME,
defaultValText, defaultVal,
containerId, containerId,
defaultVal, defaultValText,
feildsList[i].MOBILE_ENABLED, feildsList[i].MOBILE_ENABLED,
feildsList[i].DISPLAY_FLAG, feildsList[i].DISPLAY_FLAG,
feildsList[i].REQUIRED_FLAG feildsList[i].REQUIRED_FLAG

@ -23,7 +23,7 @@
<ion-item class="item-input-login"> <ion-item class="item-input-login">
<img class="item-icon" src="assets/imgs/username.png" item-start /> <img class="item-icon" src="assets/imgs/username.png" item-start />
<ion-label>{{ts.trPK('login','check-user-text1')}}</ion-label> <ion-label>{{ts.trPK('login','check-user-place-holder')}}</ion-label>
<ion-input class="login-input" required type="text" [(ngModel)]="P_USER_NAME"> <ion-input class="login-input" required type="text" [(ngModel)]="P_USER_NAME">
</ion-input> </ion-input>
</ion-item> </ion-item>

@ -32,8 +32,8 @@
</ion-col> </ion-col>
</ion-row> </ion-row>
<div *ngIf="onlySMSBox"><p>{{ts.trPK('login','verify-login-with')}}</p></div> <div *ngIf="onlySMSBox"><p>{{ts.trPK('login','verify-login-with')}}</p></div>
<div *ngIf="!onlySMSBox && FFloginType == 2"><p>{{ts.trPK('login','verify-fingerprint')}}</p></div> <div *ngIf="!onlySMSBox && FFloginType == 2"><p>{{ts.trPK('login','verify-fingerprint')}}</p></div>
<div *ngIf="!onlySMSBox && FFloginType == 3"><p>{{ts.trPK('login','verify-faceId')}}</p></div> <div *ngIf="!onlySMSBox && FFloginType == 3"><p>{{ts.trPK('login','verify-faceId')}}</p></div>
</ion-col> </ion-col>
</ion-row> </ion-row>

@ -147,8 +147,18 @@ export class ConfirmLoginComponent implements OnInit {
this.selectedOption = this.selectedOption && !this.onlySMSBox ? this.selectedOption : el.value; this.selectedOption = this.selectedOption && !this.onlySMSBox ? this.selectedOption : el.value;
switch (el.value) { switch (el.value) {
case 1: case 1:
localStorage.setItem('login-type', el.value);
this.loginWithSMS(el); console.log(el.value);
localStorage.setItem("login-type",el.value);
console.log("login-type: "+ localStorage.getItem("login-type"))
if(this.FFloginType == 3 || this.FFloginType == 2 ){
this.cs.setActiveTypeLogin(el.value);
}else{
this.cs.setActiveTypeLogin(0);
}
this.loginWithSMS(el);
break; break;
case 2: case 2:
localStorage.setItem('login-type', el.value); localStorage.setItem('login-type', el.value);
@ -159,7 +169,16 @@ export class ConfirmLoginComponent implements OnInit {
this.faceReconization(el); this.faceReconization(el);
break; break;
case 4: case 4:
localStorage.setItem('login-type', el.value);
console.log(el.value);
localStorage.setItem("login-type",el.value);
if(this.FFloginType == 3 || this.FFloginType == 2 ){
this.cs.setActiveTypeLogin(el.value);
}else{
this.cs.setActiveTypeLogin(0);
}
this.loginWithWhatsapp(el); this.loginWithWhatsapp(el);
break; break;
default: default:
@ -197,11 +216,33 @@ export class ConfirmLoginComponent implements OnInit {
this.authService.setPublicFields(request); this.authService.setPublicFields(request);
request.OTP_SendType = type; request.OTP_SendType = type;
request.MobileNumber = this.loginData.MobileNumber; request.MobileNumber = this.loginData.MobileNumber;
request.IsMobileFingerPrint = 0;
request.P_USER_NAME = this.loginData.P_USER_NAME; request.IsMobileFingerPrint =0;
request.LogInTokenID = this.loginData.LogInTokenID;
request.P_LEGISLATION_CODE = 'SA'; request.P_USER_NAME=this.loginData.P_USER_NAME;
this.authService.sendActivationCodeByType(request, () => { }, this.ts.trPK('general', 'ok'))
request.LogInTokenID =this.loginData.LogInTokenID;
request.P_LEGISLATION_CODE =this.loginData.P_LEGISLATION_CODE;//"SA";
// request.VersionID ="2.0";
// request.LanguageID = imeiData && imeiData.PreferredLanguage || request.LanguageID;
this.authService
.sendActivationCodeByType(
request,
() => { },
this.ts.trPK("general", "ok")
)
.subscribe((result: any) => { .subscribe((result: any) => {
if (result.isSMSSent) { if (result.isSMSSent) {
// tslint:disable-next-line: max-line-length // tslint:disable-next-line: max-line-length

@ -6,4 +6,5 @@ export class LoginModel {
EMPLOYEE_DISPLAY_NAME: string; EMPLOYEE_DISPLAY_NAME: string;
EMPLOYEE_NAME:string; EMPLOYEE_NAME:string;
EmployeeName:string; EmployeeName:string;
P_LEGISLATION_CODE:string;
} }

@ -21,9 +21,9 @@
<p class="leftDiv">{{'verificationcode,title' | translate}} <p class="leftDiv">{{'verificationcode,title' | translate}}
<span class="boldTxtNav">{{'verificationcode,verificationcode' | translate}}</span> <span class="boldTxtNav">{{'verificationcode,verificationcode' | translate}}</span>
{{'verificationcode,by' | translate}} {{'verificationcode,by' | translate}}
<span *ngIf="loginType == 1" class="boldTxtNav">{{'verificationcode , sms' | translate}}</span> <span *ngIf="loginType == 1 || activeType == 1" class="boldTxtNav">{{'verificationcode , sms' | translate}}</span>
<span *ngIf="loginType == 4" class="boldTxtNav">{{'verificationcode , whatsapp' | translate}}</span> <span *ngIf="loginType == 4 || activeType == 4" class="boldTxtNav">{{'verificationcode , whatsapp' | translate}}</span>
{{'verificationcode,instruct' | translate}} {{'verificationcode,instruct' | translate}}
<span class="boldTxtNav">{{'general,submit' | translate}}</span <span class="boldTxtNav">{{'general,submit' | translate}}</span
></p> ></p>

@ -47,6 +47,7 @@ export class SmsPageComponent implements OnInit {
user_name: string; user_name: string;
public isPostNoLoad = true; public isPostNoLoad = true;
loginType: any; loginType: any;
activeType: any;
constructor( constructor(
@ -60,6 +61,8 @@ export class SmsPageComponent implements OnInit {
) {} ) {}
ngOnInit() { ngOnInit() {
this.activeType=this.common.getActiveTypeLogin();
console.log("activeType :"+this.activeType);
this.count = 0; this.count = 0;
this.initTimer(); this.initTimer();
this.startTimer(); this.startTimer();
@ -73,7 +76,14 @@ export class SmsPageComponent implements OnInit {
} }
console.log('deviceToken :' + this.deviceToken); console.log('deviceToken :' + this.deviceToken);
this.loginTypeData = this.common.sharedService.getSharedData(SMSCheckRequest.SHARED_DATA, false); this.loginTypeData = this.common.sharedService.getSharedData(SMSCheckRequest.SHARED_DATA, false);
this.loginType = this.loginTypeData.loginType; if( this.loginTypeData){
this.loginType=this.loginTypeData.loginType;
console.log("loginType :"+this.loginTypeData.loginType);
}else{
this.loginType=1;
}
} }
initTimer() { initTimer() {

@ -16,17 +16,18 @@
--> -->
<!-- <app-generic-header <app-generic-header
showBack="!getPassdirfromNotifiPage" showBack="!getPassdirfromNotifiPage"
[updateDirection]="getPassdirfromNotifiPage" [updateDirection]="getPassdirfromNotifiPage"
[headerText]="headerTitle" [headerText]="headerTitle"
(trigger)="closemodal()"> (trigger)="closeModal()"
</app-generic-header> --> >
</app-generic-header>
<app-generic-header <!-- <app-generic-header
showBack="true" showBack="true"
[headerText]="headerTitle"> [headerText]="headerTitle">
</app-generic-header> </app-generic-header> -->
<ion-content padding> <ion-content padding>
<div #containerDiv id="containerDiv"> <div #containerDiv id="containerDiv">

@ -417,7 +417,8 @@ export class AddEitComponent implements OnInit {
} }
} }
closemodal() { closeModal() {
console.log("closeModal");
this.updatedValues = []; this.updatedValues = [];
this.modalController.dismiss(); this.modalController.dismiss();
} }
@ -664,6 +665,8 @@ export class AddEitComponent implements OnInit {
let obj = this.handleDefaultValueResult(result); let obj = this.handleDefaultValueResult(result);
let val = obj.value; let val = obj.value;
let text = obj.text; let text = obj.text;
if (val==null){val="";}
if (text==null){text="";}
if (isStandardDate) { if (isStandardDate) {
console.log("isStandardDate"); console.log("isStandardDate");
elem.value = this.cs.reverseFormatDate(val); elem.value = this.cs.reverseFormatDate(val);
@ -681,6 +684,7 @@ export class AddEitComponent implements OnInit {
if (val) { if (val) {
elem.dataset.dtvalue = val; elem.dataset.dtvalue = val;
elem.innerHTML = val; elem.innerHTML = val;
elem.value=val;
} else { } else {
elem.dataset.dtvalue = ""; elem.dataset.dtvalue = "";
elem.innerHTML = ""; elem.innerHTML = "";
@ -1216,7 +1220,11 @@ export class AddEitComponent implements OnInit {
this.eitResponse[i].DISPLAY_FLAG != "N" this.eitResponse[i].DISPLAY_FLAG != "N"
) { ) {
//time //time
if(elemVal.length>5){
elemVal = elemVal.substring(11, 16); elemVal = elemVal.substring(11, 16);
}else{
elemVal = elemVal;
}
} }
if (this.eitResponse[i].REQUIRED_FLAG == "Y" && !elemVal) { if (this.eitResponse[i].REQUIRED_FLAG == "Y" && !elemVal) {
elem.classList.add("requiredClassElm"); elem.classList.add("requiredClassElm");
@ -1225,11 +1233,11 @@ export class AddEitComponent implements OnInit {
} else { } else {
elem.classList.remove("requiredClassElm"); elem.classList.remove("requiredClassElm");
} }
if (elemVal != 'null'){ // if (elemVal != 'null'){
varcharValue = elemVal; varcharValue = elemVal;
} else{ //} else{
elemVal = null; // elemVal = null;
} // }
valuseArr.push({ valuseArr.push({
TRANSACTION_NUMBER: transNo, TRANSACTION_NUMBER: transNo,
NAME: this.eitResponse[i].APPLICATION_COLUMN_NAME, NAME: this.eitResponse[i].APPLICATION_COLUMN_NAME,

@ -1,10 +1,11 @@
<ion-header> <ion-header>
<ion-toolbar class="header-toolbar-new"> <ion-toolbar class="header-toolbar-new">
<nav-buttons></nav-buttons> <nav-buttons></nav-buttons>
<ion-title color="light">{{headerTitle}}</ion-title> <ion-title [ngClass]=" direction === 'en' ? 'title' : 'title-ar'" color="light">{{headerTitle}}</ion-title>
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
<ion-content> <ion-content>
<!-------------------------------Start New design ----------------------------------------> <!-------------------------------Start New design ---------------------------------------->
<ion-grid> <ion-grid>

@ -229,7 +229,14 @@
.header-toolbar-new{ .header-toolbar-new{
--background: #22c6b3; --background: #22c6b3;
} }
.title{
margin-top: -37px;
margin-left: 85px;
}
.title-ar{
margin-top: -37px;
margin-right: 101px;
}
.confirmEitOkButton{ .confirmEitOkButton{
white-space: normal !important; white-space: normal !important;
text-transform: capitalize !important; text-transform: capitalize !important;

@ -46,12 +46,17 @@ export class EitUpdateListComponent implements OnInit {
modal.onDidDismiss() modal.onDidDismiss()
.then((data: any) => { .then((data: any) => {
console.log("data" + data); // console.log("data" + data);
console.log("data" + data.data.updated); // console.log("data" + data.data.updated);
console.log("data" + data.data.eitRequest.EITTransactionTBL); // console.log("data" + data.data.eitRequest.EITTransactionTBL);
if (data) {
if(data.data == undefined)
{
return;
}
else if (data.data) {
this.updatedData = this.updatedData ? this.updatedData.concat(data.data.updated) : data.data.updated; this.updatedData = this.updatedData ? this.updatedData.concat(data.data.updated) : data.data.updated;
this.notificationBodyRes[index].Collection_Notification = data.data.updated; this.notificationBodyRes[index].Collection_Notification = data.data.updated;
this.updateTransactionList(data.data.eitRequest.EITTransactionTBL); this.updateTransactionList(data.data.eitRequest.EITTransactionTBL);

@ -81,6 +81,7 @@ export class CommonService {
public updateImage:boolean=false; public updateImage:boolean=false;
public setUpdateImg:any; public setUpdateImg:any;
DT: any; DT: any;
activeType: any;
constructor( constructor(
public nav: NavController, public nav: NavController,
public router: Router, public router: Router,
@ -1430,5 +1431,12 @@ public getMonthNameAr(value: number): string {
return this.DT; return this.DT;
} }
setActiveTypeLogin(activeType){
this.activeType=activeType;
}
getActiveTypeLogin(){
return this.activeType;
}
} }

@ -64,6 +64,31 @@ public static host = 'https://uat.hmgwebservices.com/';
); );
} }
public postItg(
service: string,
data: any,
onError: any,
errorLabel?: string
): Observable<any> {
this.cs.startLoading();
return this.httpClient
.post<any>(
ConnectorService.host + service,
data,
ConnectorService.httpOptions
)
.pipe(
timeout(ConnectorService.timeOut),
retry(ConnectorService.retryTimes),
tap(
res => this.handleResponseItg(res, onError, errorLabel),
error => this.handleError(error, onError, errorLabel)
)
);
}
// public postNoLoad(service: string, data: any, onError: any): Observable<any> { // public postNoLoad(service: string, data: any, onError: any): Observable<any> {
// return this.httpClient // return this.httpClient
// .post<any>( // .post<any>(
@ -170,7 +195,10 @@ public static host = 'https://uat.hmgwebservices.com/';
this.cs.stopLoading(); this.cs.stopLoading();
this.cs.presentAcceptDialog(result.ErrorEndUserMessage, () => { this.cs.presentAcceptDialog(result.ErrorEndUserMessage, () => {
this.cs.sharedService.clearAll(); this.cs.sharedService.clearAll();
// this.cs.setIsTimeSessionOut(result.IsAuthenticated);
this.cs.openLogin(); this.cs.openLogin();
}); });
return false; return false;
} else if (result.ErrorType === 2 || result.ErrorType === 4) { } else if (result.ErrorType === 2 || result.ErrorType === 4) {
@ -183,10 +211,48 @@ public static host = 'https://uat.hmgwebservices.com/';
errorLabel, errorLabel,
result.ErrorEndUserMessage result.ErrorEndUserMessage
); );
//add flag if user not auth
} }
} }
} }
public handleResponseItg(result: Response, onError: any, errorLabel: string, isPostNoLoad = false) {
console.log("handleResponseItg");
if (!isPostNoLoad) {
this.cs.stopLoading();
}
if (!this.cs.validResponse(result)) {
if (result.IsAuthenticated === false) {
this.cs.stopLoading();
this.cs.presentAcceptDialog(result.ErrorEndUserMessage, () => {
console.log("presentAcceptDialog");
this.cs.sharedService.clearAll();
// this.cs.setIsTimeSessionOut(result.IsAuthenticated);
this.cs.openLogin();
});
return false;
} else if (result.ErrorType === 2 || result.ErrorType === 4) {
console.log("ErrorType if");
// console.log("error expired");
this.cs.stopLoading();
} else {
console.log("ErrorType else");
this.cs.stopLoading();
// this.cs.showErrorMessageDialog(
// onError,
// errorLabel,
// result.Message
// );
//add flag if user not auth
}
}
}
public getURLText( public getURLText(
url: string, url: string,
onError: any, onError: any,

@ -13,5 +13,6 @@ export class Response {
*/ */
public MessageStatus: number; public MessageStatus: number;
public SuccessMsg; public SuccessMsg;
public Message;
} }

@ -75,7 +75,8 @@ export class FileUploderProfileComponent implements OnInit {
async openFile() { async openFile() {
const actionSheet = await this.actionSheetCtrl.create({ const actionSheet = await this.actionSheetCtrl.create({
header: 'Change Profile Photo', // header: 'Change Profile Photo',
header: this.ts.trPK('userProfile', 'changeImg'),
buttons: [{ buttons: [{
// text: 'Delete Current Image', // text: 'Delete Current Image',
// role: 'destructive', // role: 'destructive',
@ -85,7 +86,8 @@ export class FileUploderProfileComponent implements OnInit {
// this.deleteCurrent(); // this.deleteCurrent();
// } // }
// },{ // },{
text: 'Take Photo', // text: 'Take Photo',
text: this.ts.trPK('general', 'takePhoto'),
icon: 'camera', icon: 'camera',
handler: () => { handler: () => {
console.log('Take Photo'); console.log('Take Photo');
@ -94,7 +96,8 @@ export class FileUploderProfileComponent implements OnInit {
} }
}, { }, {
text: 'Choose from Library', // text: 'Choose from Library',
text: this.ts.trPK('general', 'Choose-from-Library'),
icon: 'images', icon: 'images',
handler: () => { handler: () => {
console.log('Favorite clicked'); console.log('Favorite clicked');
@ -102,7 +105,8 @@ export class FileUploderProfileComponent implements OnInit {
} }
}, { }, {
text: 'Cancel', // text: 'Cancel',
text: this.ts.trPK('general', 'cancel'),
icon: 'close', icon: 'close',
role: 'cancel', role: 'cancel',
handler: () => { handler: () => {

@ -45,7 +45,7 @@
</ion-col> </ion-col>
<ion-col [size]="7" class="input-container" no-padding> <ion-col [size]="7" class="input-container" no-padding>
<ion-input *ngIf="showEmailInput" placeholder="Employee Email" [(ngModel)]="searchEmail" pattern="email"></ion-input> <ion-input *ngIf="showEmailInput" placeholder="Employee Email" [(ngModel)]="searchEmail" pattern="email"></ion-input>
<ion-input *ngIf="showUserNameOrNameInput" placeholder="Search" [(ngModel)]="searchNameOrUserName"></ion-input> <ion-input *ngIf="showUserNameOrNameInput" placeholder ="{{ts.trPK('general','search')}}" [(ngModel)]="searchNameOrUserName"></ion-input>
</ion-col> </ion-col>
<ion-col [size]="2" style="background: #ccc;text-align: center;" no-padding (click)="searchEmployee()"> <ion-col [size]="2" style="background: #ccc;text-align: center;" no-padding (click)="searchEmployee()">
<ion-icon style="margin-top: 10px;font-size: 20px;" class="search-icons" color="light" name="search"></ion-icon> <ion-icon style="margin-top: 10px;font-size: 20px;" class="search-icons" color="light" name="search"></ion-icon>

@ -13,7 +13,7 @@ style="margin-right: -22px;margin-top: -10px;">
<ion-list> <ion-list>
<ion-radio-group> <ion-radio-group>
<ion-list-header style="margin-bottom: 22px !important;"> <ion-list-header style="margin-bottom: 22px !important;">
<p class="Header">More Action</p> <p class="Header"> {{ts.trPK('general','moreAction')}}</p>
</ion-list-header> </ion-list-header>
<div *ngFor="let button of actionBtns "> <div *ngFor="let button of actionBtns ">

@ -301,7 +301,7 @@ export class WorklistMainService {
itgrequest.EmployeeNumber = itgrequest.P_USER_NAME; itgrequest.EmployeeNumber = itgrequest.P_USER_NAME;
console.log(itgrequest); console.log(itgrequest);
console.log(actionURL); console.log(actionURL);
return this.api.post( return this.api.postItg(
actionURL, actionURL,
itgrequest, itgrequest,
onError, onError,

@ -221,6 +221,7 @@ export class WorkListMainItgComponent implements OnInit {
actionService(action, comments?, grantRequests?) { actionService(action, comments?, grantRequests?) {
let url: string; let url: string;
let request = new itgRequest(); let request = new itgRequest();
request.RequestType = this.request_name; request.RequestType = this.request_name;
@ -236,17 +237,35 @@ export class WorkListMainItgComponent implements OnInit {
url = WorkListMainItgComponent.APPROVAL; url = WorkListMainItgComponent.APPROVAL;
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
if (result.MessageStatus != 1) {
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
} else if (result.MessageStatus == 1) {
console.log("hello action 1");
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(1) this.confirmMsg(1)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} else if (action == 2) {//reject } else if (action == 2) {//reject
url = WorkListMainItgComponent.REJECT; url = WorkListMainItgComponent.REJECT;
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
console.log("hello action 2");
if (result.MessageStatus != 1) {
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
} else if (result.MessageStatus == 1) {
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(2) this.confirmMsg(2)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} else if (action == 3) {//request more info } else if (action == 3) {//request more info
request.NewUserEMPId = this.replcamentID; request.NewUserEMPId = this.replcamentID;
@ -257,9 +276,20 @@ export class WorkListMainItgComponent implements OnInit {
request.Comments = comments; request.Comments = comments;
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
this.confirmMsg(3) console.log("hello action 3");
if (result.MessageStatus != 1) {
//this.common.presentAlert(result.Message);
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
}
if (result.MessageStatus == 1) {
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(3)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} }
} else if (action == 4) {//delegate } else if (action == 4) {//delegate
@ -267,9 +297,18 @@ export class WorkListMainItgComponent implements OnInit {
url = WorkListMainItgComponent.DELEGATE; url = WorkListMainItgComponent.DELEGATE;
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
console.log("hello action 4");
if (result.MessageStatus != 1) {
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
} else if (result.MessageStatus == 1) {
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(4) this.confirmMsg(4)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} else if (action == 5) { //answer } else if (action == 5) { //answer
url = WorkListMainItgComponent.ANSWER; url = WorkListMainItgComponent.ANSWER;
@ -278,9 +317,18 @@ export class WorkListMainItgComponent implements OnInit {
} else { } else {
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
console.log("hello action 5");
if (result.MessageStatus != 1) {
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
} else if (result.MessageStatus == 1) {
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(5) this.confirmMsg(5)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} }
} else if (action == 6) { //grant } else if (action == 6) { //grant
@ -293,9 +341,17 @@ export class WorkListMainItgComponent implements OnInit {
request.AdditionalFields = this.grantRequest; request.AdditionalFields = this.grantRequest;
this.workListService.getITGActionRequest(request, url) this.workListService.getITGActionRequest(request, url)
.subscribe((result: any) => { .subscribe((result: any) => {
console.log("hello action 6");
if (result.MessageStatus != 1) {
this.common.presentAlert(this.ts.trPK('general', 'error-itg'));
} else if (result.MessageStatus == 1) {
this.common.presentAlert(this.ts.trPK('worklistMain', 'Tran_Succ'));
this.confirmMsg(6) this.confirmMsg(6)
// this.common.openNotificationPage(); // this.common.openNotificationPage();
this.skip(); this.skip();
}
}); });
} else { } else {
this.common.presentAlert(this.ts.trPK('worklist', 'empty-comment')); this.common.presentAlert(this.ts.trPK('worklist', 'empty-comment'));
@ -315,6 +371,7 @@ export class WorkListMainItgComponent implements OnInit {
} }
confirmMsg(action) { confirmMsg(action) {
console.log("confirmMsg");
if (action === 1) { if (action === 1) {
return this.ts.trPK('worklist', 'approveMsg'); return this.ts.trPK('worklist', 'approveMsg');
} }

@ -10,9 +10,9 @@
<ion-content > <ion-content >
<div *ngIf="!messageSuccess"> <div *ngIf="!messageSuccess">
<div class="tipsPadding boldTxtNav"> <!-- <div [hidden]="!RFCEmployeeListListRes > 0" class="boldTxtNav">
{{'replacementRoll , msgRFC' | translate}} {{'replacementRoll , msgRFC' | translate}}
</div> </div> -->
<!-- <ion-list (ionChange)="radioChecked($event)" radio-group> <!-- <ion-list (ionChange)="radioChecked($event)" radio-group>
<ion-item *ngFor="let rfcEmployeeList of RFCEmployeeListListRes; let i = index;"> <ion-item *ngFor="let rfcEmployeeList of RFCEmployeeListListRes; let i = index;">
<ion-label>{{rfcEmployeeList.EMPLOYEE_DISPLAY_NAME}}</ion-label> <ion-label>{{rfcEmployeeList.EMPLOYEE_DISPLAY_NAME}}</ion-label>
@ -23,7 +23,9 @@
<div class="noDataDiv" *ngIf="!RFCEmployeeListListRes">
<p>{{ 'worklistMain, no-employee-available' | translate}}</p>
</div>
<ion-item lines="none"> <ion-item lines="none">
<div class="square-container"> <div class="square-container">

@ -36,8 +36,9 @@
<div *ngIf="pInformation && pInformation != '' " class="tipsPadding">{{pInformation}}</div>
<ng-container *ngIf="activeSegment === 'info'"> <ng-container *ngIf="activeSegment === 'info'">
<div *ngIf="pInformation && pInformation != '' " class="tipsPadding">{{pInformation}}</div>
<div *ngIf="notificationBodyRes?.length > 0 "> <div *ngIf="notificationBodyRes?.length > 0 ">
<ion-card *ngFor="let item of notificationBodyRes;let i=index; "> <ion-card *ngFor="let item of notificationBodyRes;let i=index; ">
@ -71,7 +72,7 @@
<div style="margin: 10px; " *ngIf="subordinatesleaveList != undefined && subordinatesleaveList?.length > 0"> <div style="margin: 10px; " *ngIf="subordinatesleaveList != undefined && subordinatesleaveList?.length > 0">
Employee will also on leave </div> {{ts.trPK('worklistMain','employee-on-leave')}} </div>
<ion-item lines="none" class="subOrdinateList" *ngFor="let List of subordinatesleaveList;"> <ion-item lines="none" class="subOrdinateList" *ngFor="let List of subordinatesleaveList;">
@ -102,12 +103,12 @@
<ion-row class="subOrdinateRow"> <ion-row class="subOrdinateRow">
<ion-col> <ion-col>
<label class="label" for="">From</label><br /> <label class="label" for=""> {{ts.trPK('worklistMain','from')}}</label><br />
<label class="label" for="">{{List.DATE_START |date}}</label> <label class="label" for="">{{List.DATE_START |date}}</label>
</ion-col> </ion-col>
<ion-col> <ion-col>
<label class="label" for="">To</label><br /> <label class="label" for="">{{ts.trPK('worklistMain','to')}}</label><br />
<label class="label" for="">{{List.DATE_END | date}}</label> <label class="label" for="">{{List.DATE_END | date}}</label>
</ion-col> </ion-col>
</ion-row> </ion-row>
@ -240,7 +241,7 @@
</ion-card-header> --> </ion-card-header> -->
<ion-card-content> <ion-card-content>
<div style="font-weight: bold;" class="hrTitle">Employee Detail</div> <div style="font-weight: bold;" class="hrTitle"> {{'userProfile, emp-detail' | translate}}</div>
<div *ngFor="let submitterInfo of submitterInfoRes"> <div *ngFor="let submitterInfo of submitterInfoRes">
<ion-row class="rowBorder submitterInfo"> <ion-row class="rowBorder submitterInfo">

@ -1,11 +1,4 @@
.tipsPadding{
padding: 10px 10px;
border-radius: 10px;
margin: 10px;
border: 2px solid #e4e5e7;
color: var(--customnavy);
}
.actionBtn{ .actionBtn{

@ -3,6 +3,7 @@
<!-- <ion-buttons slot="start"> <!-- <ion-buttons slot="start">
<ion-back-button color="light" class="btnBack" defaultHref="/home"></ion-back-button> <ion-back-button color="light" class="btnBack" defaultHref="/home"></ion-back-button>
</ion-buttons> --> </ion-buttons> -->
<ion-title color="light" > {{ts.trPK('userProfile','changepicture')}}</ion-title> <ion-title color="light" > {{ts.trPK('userProfile','changepicture')}}</ion-title>
<ion-buttons slot="start"> <ion-buttons slot="start">
<nav-buttons></nav-buttons> <nav-buttons></nav-buttons>

@ -45,7 +45,7 @@ export class TimeInput extends UiElement {
const template = const template =
"<ion-item class='dynamicField' style='" + this.hidden + "'>" + "<ion-item class='dynamicField' style='" + this.hidden + "'>" +
" <ion-label position='floating' style='font-size: medium !important;' class='dynamiclable-float " + requiredClass + "' id='title' >" + this.label + "</ion-label>" + " <ion-label position='floating' style='font-size: medium !important;' class='dynamiclable-float " + requiredClass + "' id='title' >" + this.label + "</ion-label>" +
"<ion-datetime display-format='h:mm' picker-format='h:mm' class='onic-date' value='" + this.value + "' done-text='" + doneText + "' cancel-text='" + cancelText + "' id='" + this.elementId + "' data-dtvalue='" + this.value + "' " + this.disabled + " ></ion-datetime>" + "<ion-datetime display-format='HH:mm' picker-format='HH:mm' class='onic-date' value='" + this.value + "' done-text='" + doneText + "' cancel-text='" + cancelText + "' id='" + this.elementId + "' data-dtvalue='" + this.value + "' " + this.disabled + " ></ion-datetime>" +
"</ion-item>" "</ion-item>"
return template; return template;
} }

@ -41,13 +41,15 @@
</ion-item> </ion-item>
<ion-item class="requiredItem"> <ion-item class="requiredItem">
<ion-label class="label">{{'vacation-rule, start-date' | translate}}</ion-label> <ion-label class="label">{{'vacation-rule, start-date' | translate}}</ion-label>
<ion-datetime [(ngModel)]="Sdate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A" <ion-datetime [(ngModel)]="Sdate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A"
placeholder="MM/DD/YYYY hh:mm:ss A" required></ion-datetime> placeholder="MM/DD/YYYY hh:mm:ss A" required cancelText="{{ts.trPK('general','cancel')}}"
doneText="{{ts.trPK('general','done')}}"></ion-datetime>
</ion-item> </ion-item>
<ion-item class="requiredItem"> <ion-item class="requiredItem">
<ion-label class="label">{{'vacation-rule, end-date' | translate}}</ion-label> <ion-label class="label">{{'vacation-rule, end-date' | translate}}</ion-label>
<ion-datetime [(ngModel)]="Edate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A" <ion-datetime [(ngModel)]="Edate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A"
placeholder="MM/DD/YYYY hh:mm:ss A" required></ion-datetime> placeholder="MM/DD/YYYY hh:mm:ss A" required cancelText="{{ts.trPK('general','cancel')}}"
doneText="{{ts.trPK('general','done')}}"></ion-datetime>
</ion-item> </ion-item>
<ion-item lines="none" class="requiredItem"> <ion-item lines="none" class="requiredItem">
<ion-label>{{'vacation-rule, message-label' | translate}}</ion-label> <ion-label>{{'vacation-rule, message-label' | translate}}</ion-label>

@ -118,12 +118,14 @@
<ion-item class="requiredItem selectItem"> <ion-item class="requiredItem selectItem">
<ion-label class="label">{{'vacation-rule, start-date' | translate}}</ion-label> <ion-label class="label">{{'vacation-rule, start-date' | translate}}</ion-label>
<ion-datetime [(ngModel)]="Sdate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A" <ion-datetime [(ngModel)]="Sdate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A"
placeholder="MM/DD/YYYY hh:mm:ss A" required></ion-datetime> placeholder="MM/DD/YYYY hh:mm:ss A" required cancelText="{{ts.trPK('general','cancel')}}"
doneText="{{ts.trPK('general','done')}}"></ion-datetime>
</ion-item> </ion-item>
<ion-item class="requiredItem selectItem"> <ion-item class="requiredItem selectItem">
<ion-label class="label">{{'vacation-rule, end-date' | translate}}</ion-label> <ion-label class="label">{{'vacation-rule, end-date' | translate}}</ion-label>
<ion-datetime [(ngModel)]="Edate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A" <ion-datetime [(ngModel)]="Edate" min="1900" max="2100" displayFormat="MM/DD/YYYY hh:mm:ss A"
placeholder="MM/DD/YYYY hh:mm:ss A" required></ion-datetime> placeholder="MM/DD/YYYY hh:mm:ss A" required cancelText="{{ts.trPK('general','cancel')}}"
doneText="{{ts.trPK('general','done')}}"></ion-datetime>
</ion-item> </ion-item>
<ion-item lines="none" class="requiredItem selectItem"> <ion-item lines="none" class="requiredItem selectItem">
<ion-label>{{'vacation-rule, message-label' | translate}}</ion-label> <ion-label>{{'vacation-rule, message-label' | translate}}</ion-label>

@ -161,10 +161,14 @@
"en": "Verify its you", "en": "Verify its you",
"ar": "Verify its you" "ar": "Verify its you"
}, },
"check-user-text1":{ "check-user-place-holder":{
"en":"Employee ID", "en":"Employee ID",
"ar":"رقم الموظف " "ar":"رقم الموظف "
}, },
"check-user-text1": {
"en": "Please Enter your Employee ID, A ",
"ar": "يرجى ادخال رقم الموظف "
},
"check-user-text2": { "check-user-text2": {
"en": "login Code ", "en": "login Code ",
"ar": "رمز تسجيل الدخول" "ar": "رمز تسجيل الدخول"
@ -225,6 +229,11 @@
"en": " The connection timeout expired due to an error in the network or servers may be busy!", "en": " The connection timeout expired due to an error in the network or servers may be busy!",
"ar": " انتهت مهلة الاتصال بسبب خطأ في الشبكة أو الخوادم قد تكون مشغولة!" "ar": " انتهت مهلة الاتصال بسبب خطأ في الشبكة أو الخوادم قد تكون مشغولة!"
}, },
"error-itg": {
"en": "Dear, this service is not available now, please try again later",
"ar": " هذه الخدمة غير متاحة الآن ، يرجى المحاولة مرة أخرى في وقت لاحق"
},
"details": { "details": {
"en": "Details", "en": "Details",
"ar": "التفاصيل" "ar": "التفاصيل"
@ -253,10 +262,22 @@
"en": "Cancel", "en": "Cancel",
"ar": "إلغاء" "ar": "إلغاء"
}, },
"takePhoto": {
"en": "Take Photo",
"ar": "أخذ صورة"
},
"Choose-from-Library": {
"en": "Choose from Library",
"ar": " الإختيار من قائمة الصور"
},
"done": { "done": {
"en": "Done", "en": "Done",
"ar": "تم" "ar": "تم"
}, },
"moreAction": {
"en": "More Action",
"ar": "المزيد"
},
"close": { "close": {
"en": "Close", "en": "Close",
"ar": "إغلق" "ar": "إغلق"
@ -998,7 +1019,7 @@
}, },
"changepicture": { "changepicture": {
"en": "Change Picture", "en": "Change Picture",
"ar": "تغيير الصوره" "ar": "تغيير الصورة"
}, },
"empNo": { "empNo": {
"en": "Employee Number", "en": "Employee Number",
@ -1938,6 +1959,10 @@
} }
}, },
"worklistMain": { "worklistMain": {
"no-employee-available": {
"en": "No employees available to return for correction",
"ar": "لا يوجد موظفون متاحون للعودة للتصحيح"
},
"more": { "more": {
"en": "More", "en": "More",
"ar": "المزيد" "ar": "المزيد"
@ -1974,6 +1999,10 @@
"en": "Employee Information", "en": "Employee Information",
"ar": "معلومات الموظف" "ar": "معلومات الموظف"
}, },
"employee-on-leave": {
"en": "Employee will also on leave",
"ar": "الموظف سوف يكون في اجازة ايضا"
},
"info": { "info": {
"en": "Info", "en": "Info",
"ar": "تفاصيل" "ar": "تفاصيل"

@ -494,6 +494,17 @@ left: 66px;
.less { .less {
max-height: 54px; max-height: 54px;
} }
.tipsPadding{
padding: 10px 10px;
border-radius: 10px;
margin: 10px;
border: 2px solid #e4e5e7;
color: var(--darkblue);
background: white;
font-weight: bold;
text-align: justify;
}
.noDataDiv{ .noDataDiv{
background: #ffffff; background: #ffffff;

Loading…
Cancel
Save