Autologin Implementation : ps
This commit is contained in:
parent
d3f1b28d77
commit
1635c48336
Binary file not shown.
@ -42,6 +42,7 @@ import { AwsService } from './AwsService/aws.service';
|
||||
import { TokenInterceptor } from './_guard/token.interceptor';
|
||||
import { NewPasswordDialog, ForgotPass } from './session/login/login.component';
|
||||
import { NewPasswordDialog2,ForgotPass2 } from './session/otp/otp.component';
|
||||
import { AutoLoginComponent } from './session/auto-login/auto-login.component';
|
||||
import { AuthGuard } from './_guard/auth.guard';
|
||||
import { RoleMenuItemsPipe } from './layouts/role-menu-items.pipe';
|
||||
import { ResizableModule } from 'angular-resizable-element';
|
||||
@ -76,8 +77,8 @@ export function createTranslateLoader(http: HttpClient) {
|
||||
AuthLayoutComponent,
|
||||
NewPasswordDialog,ForgotPass,NewPasswordDialog2,ForgotPass2,ChangePasswordDialog, RoleMenuItemsPipe,
|
||||
HttpLoaderComponent,
|
||||
DialogOverviewExampleDialog,OtpComponent
|
||||
|
||||
DialogOverviewExampleDialog,OtpComponent,
|
||||
AutoLoginComponent
|
||||
],
|
||||
imports: [
|
||||
BrowserModule,
|
||||
|
||||
@ -4,6 +4,7 @@ import { AdminLayoutComponent } from './layouts/admin/admin-layout.component';
|
||||
import { AuthLayoutComponent } from './layouts/auth/auth-layout.component';
|
||||
import { CognitoService} from './AwsService/cognito.service';
|
||||
import { AuthGuard } from './_guard/auth.guard';
|
||||
import { AutoLoginComponent } from './session/auto-login/auto-login.component';
|
||||
// import { SalesPdComponent } from './sales-pd/sales-pd.component';
|
||||
// let role = localStorage.g('user_role');
|
||||
// console.log(role)
|
||||
@ -76,4 +77,4 @@ export const AppRoutes: Routes = [{
|
||||
}, {
|
||||
path: '**',
|
||||
redirectTo: 'session/404'
|
||||
}];
|
||||
}, { path: 'auto', component: AutoLoginComponent }];
|
||||
|
||||
@ -727,6 +727,10 @@ export class AddPdComponent implements OnInit, OnDestroy {
|
||||
submitPdDetails(formValue: any, status: string) {
|
||||
// console.log('inside the submitPdDetails data');
|
||||
|
||||
|
||||
let login_type_id = parseInt(localStorage.getItem('login_type_id')); // 1 na auto-login , 0 na manual-login
|
||||
let user_id = (login_type_id == 1) ? localStorage.getItem('officer_id') : this._aws.getlocale() ;
|
||||
|
||||
if (this._PDtriggerForm.invalid) {
|
||||
// let validate = this.findInvalidControls();
|
||||
// console.log('validate checking',validate);
|
||||
@ -801,7 +805,7 @@ export class AddPdComponent implements OnInit, OnDestroy {
|
||||
"other_pincode": formValue.addresses[0].other_pincode,
|
||||
"remarks": formValue.remarks,
|
||||
"pd_status": status,
|
||||
"fk_createdby": this._aws.getlocale(),
|
||||
"fk_createdby": user_id,
|
||||
"excel_file_id":this.excel_file_id
|
||||
};
|
||||
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
margin-top: -5px;
|
||||
display: block;
|
||||
}
|
||||
:host /deep/ {
|
||||
::ng-deep {
|
||||
mat-sidenav {
|
||||
max-width: 400px;
|
||||
max-height: 500px;
|
||||
|
||||
@ -555,8 +555,16 @@ export class PdTrigerService {
|
||||
}
|
||||
getSalesPd(): Observable<any> {
|
||||
var lender_id= localStorage.getItem('LocalSetEntity')
|
||||
let user_role_id = localStorage.getItem('LenderRoleID')
|
||||
let user_id = this._aws.getlocale()
|
||||
let user_role_id :any;
|
||||
let user_id:any;
|
||||
let login_type_id = parseInt(localStorage.getItem('login_type_id')); // 1 na auto-login , 0 na manual-login
|
||||
if(login_type_id == 1){
|
||||
user_role_id = localStorage.getItem('user_role');
|
||||
user_id = localStorage.getItem('officer_id');
|
||||
}else{
|
||||
user_role_id = localStorage.getItem('LenderRoleID');
|
||||
user_id = this._aws.getlocale();
|
||||
}
|
||||
// console.log('555',value);
|
||||
return this._http.get<any[]>(this.apiUrl + `listSalesPD/${lender_id}/${user_id}/${user_role_id}`)
|
||||
.pipe(
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
margin-top: -5px;
|
||||
display: block;
|
||||
}
|
||||
:host /deep/ {
|
||||
:ng-deep{
|
||||
mat-sidenav {
|
||||
max-width: 400px;
|
||||
max-height: 500px;
|
||||
|
||||
@ -329,12 +329,14 @@ current_section:any;
|
||||
|
||||
// console.log("Api Stauts ",this.networkProvider.getCurrentNetworkStatus())
|
||||
let det:any=localStorage.getItem('user_details')
|
||||
let login_type_id = parseInt(localStorage.getItem('login_type_id')); // 1 na auto-login , 0 na manual-login
|
||||
let user_id = (login_type_id == 0) ? localStorage.getItem('officer_id') : det.userid ;
|
||||
det=JSON.parse(det)
|
||||
let params = {'fk_entity_id':det.fk_entity_id,userid:det.userid}
|
||||
// if(this.networkProvider.getCurrentNetworkStatus() == ConnectionStatus.online) {
|
||||
let complete_url = this.apiUrl+'listSalesPD/'+det.fk_entity_id
|
||||
if(is_sales_login) {
|
||||
complete_url = complete_url+'/'+det.userid+'/'+det.user_role
|
||||
complete_url = complete_url+'/'+user_id+'/'+det.user_role
|
||||
}
|
||||
return this.http.get(complete_url).map(res=>{
|
||||
// this.ionicStorageProvider.checkAndInsertApiDataLocally(res,params,'listSalesPD');
|
||||
|
||||
@ -44,7 +44,8 @@ export class AdvanceFilterComponent implements OnInit {
|
||||
ngOnInit() {
|
||||
let local:any = JSON.parse(localStorage.getItem('user_details'));
|
||||
let entity_id=localStorage.getItem('LocalSetEntity');
|
||||
let user_id = this._aws.getlocale();
|
||||
let login_type_id=parseInt(localStorage.getItem('login_type_id')); // 0 means normal 1 means auto
|
||||
let user_id = ((login_type_id == 0) ? this._aws.getlocale() : localStorage.getItem('officer_id'));
|
||||
// 'drop_down_datas':this.filter_drop_down_data,is_sales_login:this.is_sales_login
|
||||
this.searchForm=this._fb.group({
|
||||
pd_status:[''],
|
||||
@ -140,8 +141,10 @@ export class AdvanceFilterComponent implements OnInit {
|
||||
onReset(){
|
||||
this.searchForm.reset();
|
||||
let local:any = JSON.parse(localStorage.getItem('user_details'));
|
||||
let login_type_id=parseInt(localStorage.getItem('login_type_id')); // 0 means normal 1 means auto
|
||||
let user_id = ((login_type_id == 0) ? local.userid : localStorage.getItem('officer_id'));
|
||||
this.searchForm.controls['pd_lender'].setValue(local.fk_entity_id);
|
||||
this.searchForm.controls['sales_pd_officer_id'].setValue(local.userid);
|
||||
this.searchForm.controls['sales_pd_officer_id'].setValue(user_id);
|
||||
this.xpandStatus=false
|
||||
this.resetFilter.emit(true);
|
||||
|
||||
|
||||
@ -569,6 +569,9 @@ getCityPincode(value){
|
||||
|
||||
// console.log("Api Stauts ",this.networkProvider.getCurrentNetworkStatus())
|
||||
let det:any=localStorage.getItem('user_details')
|
||||
|
||||
let login_type_id = parseInt(localStorage.getItem('login_type_id')); // 1 na auto-login , 0 na manual-login
|
||||
let user_id = (login_type_id == 1) ? localStorage.getItem('officer_id') : det.userid ;
|
||||
console.log('494',det,localStorage.getItem('user_details'))
|
||||
det=JSON.parse(det)
|
||||
console.log('494',det)
|
||||
@ -576,7 +579,7 @@ getCityPincode(value){
|
||||
// if(this.networkProvider.getCurrentNetworkStatus() == ConnectionStatus.online) {
|
||||
let complete_url = api_url+'listSalesPD/'+det.fk_entity_id
|
||||
if(is_sales_login) {
|
||||
complete_url = complete_url+'/'+det.userid+'/'+det.user_role
|
||||
complete_url = complete_url+'/'+user_id+'/'+det.user_role
|
||||
}
|
||||
return this._http.get(complete_url).map(res=>{
|
||||
// this.ionicStorageProvider.checkAndInsertApiDataLocally(res,params,'listSalesPD');
|
||||
|
||||
@ -0,0 +1,3 @@
|
||||
<!-- <p>
|
||||
auto-login works!
|
||||
</p> -->
|
||||
89
ng6-seed/src/app/session/auto-login/auto-login.component.ts
Normal file
89
ng6-seed/src/app/session/auto-login/auto-login.component.ts
Normal file
@ -0,0 +1,89 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { Router } from "@angular/router";
|
||||
import { AwsService } from '../../AwsService/aws.service';
|
||||
import { DashboardService } from 'app/dashboard/dashboard.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-auto-login',
|
||||
templateUrl: './auto-login.component.html',
|
||||
styleUrls: ['./auto-login.component.scss']
|
||||
})
|
||||
export class AutoLoginComponent implements OnInit {
|
||||
|
||||
constructor(private router: Router,private route: ActivatedRoute,public aws: AwsService,private dashBoardService:DashboardService) { }
|
||||
|
||||
token: string;
|
||||
password: string;
|
||||
|
||||
ngOnInit(): void {
|
||||
|
||||
this.route.queryParams.subscribe(params => {
|
||||
console.log(params);
|
||||
this.token = params.token;
|
||||
console.log('encrypted token :',this.token);
|
||||
});
|
||||
// old http://localhost:4200/#/auto?token=bXdpc2VzYWxlczFAc2luZS5jb20jdGVzdDEyMzQ=
|
||||
// new http://localhost:4200/#/auto?token=TXdpc2VTYWxlc0B5YWhvby5jb20jc2luZTEyMzQjMjkzIzE5
|
||||
|
||||
// error flag redirect pannanum
|
||||
const decoded= this.decodeBase64String(this.token);
|
||||
if (decoded !== null) {
|
||||
console.log('decrypted token :', decoded);
|
||||
const splitparts = decoded.split('#');
|
||||
const mailid = splitparts[0].split(/\s/).join('');
|
||||
const password = splitparts[1].split(/\s/).join('');
|
||||
const officer_id = splitparts[2].split(/\s/).join('');
|
||||
const role_id = splitparts[3].split(/\s/).join('');
|
||||
|
||||
console.log("splited My UN :",mailid," PWD :",password, " OFF ID : ",officer_id," ROLE ID : ",role_id);
|
||||
|
||||
let auth = { 'Username': mailid, 'Password': password };
|
||||
this.aws.dologin(auth).subscribe(res => {
|
||||
console.log("Auto login",res);
|
||||
if (res !== undefined) {
|
||||
localStorage.setItem('user_role',role_id);
|
||||
localStorage.setItem('user_role_nav',role_id);
|
||||
localStorage.setItem('login_type','auto-login');
|
||||
localStorage.setItem('login_type_id','1');
|
||||
localStorage.setItem('officer_id',officer_id);
|
||||
this.router.navigate(['/sales-pd-list']);
|
||||
}
|
||||
}, err => {
|
||||
this.router.navigate(['/auto?token='+this.token]);
|
||||
console.log(err.message);
|
||||
})
|
||||
console.log("AWS getlocale = ",this.aws.getlocale());
|
||||
} else {
|
||||
// Handle the decoding error
|
||||
this.router.navigate(['/auto?token='+this.token]);
|
||||
console.log('Error occurred while decoding the string.');
|
||||
}
|
||||
return ;
|
||||
|
||||
}
|
||||
|
||||
decodeBase64String(encodedString) {
|
||||
try {
|
||||
const decodedString = atob(encodedString);
|
||||
return decodedString;
|
||||
} catch (error) {
|
||||
// Handle the error
|
||||
console.error('Failed to decode the base64 string:', error);
|
||||
|
||||
// Return a default or error value, or perform any other error handling logic
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
getCommonSettings(){
|
||||
this.dashBoardService.getCommonSettingsConfig().subscribe(res=>{
|
||||
if(res['dataStatus'] == true){
|
||||
localStorage.setItem("commonSettings",JSON.stringify(res['records']));
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -82,6 +82,8 @@ export class LoginComponent implements OnInit{
|
||||
// local storage for validate user access
|
||||
localStorage.setItem('user_role',res.idToken.payload["custom:role_id"]);
|
||||
localStorage.setItem('user_role_nav',res.idToken.payload["custom:role_id"]);
|
||||
localStorage.setItem('login_type','manual-login');
|
||||
localStorage.setItem('login_type_id','0');
|
||||
let role = localStorage.getItem('user_role');
|
||||
console.log(res.idToken.payload ["custom:role_id"],role);
|
||||
// alert(localStorage.getItem('user_role'))
|
||||
|
||||
Loading…
Reference in New Issue
Block a user