diff --git a/Mohem/src/app/authentication/sms-page/sms-page.page.ts b/Mohem/src/app/authentication/sms-page/sms-page.page.ts index f3ef1889..631dcd70 100644 --- a/Mohem/src/app/authentication/sms-page/sms-page.page.ts +++ b/Mohem/src/app/authentication/sms-page/sms-page.page.ts @@ -1,516 +1,246 @@ -import { Component, OnInit } from "@angular/core"; - -import { ElementRef } from "@angular/core"; - -import { NavController, Platform } from "@ionic/angular"; - -import { TranslatorService } from "src/app/hmg-common/services/translator/translator.service"; - -import { CommonService } from "src/app/hmg-common/services/common/common.service"; - -import { SharedDataService } from "src/app/hmg-common/services/shared-data-service/shared-data.service"; - -import { SMSCheckRequest } from "src/app/hmg-common/services/authentication/models/smscheck.request"; - -import { LoginModel } from "../models/LoginModel"; - -import { AuthenticationService } from "src/app/hmg-common/services/authentication/authentication.service"; - -import { SMSCheckResponse } from "src/app/hmg-common/services/authentication/models/smscheck.response"; - -import { Password } from "../models/password"; - +import { Component, OnInit } from '@angular/core'; +import { ElementRef } from '@angular/core'; +import { NavController, Platform } from '@ionic/angular'; +import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service'; +import { CommonService } from 'src/app/hmg-common/services/common/common.service'; +import { SharedDataService } from 'src/app/hmg-common/services/shared-data-service/shared-data.service'; +import { SMSCheckRequest } from 'src/app/hmg-common/services/authentication/models/smscheck.request'; +import { LoginModel } from '../models/LoginModel'; +import { AuthenticationService } from 'src/app/hmg-common/services/authentication/authentication.service'; +import { SMSCheckResponse } from 'src/app/hmg-common/services/authentication/models/smscheck.response'; +import { Password } from '../models/password'; import { GetLoginInfoRequest } from 'src/app/hmg-common/services/authentication/models/get-login-info.request'; -import * as moment from "moment"; - - +import * as moment from 'moment'; @Component({ - - selector: "app-sms-page", - - templateUrl: "./sms-page.page.html", - - styleUrls: ["./sms-page.page.scss"] - + selector: 'app-sms-page', + templateUrl: './sms-page.page.html', + styleUrls: ['./sms-page.page.scss'] }) export class SmsPageComponent implements OnInit { - - public static LOGIN_DATA = "LOGIN_DATA"; - - Channel: number = 0; - + public static LOGIN_DATA = 'LOGIN_DATA'; + Channel = 0; activationCode: string; - P_SESSION_ID: number; - P_USER_NAME: string; - timeInSeconds: any; - time: any; - runTimer: any; - hasStarted: any; - hasFinished: any; - remainingTime: any; - displayTime: any; - loginTokenID: string; - - public isForgetPwd: boolean = false; - - public isExpiredPwd: boolean = false; - - public count: number = 0; - + public isForgetPwd = false; + public isExpiredPwd = false; + public count = 0; private loginData = new LoginModel(); - - public deviceToken:any; - - public loginTypeData:any; - - public logo = "assets/icon/login/password.png"; - + public deviceToken: any; + public loginTypeData: any; + public logo = 'assets/icon/login/password.png'; + // tslint:disable-next-line: variable-name public smc_code: any = []; code: any; + // tslint:disable-next-line: variable-name user_name: string; + public isPostNoLoad = true; loginType: any; activeType: any; constructor( - public navCtrl: NavController, - public translate: TranslatorService, - public common: CommonService, - private elementRef: ElementRef, - public authService: AuthenticationService, - public sharedData: SharedDataService, - public platform: Platform, - - - ) {} - - ngOnInit() { this.activeType=this.common.getActiveTypeLogin(); console.log("activeType :"+this.activeType); this.count = 0; - this.initTimer(); - this.startTimer(); - - this.isForgetPwd = - - this.sharedData.getSharedData(Password.IS_FORGET_PSW) || false; - - this.isExpiredPwd = - - this.sharedData.getSharedData(Password.IS_EXPIRED_PSW) || false; - - this.loginData= this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false); - - console.log("loginData : "+ this.loginData); - // this.loginType=this.loginTypeData.loginType; - this.deviceToken= this.common.sharedService.getSharedData(AuthenticationService.DEVICE_TOKEN, false); - - if(this.deviceToken == undefined){ - - this.deviceToken = localStorage.getItem("deviceToken"); - - - - } - - console.log("deviceToken :"+this.deviceToken); - - this.loginTypeData= this.common.sharedService.getSharedData(SMSCheckRequest.SHARED_DATA, false); - if( this.loginTypeData){ - this.loginType=this.loginTypeData.loginType; - - console.log("loginType :"+this.loginTypeData.loginType); - }else{ - this.loginType=1; - } - - - - + this.isForgetPwd = this.sharedData.getSharedData(Password.IS_FORGET_PSW) || false; + this.isExpiredPwd = this.sharedData.getSharedData(Password.IS_EXPIRED_PSW) || false; + this.loginData = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false); + this.deviceToken = this.common.sharedService.getSharedData(AuthenticationService.DEVICE_TOKEN, false); + // tslint:disable-next-line: triple-equals + if (this.deviceToken == undefined) { + this.deviceToken = localStorage.getItem('deviceToken'); + } + console.log('deviceToken :' + this.deviceToken); + this.loginTypeData = this.common.sharedService.getSharedData(SMSCheckRequest.SHARED_DATA, false); + if( this.loginTypeData){ + this.loginType=this.loginTypeData.loginType; + + console.log("loginType :"+this.loginTypeData.loginType); + }else{ + this.loginType=1; + } } - - initTimer() { - - // Pomodoro is usually for 25 minutes - if (!this.timeInSeconds) { - this.timeInSeconds = 600; - } - - - this.time = this.timeInSeconds; - this.runTimer = false; - this.hasStarted = false; - this.hasFinished = false; - this.remainingTime = this.timeInSeconds; - - - this.displayTime = this.common.getSecondsAsDigitalClock(this.remainingTime); - } - - startTimer() { - this.runTimer = true; - this.hasStarted = true; - this.timerTick(); - } - - pauseTimer() { - this.runTimer = false; - } - - resumeTimer() { - this.startTimer(); - } - - timerTick() { - setTimeout(() => { - if (!this.runTimer) { - return; - } - this.remainingTime--; - - this.displayTime = this.common.getSecondsAsDigitalClock( - - this.remainingTime - - ); - + this.displayTime = this.common.getSecondsAsDigitalClock(this.remainingTime); if (this.remainingTime > 0) { - this.timerTick(); - } else { - this.hasFinished = true; - this.pauseTimer(); - this.navCtrl.pop(); - } - }, 1000); - } - - ionViewWillLeave() { - this.pauseTimer(); - } - - - checkOTPLength(){ - - console.log(this.activationCode.length); - - if(this.activationCode.length==4){ - + checkOTPLength() { + // tslint:disable-next-line: triple-equals + if (this.activationCode.length == 4) { this.checkVerificationCode(); - } - } checkVerificationCode() { - this.code=this.smc_code.join(''); - + this.code = this.smc_code.join(''); if (this.count < 3) { - - if ( - - this.code == undefined || - - this.code == null || - - this.code == "" - - ) { - + // tslint:disable-next-line: triple-equals + if (this.code == undefined || this.code == null || this.code == '') { // this.common.showAlert(this.translate.translate('verificationcode.emptyCode')); - } else { - this.count = this.count + 1; - if (this.isForgetPwd || this.isExpiredPwd) { - this.checkForgetPwdSMS(); - } else { - console.log("checkSMS"); this.checkSMS(); - } - } - } else { - - let msg: string = this.translate.trPK("general", "noOfTriesLogin"); - - this.common.JustAlertDialog(this.translate.trPK("general", "ok"), msg); - + const msg: string = this.translate.trPK('general', 'noOfTriesLogin'); + this.common.JustAlertDialog(this.translate.trPK('general', 'ok'), msg); } - } - - public checkSMS() { - - // alert("checkSMS in page") - console.log("code" + this.code); - const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false); - - const request = new SMSCheckRequest(); - - - - request.LogInTokenID = data.LogInTokenID; - - request.activationCode = this.code; //code;this.activationCode; - - request.P_USER_NAME = data.P_USER_NAME; - - request.MobileNumber = data.MobileNumber; - - - - this.authService - - .checkSMS(request, () => {}, this.translate.trPK("general", "ok")) - - .subscribe((result: SMSCheckResponse) => { - - console.log(result); - + const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false); + const request = new SMSCheckRequest(); + request.LogInTokenID = data.LogInTokenID; + request.activationCode = this.code; // code;this.activationCode; + request.P_USER_NAME = data.P_USER_NAME; + request.MobileNumber = data.MobileNumber; + this.authService.checkSMS(request, () => {}, this.translate.trPK('general', 'ok')).subscribe((result: SMSCheckResponse) => { if (this.common.validResponse(result)) { - - AuthenticationService.servicePrivilage=result.Privilege_List; - + AuthenticationService.servicePrivilage = result.Privilege_List; this.authService.setAuthenticatedUser(result).subscribe(() => { - - //call insert Mobile Login - console.log("insert"); - localStorage.setItem("emp-name",result.MemberInformationList[0].EMPLOYEE_NAME); - console.log("empnmae: "+ localStorage.getItem("emp-name")); - // localStorage.setItem("login-at", new Date().toISOString()); - this.user_name=result.MemberInformationList[0].EMPLOYEE_NAME; - - //get date and time of last login - let currDateTime = moment().format('MMM DD , YYYY HH:mm') - localStorage.setItem("login-at",currDateTime); - - if (this.platform.is("cordova")) { - // localStorage.setItem("full-name", result.P_USER_NAME); - + localStorage.setItem('emp-name', result.MemberInformationList[0].EMPLOYEE_NAME); + this.user_name = result.MemberInformationList[0].EMPLOYEE_NAME; + const currDateTime = moment().format('MMM DD , YYYY HH:mm'); + localStorage.setItem('login-at', currDateTime); + if (this.platform.is('cordova')) { this.insertMobileLogin(); - } - this.common.openHome(); - - - }); - } - }); - } - - - public insertMobileLogin(){ - - console.log("loginData" + this.loginData); - - let request = new GetLoginInfoRequest(); - + public insertMobileLogin() { + const request = new GetLoginInfoRequest(); this.authService.setPublicFields(request); - request.MobileNumber = this.loginData.MobileNumber; - - request.P_USER_NAME=this.loginData.P_USER_NAME; - - request.UserName=this.loginData.P_USER_NAME; - - request.LogInTokenID =this.loginData.LogInTokenID; - - request.CompanyID =1;//CompanyID - - request.DeviceType= this.common.getDeviceType(); - - request.DeviceToken=this.deviceToken;//"5ca8a69cf1804db55264c349edffb99b9d63acd9fa9b6b18956bcb2ad3f2ba36";//this.deviceToken; - - request.LoginType=this.loginTypeData.loginType; - - request.EmployeeName=this.user_name; - - this.authService - - .insertMobileLoginInfo( - - request, - - () => { }, - - this.translate.trPK("general", "ok") - - ) - - .subscribe((result: any) => { - - - - - - }); - + request.P_USER_NAME = this.loginData.P_USER_NAME; + request.UserName = this.loginData.P_USER_NAME; + request.LogInTokenID = this.loginData.LogInTokenID; + request.CompanyID = 1; // CompanyID + request.DeviceType = this.common.getDeviceType(); + request.DeviceToken = this.deviceToken; // "5ca8a69cf1804db55264c349edffb99b9d63acd9fa9b6b18956bcb2ad3f2ba36";//this.deviceToken; + request.LoginType = this.loginTypeData.loginType; + request.EmployeeName = this.user_name; + this.authService.insertMobileLoginInfo(request, () => { }, this.translate.trPK('general', 'ok'), this.isPostNoLoad) + .subscribe((result: any) => { + console.log('successful insertMobileLogin' ); + }); } - - public checkForgetPwdSMS() { - const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false); - const request = new SMSCheckRequest(); - - - request.LogInTokenID = data.LogInTokenID; - - request.activationCode =this.code;// this.activationCode; - + request.activationCode = this.code; // this.activationCode; request.P_USER_NAME = data.P_USER_NAME; - - console.log(data.LogInTokenID); - - console.log(data.P_USER_NAME); - - - - this.authService - - .checkForgetSMS(request, () => {}, this.translate.trPK("general", "ok")) - - .subscribe((result: SMSCheckResponse) => { - - console.log(result); - + this.authService.checkForgetSMS(request, () => {}, this.translate.trPK('general', 'ok')).subscribe((result: SMSCheckResponse) => { if (this.common.validResponse(result)) { - - console.log(result); - if (this.isForgetPwd) { - this.common.openForgotPassword(); - - } - - if(this.isExpiredPwd) { - - this.sharedData.setSharedData(true,Password.IS_EXPIRED_PSW); - + } + if (this.isExpiredPwd) { + this.sharedData.setSharedData(true, Password.IS_EXPIRED_PSW); this.common.openChangePassword(); - } - } - }); - } + onChange() { - const filtered = this.smc_code.filter(function (el) { + // tslint:disable-next-line: only-arrow-functions + const filtered = this.smc_code.filter(function(el) { if (el) { return el; } }); if (filtered.length === 4) { - //this.validate(); - console.log("validate"); this.checkVerificationCode(); } } goToNextInput(e) { - // let value = e.target.value; - // if (value.length === 1) { const key = e.which; const t = e.target; - let sib = t.nextElementSibling; - let sibPre =t.previousElementSibling; + const sib = t.nextElementSibling; + const sibPre = t.previousElementSibling; if (key !== 9 && (key < 48 || key > 57)) { if (key === 8 || key === 46) { - - - return true; } else { e.preventDefault(); @@ -521,22 +251,13 @@ export class SmsPageComponent implements OnInit { if (key === 9) { return true; } + if (sib) { - //sib = document.querySelector('input'); - if (e.target.value ==="") { - sibPre.setFocus()} - else{ + if (e.target.value === '') { + sibPre.setFocus(); + } else { sib.setFocus(); - } } } - // } else { - // e.target.value = value.substring(0, value.length - 1); - // } - - - - - - -} \ No newline at end of file + } +} diff --git a/Mohem/src/app/hmg-common/services/authentication/authentication.service.ts b/Mohem/src/app/hmg-common/services/authentication/authentication.service.ts index d418cfc5..9c2bcca4 100644 --- a/Mohem/src/app/hmg-common/services/authentication/authentication.service.ts +++ b/Mohem/src/app/hmg-common/services/authentication/authentication.service.ts @@ -555,10 +555,14 @@ export class AuthenticationService { - public insertMobileLoginInfo(request: GetLoginInfoRequest,onError: any, errorLabel: string): Observable { + // tslint:disable-next-line: max-line-length + public insertMobileLoginInfo(request: GetLoginInfoRequest, onError: any, errorLabel: string, isPostNoLoad = false): Observable { this.authenticateRequest(request); - - return this.con.post(AuthenticationService.insertMobileLoginInfo,request,onError,errorLabel); + if (isPostNoLoad) { + return this.con.postNoLoad(AuthenticationService.insertMobileLoginInfo, request, onError, errorLabel); + } else { + return this.con.post(AuthenticationService.insertMobileLoginInfo, request, onError, errorLabel); + } }