pd and qc validatiuons changes
This commit is contained in:
parent
5711cc839a
commit
db5ddea250
@ -4,7 +4,7 @@
|
|||||||
(click)="closeEditMasterComponent()"><mat-icon>close</mat-icon></button>
|
(click)="closeEditMasterComponent()"><mat-icon>close</mat-icon></button>
|
||||||
</div>
|
</div>
|
||||||
<mat-card>
|
<mat-card>
|
||||||
<form [formGroup]="_EditPDtriggerForm" (submit)="submitPdDetails(_EditPDtriggerForm.value, PDTriggerStatus)">
|
<form [formGroup]="_EditPDtriggerForm" (submit)="submitPdDetails(_EditPDtriggerForm.value, pdStatusCheck.TRIGGERED)">
|
||||||
<mat-card-content>
|
<mat-card-content>
|
||||||
<div fxLayout="row" fxLayoutWrap="wrap">
|
<div fxLayout="row" fxLayoutWrap="wrap">
|
||||||
<div class="column" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="100" fxFlex.lg="100" fxFlex.xl="100">
|
<div class="column" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="100" fxFlex.lg="100" fxFlex.xl="100">
|
||||||
@ -128,7 +128,7 @@
|
|||||||
<mat-card-actions style="text-align: right">
|
<mat-card-actions style="text-align: right">
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" matTooltip="Reset" matTooltipPosition="above" type="button"
|
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" matTooltip="Reset" matTooltipPosition="above" type="button"
|
||||||
(click)="onReset()"><mat-icon>settings_backup_restore</mat-icon></button>
|
(click)="onReset()"><mat-icon>settings_backup_restore</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" (click)="submitPdDetails(this._EditPDtriggerForm.value,draftStatus)" type="button" matTooltip="Save As Draft" matTooltipPosition="above"><mat-icon>insert_drive_file</mat-icon></button>
|
<button *ngIf="currentPDStatus==pdStatusCheck.DRAFT || currentPDStatus==pdStatusCheck.TRIGGERED" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" (click)="submitPdDetails(this._EditPDtriggerForm.value,pdStatusCheck.DRAFT)" type="button" matTooltip="Save As Draft" matTooltipPosition="above"><mat-icon>insert_drive_file</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" matTooltip="Save" matTooltipPosition="above" [disabled]="applicantLength<=0 || !_EditPDtriggerForm.valid || !enablePDButton" type="submit"><mat-icon>save</mat-icon></button>
|
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" matTooltip="Save" matTooltipPosition="above" [disabled]="applicantLength<=0 || !_EditPDtriggerForm.valid || !enablePDButton" type="submit"><mat-icon>save</mat-icon></button>
|
||||||
</mat-card-actions>
|
</mat-card-actions>
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@ -22,20 +22,32 @@ export class EditPdMasterComponent implements OnInit {
|
|||||||
pdTypeList:any;
|
pdTypeList:any;
|
||||||
billingList:any;
|
billingList:any;
|
||||||
applicantLength:number;
|
applicantLength:number;
|
||||||
draftStatus: string;
|
// draftStatus: string;
|
||||||
PDTriggerStatus: string;
|
// PDTriggerStatus: string;
|
||||||
enablePDButton: boolean
|
enablePDButton: boolean;
|
||||||
|
currentPDStatus: string;
|
||||||
public _EditPDtriggerForm:FormGroup;
|
public _EditPDtriggerForm:FormGroup;
|
||||||
public notifier: NotifierService;
|
public notifier: NotifierService;
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
constructor(private _fb: FormBuilder,
|
constructor(private _fb: FormBuilder,
|
||||||
private _pd: PdTrigerService, notifier: NotifierService,private dialogRef: MatDialogRef<EditPdMasterComponent>,
|
private _pd: PdTrigerService, notifier: NotifierService,private dialogRef: MatDialogRef<EditPdMasterComponent>,
|
||||||
@Inject(MAT_DIALOG_DATA) public data: any) {
|
@Inject(MAT_DIALOG_DATA) public data: any) {
|
||||||
this.notifier=notifier
|
this.notifier=notifier
|
||||||
|
this.currentPDStatus = data.records.pd_status;
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.draftStatus="DRAFT";
|
// this.draftStatus="DRAFT";
|
||||||
this.PDTriggerStatus="TRIGGERED";
|
// this.PDTriggerStatus="TRIGGERED";
|
||||||
this.getLenderList();
|
this.getLenderList();
|
||||||
this.getProductsList();
|
this.getProductsList();
|
||||||
this.getCustomerSegmentList();
|
this.getCustomerSegmentList();
|
||||||
@ -161,10 +173,11 @@ export class EditPdMasterComponent implements OnInit {
|
|||||||
this.billingList=this.billingList[0].billing_address;
|
this.billingList=this.billingList[0].billing_address;
|
||||||
}
|
}
|
||||||
submitPdDetails(formValue: any, status:string) {
|
submitPdDetails(formValue: any, status:string) {
|
||||||
|
let updateStatus = this.currentPDStatus == this.pdStatusCheck.DRAFT ? status : this.currentPDStatus == this.pdStatusCheck.TRIGGERED ? status : this.currentPDStatus;
|
||||||
if(this._EditPDtriggerForm.valid){
|
if(this._EditPDtriggerForm.valid){
|
||||||
let my_array = this._EditPDtriggerForm.value;
|
let my_array = this._EditPDtriggerForm.value;
|
||||||
Object.keys(my_array).forEach((key) => ( my_array[key] == null) && delete my_array[key]);
|
Object.keys(my_array).forEach((key) => ( my_array[key] == null) && delete my_array[key]);
|
||||||
this._pd.editPdMasterDetails(my_array, status).subscribe(result => {
|
this._pd.editPdMasterDetails(my_array, updateStatus).subscribe(result => {
|
||||||
if (result.status == 200) {
|
if (result.status == 200) {
|
||||||
this.notifier.notify('success', 'PD Master Updated.');
|
this.notifier.notify('success', 'PD Master Updated.');
|
||||||
this.dialogRef.close();
|
this.dialogRef.close();
|
||||||
|
|||||||
@ -18,16 +18,15 @@
|
|||||||
<ng-template mat-tab-label>All</ng-template>
|
<ng-template mat-tab-label>All</ng-template>
|
||||||
<app-all-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-all-pd>
|
<app-all-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-all-pd>
|
||||||
</mat-tab>
|
</mat-tab>
|
||||||
|
|
||||||
<mat-tab>
|
|
||||||
<ng-template mat-tab-label>In Progress </ng-template>
|
|
||||||
<app-inprogress-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-inprogress-pd>
|
|
||||||
</mat-tab>
|
|
||||||
<mat-tab>
|
<mat-tab>
|
||||||
<ng-template mat-tab-label>Scheduled </ng-template>
|
<ng-template mat-tab-label>Scheduled </ng-template>
|
||||||
<app-scheduled-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-scheduled-pd>
|
<app-scheduled-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-scheduled-pd>
|
||||||
|
|
||||||
</mat-tab>
|
</mat-tab>
|
||||||
|
<mat-tab>
|
||||||
|
<ng-template mat-tab-label>In Progress </ng-template>
|
||||||
|
<app-inprogress-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-inprogress-pd>
|
||||||
|
</mat-tab>
|
||||||
<mat-tab>
|
<mat-tab>
|
||||||
<ng-template mat-tab-label>Completed </ng-template>
|
<ng-template mat-tab-label>Completed </ng-template>
|
||||||
<app-completed-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-completed-pd>
|
<app-completed-pd [bindFilterValue]="filterValue" (loadPdView)="viewPDDetails($event)"></app-completed-pd>
|
||||||
|
|||||||
@ -71,7 +71,7 @@ export class ListPdComponent implements OnInit, OnDestroy {
|
|||||||
}
|
}
|
||||||
pdListLoad(status: boolean){
|
pdListLoad(status: boolean){
|
||||||
this.viewPdList = status;
|
this.viewPdList = status;
|
||||||
this.getTabIndex==0 ? this.allTabC.loadPDDetails() : this.getTabIndex==1 ? this.inprogressTabC.loadPDDetails() : this.getTabIndex==2 ? this.scheduledTabC.loadPDDetails() : this.getTabIndex==3 ? this.completedTabC.loadPDDetails() : this.qcCompletedTabC.loadPDDetails();
|
this.getTabIndex==0 ? this.allTabC.loadPDDetails() : this.getTabIndex==1 ? this.scheduledTabC.loadPDDetails() : this.getTabIndex==2 ? this.inprogressTabC.loadPDDetails() : this.getTabIndex==3 ? this.completedTabC.loadPDDetails() : this.qcCompletedTabC.loadPDDetails();
|
||||||
|
|
||||||
}
|
}
|
||||||
viewPDDetails(pdid:string){
|
viewPDDetails(pdid:string){
|
||||||
@ -82,7 +82,7 @@ export class ListPdComponent implements OnInit, OnDestroy {
|
|||||||
//get tab changes
|
//get tab changes
|
||||||
onTabClick(event: MatTabChangeEvent) {
|
onTabClick(event: MatTabChangeEvent) {
|
||||||
this.getTabIndex=event.index;
|
this.getTabIndex=event.index;
|
||||||
this.getTabIndex==0 ? this.allTabC.loadPDDetails() : this.getTabIndex==1 ? this.inprogressTabC.loadPDDetails() : this.getTabIndex==2 ? this.scheduledTabC.loadPDDetails() : this.getTabIndex==3 ? this.completedTabC.loadPDDetails() : this.qcCompletedTabC.loadPDDetails();
|
this.getTabIndex==0 ? this.allTabC.loadPDDetails() : this.getTabIndex==1 ? this.scheduledTabC.loadPDDetails() : this.getTabIndex==2 ? this.inprogressTabC.loadPDDetails() : this.getTabIndex==3 ? this.completedTabC.loadPDDetails() : this.qcCompletedTabC.loadPDDetails();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@
|
|||||||
<span style="font-weight:700">{{details.applicat_details[0].applicant_name}}</span> <br>
|
<span style="font-weight:700">{{details.applicat_details[0].applicant_name}}</span> <br>
|
||||||
<span style="font-size: 13px;" >{{details.lender_full_name}}({{details.lender_applicant_id}})</span><br>
|
<span style="font-size: 13px;" >{{details.lender_full_name}}({{details.lender_applicant_id}})</span><br>
|
||||||
</div>
|
</div>
|
||||||
<div fxFlex="45" style="text-align:right;">
|
<div fxFlex="45" style="text-align:right;" *ngIf="details.pd_status!=pdStatusCheck.DRAFT">
|
||||||
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 hover-icon" type="button" matTooltip="PD Allocation" matTooltipPosition="above" (click)="pdAllocationTo(details)"><mat-icon>verified_user</mat-icon></button>
|
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 hover-icon" type="button" matTooltip="PD Allocation" matTooltipPosition="above" (click)="pdAllocationTo(details)"><mat-icon>verified_user</mat-icon></button>
|
||||||
<button mat-raised-button mat-button-sm mat-icon-button class=" hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(details)"><mat-icon>schedule</mat-icon></button>
|
<button mat-raised-button mat-button-sm mat-icon-button class=" hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(details)"><mat-icon>schedule</mat-icon></button>
|
||||||
</div>
|
</div>
|
||||||
@ -42,7 +42,9 @@
|
|||||||
<span class="hover-icon"><i *ngIf="details.city_name" class="fa-1x fa fa-map-marker"> </i>{{details.city_name}}/{{details.state_name}}-{{details.pincode}}</span> <br>
|
<span class="hover-icon"><i *ngIf="details.city_name" class="fa-1x fa fa-map-marker"> </i>{{details.city_name}}/{{details.state_name}}-{{details.pincode}}</span> <br>
|
||||||
<span *ngIf="details.product_abbr">{{details.product_abbr}}/{{details.subproduct_abbr}}</span><br>
|
<span *ngIf="details.product_abbr">{{details.product_abbr}}/{{details.subproduct_abbr}}</span><br>
|
||||||
<span> {{details.customer_segment_abbr}}<span *ngIf="details.loan_amount" style="padding-left: 48%;"><i class="fa-1x fa fa-rupee"> </i>{{details.loan_amount}}</span></span><br>
|
<span> {{details.customer_segment_abbr}}<span *ngIf="details.loan_amount" style="padding-left: 48%;"><i class="fa-1x fa fa-rupee"> </i>{{details.loan_amount}}</span></span><br>
|
||||||
<span>{{details.pd_date_of_initiation}}</span>
|
<span>{{details.pd_date_of_initiation}}</span><br>
|
||||||
|
<span>{{details.pd_status}} - {{ (details.updatedon)? (details.updatedon | slice:0:10):(details.updatedon) }}</span>
|
||||||
|
|
||||||
</mat-card-content>
|
</mat-card-content>
|
||||||
</mat-card>
|
</mat-card>
|
||||||
<mat-list *ngIf="recordStatus">
|
<mat-list *ngIf="recordStatus">
|
||||||
|
|||||||
@ -35,6 +35,18 @@ public dataSource = new MatTableDataSource();
|
|||||||
@ViewChild(MatPaginator) paginator: MatPaginator;
|
@ViewChild(MatPaginator) paginator: MatPaginator;
|
||||||
@ViewChild(MatSort) sort: MatSort;
|
@ViewChild(MatSort) sort: MatSort;
|
||||||
pdList:any[] = [];
|
pdList:any[] = [];
|
||||||
|
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
|
|
||||||
constructor(notifier:NotifierService,private route: ActivatedRoute,
|
constructor(notifier:NotifierService,private route: ActivatedRoute,
|
||||||
private router: Router,private _pd: PdTrigerService,private dialog: MatDialog,private _geolocation: GetGeometricLocationService, private ListPdComponent : ListPdComponent) {
|
private router: Router,private _pd: PdTrigerService,private dialog: MatDialog,private _geolocation: GetGeometricLocationService, private ListPdComponent : ListPdComponent) {
|
||||||
this.notifier=notifier
|
this.notifier=notifier
|
||||||
@ -55,9 +67,10 @@ pdList:any[] = [];
|
|||||||
.subscribe(
|
.subscribe(
|
||||||
data => {
|
data => {
|
||||||
if (data.status == 200) {
|
if (data.status == 200) {
|
||||||
this.pdList = data.records;
|
let filterdList = data.records.filter(item=>item.pd_status!=this.pdStatusCheck.DRAFT)
|
||||||
this.pdListData = data.records;
|
this.pdList = filterdList;
|
||||||
this.dataLength = data.records.length;
|
this.pdListData = filterdList;
|
||||||
|
this.dataLength = filterdList.length;
|
||||||
this.dataSource.data = this.pdListData;
|
this.dataSource.data = this.pdListData;
|
||||||
this.getMapViewLocations(this.pdList);
|
this.getMapViewLocations(this.pdList);
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,9 @@
|
|||||||
<mat-card-content>
|
<mat-card-content>
|
||||||
<mat-sidenav-container class="app-inner background-none shadow-none mail-db">
|
<mat-sidenav-container class="app-inner background-none shadow-none mail-db">
|
||||||
<mat-sidenav #mailnav [mode]="isOver() ? 'over' : 'side'" [opened]="!isOver()" class="mail-sidebar pl-xs pr-xs">
|
<mat-sidenav #mailnav [mode]="isOver() ? 'over' : 'side'" [opened]="!isOver()" class="mail-sidebar pl-xs pr-xs">
|
||||||
<button _ngcontent-c21="" class="compose-btn mat-warn mat-raised-button mb-1" (click)="changePDStatus(PDStatus);"> <span>Complete</span></button>
|
<button _ngcontent-c21="" [disabled]="currentPDStatus !=pdStatusCheck.INPROGRESS || actualQuestions!=answeredQuestions" class="compose-btn mat-warn mat-raised-button mb-1" (click)="changePDStatus(pdStatusCheck.COMPLETED);"> <span>{{currentPDStatus==pdStatusCheck.INPROGRESS ? 'COMPLETE':currentPDStatus }}</span></button>
|
||||||
|
|
||||||
|
<!-- {{ (currentPDStatus==pdStatusCheck.INPROGRESS)? 'COMPLETE':(currentPDStatus) }} -->
|
||||||
<mat-expansion-panel *ngFor="let category of categoryList;let catIndex = index; ">
|
<mat-expansion-panel *ngFor="let category of categoryList;let catIndex = index; ">
|
||||||
<mat-expansion-panel-header>
|
<mat-expansion-panel-header>
|
||||||
<mat-panel-title class="text-xs-left">
|
<mat-panel-title class="text-xs-left">
|
||||||
@ -123,10 +125,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPrevious(optionsForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Previous" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" (click)="saveNextPrevious(optionsForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(next)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(next)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(optionsForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(optionsForm.controls,next)" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -226,10 +228,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPreviousText(textBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Previous" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" (click)="saveNextPreviousText(textBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPreviousText(textBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Save&Next" (click)="saveNextPreviousText(textBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -322,10 +324,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPrevious(checkBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltip="Save&Previous" (click)="saveNextPrevious(checkBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(checkBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Save&Next" (click)="saveNextPrevious(checkBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import { ActivatedRoute, Router } from '@angular/router';
|
|||||||
import { NotifierService } from 'angular-notifier';
|
import { NotifierService } from 'angular-notifier';
|
||||||
import { ListPdComponent } from './../list-pd.component';
|
import { ListPdComponent } from './../list-pd.component';
|
||||||
import { PdTrigerService } from '../../../pd-service/pd-triger.service';
|
import { PdTrigerService } from '../../../pd-service/pd-triger.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-start-pd',
|
selector: 'app-start-pd',
|
||||||
templateUrl: './start-pd.component.html',
|
templateUrl: './start-pd.component.html',
|
||||||
@ -12,7 +13,6 @@ import { PdTrigerService } from '../../../pd-service/pd-triger.service';
|
|||||||
export class StartPdComponent implements OnInit, OnDestroy {
|
export class StartPdComponent implements OnInit, OnDestroy {
|
||||||
private notifier: NotifierService;
|
private notifier: NotifierService;
|
||||||
public startPD:string;
|
public startPD:string;
|
||||||
public PDStatus: string;
|
|
||||||
public mainApplicantName:string;
|
public mainApplicantName:string;
|
||||||
//public remarks: string;
|
//public remarks: string;
|
||||||
errorMessage:any;
|
errorMessage:any;
|
||||||
@ -29,6 +29,19 @@ selectedQuestionIndex:number;
|
|||||||
getQuestionsLength:number;
|
getQuestionsLength:number;
|
||||||
answerList:any=[];
|
answerList:any=[];
|
||||||
ansPDList:any=[];
|
ansPDList:any=[];
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
|
currentPDStatus: string;
|
||||||
|
actualQuestions:number;
|
||||||
|
answeredQuestions :number;
|
||||||
constructor(notifier: NotifierService, private fb: FormBuilder,private route: ActivatedRoute,
|
constructor(notifier: NotifierService, private fb: FormBuilder,private route: ActivatedRoute,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private listPDComponent : ListPdComponent, private _pd: PdTrigerService,) {
|
private listPDComponent : ListPdComponent, private _pd: PdTrigerService,) {
|
||||||
@ -50,7 +63,6 @@ constructor(notifier: NotifierService, private fb: FormBuilder,private route: Ac
|
|||||||
this.loadTemplates(this.startPD);
|
this.loadTemplates(this.startPD);
|
||||||
this.next=1;
|
this.next=1;
|
||||||
this.previous=2;
|
this.previous=2;
|
||||||
this.PDStatus="COMPLETED"
|
|
||||||
}
|
}
|
||||||
isMac(): boolean {
|
isMac(): boolean {
|
||||||
let bool = false;
|
let bool = false;
|
||||||
@ -68,11 +80,17 @@ loadTemplates(startID:string){
|
|||||||
this.categoryList=data.records.question_answers;
|
this.categoryList=data.records.question_answers;
|
||||||
let filterApplicantName= data.records.pdapplicants_detials.filter(item => item.applicant_type == 1);
|
let filterApplicantName= data.records.pdapplicants_detials.filter(item => item.applicant_type == 1);
|
||||||
this.mainApplicantName = filterApplicantName[0].applicant_name;
|
this.mainApplicantName = filterApplicantName[0].applicant_name;
|
||||||
|
this.currentPDStatus = data.records.pdmaster_details.pd_status;
|
||||||
|
|
||||||
|
this.actualQuestions = data.records.counts.overall_question_count;
|
||||||
|
this.answeredQuestions = data.records.counts.overall_answered_count;
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
this.pdMasterList="";
|
this.pdMasterList="";
|
||||||
this.mainApplicantName="";
|
this.mainApplicantName="";
|
||||||
this.categoryList=[];
|
this.categoryList=[];
|
||||||
|
this.currentPDStatus="";
|
||||||
}
|
}
|
||||||
}, error => this.errorMessage = <any> error);
|
}, error => this.errorMessage = <any> error);
|
||||||
}
|
}
|
||||||
@ -110,6 +128,8 @@ loadTemplates(startID:string){
|
|||||||
if (data.status == 200) {
|
if (data.status == 200) {
|
||||||
this.answerList=data.records.answers;
|
this.answerList=data.records.answers;
|
||||||
this.ansPDList=data.records;
|
this.ansPDList=data.records;
|
||||||
|
this.actualQuestions = data.records.counts.overall_question_count,
|
||||||
|
this.answeredQuestions = data.records.counts.overall_answered_count
|
||||||
|
|
||||||
// this for options type questions
|
// this for options type questions
|
||||||
if(this.selectedCategory.fk_question_answertype==1){
|
if(this.selectedCategory.fk_question_answertype==1){
|
||||||
@ -394,6 +414,7 @@ optionsMapItems(items) {
|
|||||||
}
|
}
|
||||||
this._pd.editPdMasterDetails(update_array, status).subscribe(result => {
|
this._pd.editPdMasterDetails(update_array, status).subscribe(result => {
|
||||||
if (result.status == 200) {
|
if (result.status == 200) {
|
||||||
|
this.currentPDStatus=this.pdStatusCheck.COMPLETED;
|
||||||
this.notifier.notify('success', 'PD Completed.');
|
this.notifier.notify('success', 'PD Completed.');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@ -7,11 +7,11 @@
|
|||||||
{{master.pd_date_of_initiation}}
|
{{master.pd_date_of_initiation}}
|
||||||
</div>
|
</div>
|
||||||
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs pt-1" fxFlex="25" style="text-align:right;" >
|
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs pt-1" fxFlex="25" style="text-align:right;" >
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="above" (click)="pdAllocationTo(master)"><mat-icon>verified_user</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="above" (click)="pdAllocationTo(master)"><mat-icon>verified_user</mat-icon></button>
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(viewID)"><mat-icon>question_answer</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT && currentPDStatus!=pdStatusCheck.TRIGGERED && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(viewID)"><mat-icon>question_answer</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Close" matTooltipPosition="above" (click)="loadPdListCompoent()"><mat-icon>close</mat-icon></button>
|
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Close" matTooltipPosition="above" (click)="loadPdListCompoent()"><mat-icon>close</mat-icon></button>
|
||||||
<br><span style="color:red;text-align:center">{{master.pd_allocated_to}} -{{master.pd_status_name}}</span>
|
<br><span style="color:red;text-align:left">{{master.pd_allocated_to}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -21,7 +21,7 @@
|
|||||||
<div class="m-gap p-gap" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
<div class="m-gap p-gap" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
||||||
<!--pd master -->
|
<!--pd master -->
|
||||||
<mat-card *ngFor="let master of pdMasterData" class="minheight">
|
<mat-card *ngFor="let master of pdMasterData" class="minheight">
|
||||||
<div class="cardEdit">
|
<div class="cardEdit" *ngIf="currentPDStatus==pdStatusCheck.DRAFT || currentPDStatus==pdStatusCheck.TRIGGERED || currentPDStatus==pdStatusCheck.ALLOCATED || currentPDStatus==pdStatusCheck.SCHEDULED">
|
||||||
<!-- <button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="pdAllocationTo(master)"><mat-icon>directions_run</mat-icon></button>
|
<!-- <button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="pdAllocationTo(master)"><mat-icon>directions_run</mat-icon></button>
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
<button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
||||||
-->
|
-->
|
||||||
@ -39,7 +39,7 @@
|
|||||||
<p *ngIf="master.product_name">{{master.product_name}} / {{master.subproduct_name}}</p>
|
<p *ngIf="master.product_name">{{master.product_name}} / {{master.subproduct_name}}</p>
|
||||||
<p *ngIf="master.pd_type_name"><span>{{master.pd_type_name}}</span> / <span *ngIf="master.loan_amount" class="hover-icon"><i class="fa-1x fa fa-rupee"> </i>{{master.loan_amount}}</span></p>
|
<p *ngIf="master.pd_type_name"><span>{{master.pd_type_name}}</span> / <span *ngIf="master.loan_amount" class="hover-icon"><i class="fa-1x fa fa-rupee"> </i>{{master.loan_amount}}</span></p>
|
||||||
<p><span>{{master.addressline1}},{{master.addressline2}} ,{{master.addressline3}}</span></p>
|
<p><span>{{master.addressline1}},{{master.addressline2}} ,{{master.addressline3}}</span></p>
|
||||||
|
<p><span>{{master.pd_status}} - {{ (master.updatedon)? (master.updatedon | slice:0:10):(master.updatedon) }}</span></p>
|
||||||
</mat-card-content>
|
</mat-card-content>
|
||||||
</mat-card>
|
</mat-card>
|
||||||
|
|
||||||
@ -48,7 +48,7 @@
|
|||||||
<div fxFlex.xs="100" class="m-gap p-gap" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
<div fxFlex.xs="100" class="m-gap p-gap" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
||||||
<!-- applicant card -->
|
<!-- applicant card -->
|
||||||
<mat-card class="minheight">
|
<mat-card class="minheight">
|
||||||
<div class="cardEdit">
|
<div class="cardEdit" *ngIf="currentPDStatus==pdStatusCheck.DRAFT || currentPDStatus==pdStatusCheck.TRIGGERED || currentPDStatus==pdStatusCheck.ALLOCATED || currentPDStatus==pdStatusCheck.SCHEDULED">
|
||||||
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editPdApplicant(pdApplicantData)"><mat-icon>edit</mat-icon></button>
|
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editPdApplicant(pdApplicantData)"><mat-icon>edit</mat-icon></button>
|
||||||
</div>
|
</div>
|
||||||
<mat-card-header>
|
<mat-card-header>
|
||||||
|
|||||||
@ -29,6 +29,19 @@ export class ViewPdComponent implements OnInit, OnDestroy {
|
|||||||
viewID:string;
|
viewID:string;
|
||||||
viewParams:any;
|
viewParams:any;
|
||||||
destroyType:number=1;
|
destroyType:number=1;
|
||||||
|
currentPDStatus:string;
|
||||||
|
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
|
|
||||||
// @Input() childData: string;
|
// @Input() childData: string;
|
||||||
// @Output() loadParent = new EventEmitter<string>();
|
// @Output() loadParent = new EventEmitter<string>();
|
||||||
public _EditPDtriggerForm:FormGroup;
|
public _EditPDtriggerForm:FormGroup;
|
||||||
@ -54,6 +67,7 @@ export class ViewPdComponent implements OnInit, OnDestroy {
|
|||||||
this.pdDocumentsData=data.records.pd_documnets;
|
this.pdDocumentsData=data.records.pd_documnets;
|
||||||
this.masterPdLogsData=data.records.pd_logs.master;
|
this.masterPdLogsData=data.records.pd_logs.master;
|
||||||
//this.applicantPDLogsData= data.records.pd_logs.master;
|
//this.applicantPDLogsData= data.records.pd_logs.master;
|
||||||
|
this.currentPDStatus = data.records.pd_master_details[0].pd_status;
|
||||||
}
|
}
|
||||||
}, error => this.errorMessage = <any> error);
|
}, error => this.errorMessage = <any> error);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -83,6 +83,7 @@ const pdCustomNotifierOptions: NotifierOptions = {
|
|||||||
overlap: 150
|
overlap: 150
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
<mat-sidenav-container class="app-inner background-none shadow-none mail-db">
|
<mat-card>
|
||||||
|
<mat-card-content>
|
||||||
|
<mat-sidenav-container class="app-inner background-none shadow-none mail-db">
|
||||||
<mat-sidenav #mailnav [mode]="isOver() ? 'over' : 'side'" [opened]="!isOver()" class="mail-sidebar pl-xs pr-xs">
|
<mat-sidenav #mailnav [mode]="isOver() ? 'over' : 'side'" [opened]="!isOver()" class="mail-sidebar pl-xs pr-xs">
|
||||||
<button _ngcontent-c21="" class="compose-btn mat-warn mat-raised-button mb-1" (click)="changePDStatus(PDStatus);"> <span>QC Complete</span></button>
|
<button _ngcontent-c21="" [disabled]="currentPDStatus !=pdStatusCheck.COMPLETED || actualQuestions!=answeredQuestions" class="compose-btn mat-warn mat-raised-button mb-1" (click)="changePDStatus(pdStatusCheck.QC_COMPLETED);"> <span>{{currentPDStatus==pdStatusCheck.COMPLETED ? 'QC_COMPLETE':currentPDStatus }}</span></button>
|
||||||
|
|
||||||
<mat-expansion-panel *ngFor="let category of categoryList;let catIndex = index; ">
|
<mat-expansion-panel *ngFor="let category of categoryList;let catIndex = index; ">
|
||||||
<mat-expansion-panel-header>
|
<mat-expansion-panel-header>
|
||||||
<mat-panel-title class="text-xs-left">
|
<mat-panel-title class="text-xs-left">
|
||||||
@ -121,10 +124,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPrevious(optionsForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Previous" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" (click)="saveNextPrevious(optionsForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(next)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(next)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(optionsForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(optionsForm.controls,next)" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -224,10 +227,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPreviousText(textBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Save&Previous" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" (click)="saveNextPreviousText(textBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPreviousText(textBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Save&Next" (click)="saveNextPreviousText(textBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -320,10 +323,10 @@
|
|||||||
<!-- this section for questions type options button actions -->
|
<!-- this section for questions type options button actions -->
|
||||||
<div fxFlex="40" class="pb-0 text-sm-right">
|
<div fxFlex="40" class="pb-0 text-sm-right">
|
||||||
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Previous" (click)="saveNextPrevious(checkBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltip="Save&Previous" (click)="saveNextPrevious(checkBoxForm.controls,previous)" matTooltipPosition="below"><mat-icon>arrow_backward</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Previous" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_previous</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" matTooltip="Skip&Next" (click)="skipNextPrevious(previous)" matTooltipPosition="below"><mat-icon>skip_next</mat-icon></mat-button-toggle>
|
||||||
<mat-button-toggle value="bold" matTooltip="Save&Next" (click)="saveNextPrevious(checkBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
<mat-button-toggle value="bold" *ngIf="currentPDStatus !=pdStatusCheck.COMPLETED && currentPDStatus !=pdStatusCheck.QC_COMPLETED" matTooltip="Save&Next" (click)="saveNextPrevious(checkBoxForm.controls,next)" matTooltipPosition="below"><mat-icon>arrow_forward</mat-icon></mat-button-toggle>
|
||||||
</mat-button-toggle-group>
|
</mat-button-toggle-group>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -358,8 +361,12 @@
|
|||||||
|
|
||||||
</figure>
|
</figure>
|
||||||
</div>
|
</div>
|
||||||
</mat-sidenav-container>
|
</mat-sidenav-container>
|
||||||
|
|
||||||
|
</mat-card-content>
|
||||||
|
</mat-card>
|
||||||
|
|
||||||
|
<notifier-container></notifier-container>
|
||||||
|
|
||||||
<notifier-container></notifier-container>
|
|
||||||
|
|
||||||
|
|
||||||
@ -13,7 +13,6 @@ import { QcService } from './../../qc-service/qc.service';
|
|||||||
export class QcStartComponent implements OnInit, OnDestroy {
|
export class QcStartComponent implements OnInit, OnDestroy {
|
||||||
private notifier: NotifierService;
|
private notifier: NotifierService;
|
||||||
public startPD:string;
|
public startPD:string;
|
||||||
public PDStatus: string;
|
|
||||||
public mainApplicantName:string;
|
public mainApplicantName:string;
|
||||||
//public remarks: string;
|
//public remarks: string;
|
||||||
errorMessage:any;
|
errorMessage:any;
|
||||||
@ -30,6 +29,20 @@ selectedQuestionIndex:number;
|
|||||||
getQuestionsLength:number;
|
getQuestionsLength:number;
|
||||||
answerList:any=[];
|
answerList:any=[];
|
||||||
ansPDList:any=[];
|
ansPDList:any=[];
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
|
currentPDStatus: string;
|
||||||
|
actualQuestions:number;
|
||||||
|
answeredQuestions :number;
|
||||||
|
|
||||||
constructor(notifier: NotifierService, private fb: FormBuilder,private route: ActivatedRoute,
|
constructor(notifier: NotifierService, private fb: FormBuilder,private route: ActivatedRoute,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private QcListComponent : QcListComponent, private _qc: QcService,) {
|
private QcListComponent : QcListComponent, private _qc: QcService,) {
|
||||||
@ -51,7 +64,6 @@ constructor(notifier: NotifierService, private fb: FormBuilder,private route: Ac
|
|||||||
this.loadTemplates(this.startPD);
|
this.loadTemplates(this.startPD);
|
||||||
this.next=1;
|
this.next=1;
|
||||||
this.previous=2;
|
this.previous=2;
|
||||||
this.PDStatus="QC_COMPLETED"
|
|
||||||
}
|
}
|
||||||
isMac(): boolean {
|
isMac(): boolean {
|
||||||
let bool = false;
|
let bool = false;
|
||||||
@ -69,6 +81,10 @@ loadTemplates(startID:string){
|
|||||||
this.categoryList=data.records.question_answers;
|
this.categoryList=data.records.question_answers;
|
||||||
let filterApplicantName= data.records.pdapplicants_detials.filter(item => item.applicant_type == 1);
|
let filterApplicantName= data.records.pdapplicants_detials.filter(item => item.applicant_type == 1);
|
||||||
this.mainApplicantName = filterApplicantName[0].applicant_name;
|
this.mainApplicantName = filterApplicantName[0].applicant_name;
|
||||||
|
this.currentPDStatus = data.records.pdmaster_details.pd_status;
|
||||||
|
|
||||||
|
this.actualQuestions = data.records.counts.overall_question_count;
|
||||||
|
this.answeredQuestions = data.records.counts.overall_answered_count;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
this.pdMasterList="";
|
this.pdMasterList="";
|
||||||
@ -111,6 +127,8 @@ loadTemplates(startID:string){
|
|||||||
if (data.status == 200) {
|
if (data.status == 200) {
|
||||||
this.answerList=data.records.answers;
|
this.answerList=data.records.answers;
|
||||||
this.ansPDList=data.records;
|
this.ansPDList=data.records;
|
||||||
|
this.actualQuestions = data.records.counts.overall_question_count;
|
||||||
|
this.answeredQuestions = data.records.counts.overall_answered_count;
|
||||||
|
|
||||||
// this for options type questions
|
// this for options type questions
|
||||||
if(this.selectedCategory.fk_question_answertype==1){
|
if(this.selectedCategory.fk_question_answertype==1){
|
||||||
@ -396,6 +414,8 @@ optionsMapItems(items) {
|
|||||||
this._qc.editPdMasterDetails(update_array, status).subscribe(result => {
|
this._qc.editPdMasterDetails(update_array, status).subscribe(result => {
|
||||||
if (result.status == 200) {
|
if (result.status == 200) {
|
||||||
this.notifier.notify('success', 'QC Completed.');
|
this.notifier.notify('success', 'QC Completed.');
|
||||||
|
this.currentPDStatus = "QC_COMPLETED";
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.notifier.notify('warning', 'Something Wents Wrong Try Again.!');
|
this.notifier.notify('warning', 'Something Wents Wrong Try Again.!');
|
||||||
|
|||||||
@ -1,25 +1,27 @@
|
|||||||
<div class="mb-2" >
|
<mat-card>
|
||||||
|
<mat-card-content>
|
||||||
|
<div class="mb-2" >
|
||||||
<div fxLayout="row" fxLayoutAlign="start center" class="filter-header">
|
<div fxLayout="row" fxLayoutAlign="start center" class="filter-header">
|
||||||
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs" fxFlex="75">
|
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs" fxFlex="75">
|
||||||
<h4>{{master.lender_full_name}} - {{master.lender_applicant_id}}</h4>
|
<h4>{{master.lender_full_name}} - {{master.lender_applicant_id}}</h4>
|
||||||
{{master.pd_date_of_initiation}}
|
{{master.pd_date_of_initiation}}
|
||||||
</div>
|
</div>
|
||||||
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs pt-1" fxFlex="25" style="text-align:right;" >
|
<div *ngFor="let master of pdMasterData" class="ml-xs mr-xs pt-1" fxFlex="25" style="text-align:right;" >
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="above" (click)="pdAllocationTo(master)"><mat-icon>verified_user</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="above" (click)="pdAllocationTo(master)"><mat-icon>verified_user</mat-icon></button>
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Schedule" matTooltipPosition="above" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(viewID)"><mat-icon>question_answer</mat-icon></button>
|
<button *ngIf="master.pd_type_name && currentPDStatus!=pdStatusCheck.DRAFT && currentPDStatus!=pdStatusCheck.TRIGGERED && currentPDStatus!=pdStatusCheck.DRAFT" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(viewID)"><mat-icon>question_answer</mat-icon></button>
|
||||||
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Close" matTooltipPosition="above" (click)="loadPdListCompoent()"><mat-icon>close</mat-icon></button>
|
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Close" matTooltipPosition="above" (click)="loadPdListCompoent()"><mat-icon>close</mat-icon></button>
|
||||||
<br><span style="color:red;text-align:center">{{master.pd_allocated_to}} -{{master.pd_status_name}}</span>
|
<br><span style="color:red;text-align:left">{{master.pd_allocated_to}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<mat-card-content>
|
<mat-card-content>
|
||||||
<div fxLayout="row wrap">
|
<div fxLayout="row wrap">
|
||||||
|
|
||||||
<div class="m-gap p-gap" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
<div class="m-gap p-gap" fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
||||||
<!--pd master -->
|
<!--pd master -->
|
||||||
<mat-card *ngFor="let master of pdMasterData" class="minheight">
|
<mat-card *ngFor="let master of pdMasterData" class="minheight">
|
||||||
<div class="cardEdit">
|
<div class="cardEdit" *ngIf="currentPDStatus==pdStatusCheck.DRAFT || currentPDStatus==pdStatusCheck.TRIGGERED || currentPDStatus==pdStatusCheck.ALLOCATED || currentPDStatus==pdStatusCheck.SCHEDULED">
|
||||||
<!-- <button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="pdAllocationTo(master)"><mat-icon>directions_run</mat-icon></button>
|
<!-- <button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="pdAllocationTo(master)"><mat-icon>directions_run</mat-icon></button>
|
||||||
<button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
<button *ngIf="master.pd_type_name" mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="scheduleDetails(master)"><mat-icon>schedule</mat-icon></button>
|
||||||
-->
|
-->
|
||||||
@ -37,7 +39,7 @@
|
|||||||
<p *ngIf="master.product_name">{{master.product_name}} / {{master.subproduct_name}}</p>
|
<p *ngIf="master.product_name">{{master.product_name}} / {{master.subproduct_name}}</p>
|
||||||
<p *ngIf="master.pd_type_name"><span>{{master.pd_type_name}}</span> / <span *ngIf="master.loan_amount" class="hover-icon"><i class="fa-1x fa fa-rupee"> </i>{{master.loan_amount}}</span></p>
|
<p *ngIf="master.pd_type_name"><span>{{master.pd_type_name}}</span> / <span *ngIf="master.loan_amount" class="hover-icon"><i class="fa-1x fa fa-rupee"> </i>{{master.loan_amount}}</span></p>
|
||||||
<p><span>{{master.addressline1}},{{master.addressline2}} ,{{master.addressline3}}</span></p>
|
<p><span>{{master.addressline1}},{{master.addressline2}} ,{{master.addressline3}}</span></p>
|
||||||
|
<p><span>{{master.pd_status}} - {{ (master.updatedon)? (master.updatedon | slice:0:10):(master.updatedon) }}</span></p>
|
||||||
</mat-card-content>
|
</mat-card-content>
|
||||||
</mat-card>
|
</mat-card>
|
||||||
|
|
||||||
@ -46,7 +48,7 @@
|
|||||||
<div fxFlex.xs="100" class="m-gap p-gap" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
<div fxFlex.xs="100" class="m-gap p-gap" fxFlex.sm="100" fxFlex.md="50" fxFlex.lg="50" fxFlex.xl="50">
|
||||||
<!-- applicant card -->
|
<!-- applicant card -->
|
||||||
<mat-card class="minheight">
|
<mat-card class="minheight">
|
||||||
<div class="cardEdit">
|
<div class="cardEdit" *ngIf="currentPDStatus==pdStatusCheck.DRAFT || currentPDStatus==pdStatusCheck.TRIGGERED || currentPDStatus==pdStatusCheck.ALLOCATED || currentPDStatus==pdStatusCheck.SCHEDULED">
|
||||||
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editPdApplicant(pdApplicantData)"><mat-icon>edit</mat-icon></button>
|
<button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editPdApplicant(pdApplicantData)"><mat-icon>edit</mat-icon></button>
|
||||||
</div>
|
</div>
|
||||||
<mat-card-header>
|
<mat-card-header>
|
||||||
@ -134,7 +136,10 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</mat-card-content>
|
</mat-card-content>
|
||||||
</div>
|
</div>
|
||||||
|
</mat-card-content>
|
||||||
|
</mat-card>
|
||||||
|
|
||||||
<!-- <notifier-container></notifier-container> -->
|
<!-- <notifier-container></notifier-container> -->
|
||||||
|
|
||||||
|
|||||||
@ -29,6 +29,18 @@ export class QcViewComponent implements OnInit, OnDestroy {
|
|||||||
viewID:string;
|
viewID:string;
|
||||||
viewParams:any;
|
viewParams:any;
|
||||||
destroyType:number=1;
|
destroyType:number=1;
|
||||||
|
currentPDStatus:string;
|
||||||
|
|
||||||
|
// create values for status check
|
||||||
|
pdStatusCheck :any={
|
||||||
|
"DRAFT" :'DRAFT',
|
||||||
|
"TRIGGERED" :'TRIGGERED',
|
||||||
|
"ALLOCATED" :'ALLOCATED',
|
||||||
|
"SCHEDULED" :'SCHEDULED',
|
||||||
|
"INPROGRESS" :'INPROGRESS',
|
||||||
|
"COMPLETED" :'COMPLETED',
|
||||||
|
"QC_COMPLETED" :'QC_COMPLETED',
|
||||||
|
};
|
||||||
public _EditPDtriggerForm:FormGroup;
|
public _EditPDtriggerForm:FormGroup;
|
||||||
constructor(notifier:NotifierService,private dialog: MatDialog,private _fb: FormBuilder,
|
constructor(notifier:NotifierService,private dialog: MatDialog,private _fb: FormBuilder,
|
||||||
private _qc: QcService,private route: ActivatedRoute,private router: Router, private QcListComponent: QcListComponent) {
|
private _qc: QcService,private route: ActivatedRoute,private router: Router, private QcListComponent: QcListComponent) {
|
||||||
@ -52,6 +64,8 @@ export class QcViewComponent implements OnInit, OnDestroy {
|
|||||||
this.pdDocumentsData=data.records.pd_documnets;
|
this.pdDocumentsData=data.records.pd_documnets;
|
||||||
this.masterPdLogsData=data.records.pd_logs.master;
|
this.masterPdLogsData=data.records.pd_logs.master;
|
||||||
//this.applicantPDLogsData= data.records.pd_logs.master;
|
//this.applicantPDLogsData= data.records.pd_logs.master;
|
||||||
|
this.currentPDStatus = data.records.pd_master_details[0].pd_status;
|
||||||
|
|
||||||
}
|
}
|
||||||
}, error => this.errorMessage = <any> error);
|
}, error => this.errorMessage = <any> error);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user