latest requirement

This commit is contained in:
venbatechnologies@gmail.com 2021-12-10 17:41:02 +05:30
parent 232ba73453
commit 76f768808c
10 changed files with 224 additions and 26 deletions

View File

@ -1,3 +1,4 @@
<div *ngIf="data.lender_role_id != '27'">
<h2 mat-dialog-title class="paragraph_change">
<div fxFlex="70" style="padding: 10px !important;">
{{pageTitle}}
@ -9,6 +10,77 @@
</div>
</h2>
<mat-dialog-content class="mat-typography">
<!-- <form [formGroup]="_pdAllocationForm" (submit)="onSubmit()"> -->
<mat-list role="list" *ngIf="vendorOfficerList.length > 0">
<mat-list-item role="listitem" *ngFor="let v_officer of vendorOfficerList; let i = index">
<div fxFlex="100">
<div fxLayout="row wrap">
<div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="30" fxFlex.lg="30" fxFlex.xl="30">
<mat-radio-button color="primary" [value]="v_officer" (change)="selectedItem = $event.value">
{{v_officer.first_name}} {{v_officer.last_name}}
</mat-radio-button>
</div>
<!-- <div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="30" fxFlex.lg="30" fxFlex.xl="30">
<span>{{officer.mobile_no}}</span>
</div>
<div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="40" fxFlex.lg="40" fxFlex.xl="40">
<span class="view_more" (click)="viewMoreDetails(officer)" matTooltip="View More" matTooltipPosition="right">PD in hand - {{officer.count}}</span>
</div> -->
</div>
</div>
</mat-list-item>
</mat-list>
<mat-list *ngIf="vendorOfficerList.length == 0">
<mat-list-item>
<p>No <span *ngIf="data.lender_role_id == '25'">Regional </span>Credit Managers available.</p>
</mat-list-item>
</mat-list>
<!-- </form> -->
</mat-dialog-content>
<mat-dialog-actions >
<div fxFlex="50" align="left">
<p *ngIf="selectedItem"> <span *ngIf="data.lender_role_id == '25'">Regional </span>Credit Manager: {{selectedItem.first_name}}</p>
</div>
<div fxFlex="50" align="right">
<!-- <button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="closeAllocationComponent()" matTooltip="Close" matTooltipPosition="below"><mat-icon>close</mat-icon></button> -->
<button mat-raised-button mat-icon-button (click)="updatePdOfficer(selectedItem)" class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="below"><mat-icon>save</mat-icon></button>
</div>
</mat-dialog-actions>
<notifier-container></notifier-container>
</div>
<div *ngIf="data.lender_role_id == '27'">
<h2 mat-dialog-title class="paragraph_change">
<div fxFlex="70" style="padding: 10px !important;">
Allocation
</div>
<div fxFlex="40" align="end" style="padding: 10px !important;">
<button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="closeAllocationComponent()" matTooltip="Close" matTooltipPosition="below"><mat-icon>close</mat-icon></button>
</div>
</h2>
<mat-card>
<mat-tab-group>
<mat-tab>
<ng-template mat-tab-label>Allocation To Credit Manager</ng-template>
<mat-dialog-content class="mat-typography">
<!-- <form [formGroup]="_pdAllocationForm" (submit)="onSubmit()"> -->
@ -56,9 +128,67 @@
</div>
</mat-dialog-actions>
</mat-tab>
<mat-tab>
<ng-template mat-tab-label>Vendor Allocate</ng-template>
<mat-dialog-content class="mat-typography">
<!-- <form [formGroup]="_pdAllocationForm" (submit)="onSubmit()"> -->
<mat-list role="list" *ngIf="vendorOfficerList.length > 0">
<mat-list-item role="listitem" *ngFor="let v_officer of vendorOfficerList; let i = index">
<div fxFlex="100">
<div fxLayout="row wrap">
<div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="30" fxFlex.lg="30" fxFlex.xl="30">
<mat-radio-button color="primary" [value]="v_officer" (change)="selectedItem = $event.value">
{{v_officer.full_name}}
</mat-radio-button>
</div>
<!-- <div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="30" fxFlex.lg="30" fxFlex.xl="30">
<span>{{officer.mobile_no}}</span>
</div>
<div fxFlex.xs="100" fxFlex.sm="100" fxFlex.md="40" fxFlex.lg="40" fxFlex.xl="40">
<span class="view_more" (click)="viewMoreDetails(officer)" matTooltip="View More" matTooltipPosition="right">PD in hand - {{officer.count}}</span>
</div> -->
</div>
</div>
</mat-list-item>
</mat-list>
<mat-list *ngIf="vendorOfficerList.length == 0">
<mat-list-item>
<p>No <span *ngIf="data.lender_role_id == '25'">Regional </span>Credit Managers available.</p>
</mat-list-item>
</mat-list>
<!-- </form> -->
</mat-dialog-content>
<mat-dialog-actions >
<div fxFlex="50" align="left">
<p *ngIf="selectedItem"> <span *ngIf="data.lender_role_id == '25'">Regional </span>Vendor Manager: {{selectedItem.full_name}}</p>
</div>
<div fxFlex="50" align="right">
<!-- <button mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="closeAllocationComponent()" matTooltip="Close" matTooltipPosition="below"><mat-icon>close</mat-icon></button> -->
<button mat-raised-button mat-icon-button (click)="updatePdOfficer(selectedItem)" class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate" matTooltipPosition="below"><mat-icon>save</mat-icon></button>
</div>
</mat-dialog-actions>
</mat-tab>
</mat-tab-group>
</mat-card>
<notifier-container></notifier-container>
</div>

View File

@ -17,6 +17,7 @@ export class PdAllocationComponent implements OnInit {
public pageTitle: string = "Allocation To Credit Manager";
public _pdAllocationForm: FormGroup;
public pdOfficerList: any = [];
public vendorOfficerList: any=[];
errorMessage: any;
notifier : NotifierService;
selectedItem:any;
@ -29,6 +30,7 @@ export class PdAllocationComponent implements OnInit {
};
constructor( notifier: NotifierService,
private _fb: FormBuilder,
private dialogRef: MatDialogRef<PdAllocationComponent>,
@ -53,6 +55,7 @@ export class PdAllocationComponent implements OnInit {
else
{
this.getPDOfficerList(this.data.pd_id);
this.getSmcVendorPdOfficerList1();
}
// this._pdAllocationForm = this._fb.group({
// pd_primary_id: [null],
@ -65,6 +68,7 @@ export class PdAllocationComponent implements OnInit {
// pd officer list
getPDOfficerList(pdID:string){
let user_type
if(this.data.lender_role_id == '25') {
user_type = "RCM"
@ -77,7 +81,8 @@ export class PdAllocationComponent implements OnInit {
console.log(data);
if (data.status == 200) {
this.pdOfficerList= data.records
console.log('list');
console.log('pdofficerlist');
console.log(this.pdOfficerList)
}
}, error => this.errorMessage = <any> error);
@ -87,13 +92,27 @@ export class PdAllocationComponent implements OnInit {
this._pd.getSMCVendorPDOfficersList(this.data.lender_role_id).subscribe(
list => {
console.log('vendor');
console.log(list)
console.log('list');
console.log(list);
if(list['status'] == '200') {
console.log('bit');
this.pdOfficerList= list['records']
this.vendorOfficerList= list['records']
}
}, error => this.errorMessage = <any> error);
}
getSmcVendorPdOfficerList1(){
this._pd.getvendorlist(this.data.city_id).subscribe(
list => {
console.log('list');
console.log(list);
if(list['status'] == '200') {
this.vendorOfficerList= list['records']
}
}, error => this.errorMessage = <any> error);
}
@ -169,4 +188,5 @@ export class PdAllocationComponent implements OnInit {
}
}

View File

@ -23,6 +23,7 @@
<mat-dialog-actions align="end" *ngIf="CompletenessCheck">
<button *ngIf="enableAddonPD===true" mat-raised-button color="primary" (click)="changePDStatus(addonStatus)"><strong> Yes / Allow Addon PD</strong></button>
<button mat-raised-button color="primary" (click)="changePDStatus(this.data.pd_status)"><strong>Yes</strong></button>
<button mat-raised-button color="primary" (click)="Allocatetovendor()"><strong>Allocate to Vendor</strong></button>
<button mat-raised-button mat-dialog-close><strong> No </strong></button>
</mat-dialog-actions>
<mat-dialog-actions align="end" *ngIf="!CompletenessCheck">

View File

@ -2,7 +2,7 @@ import { Component, OnInit, ViewChild , Input, Inject} from '@angular/core';
import { NotifierService } from "angular-notifier";
import {MatDialog,MatDialogRef,MAT_DIALOG_DATA } from '@angular/material';
import { PdTrigerService } from '../../../pd-service/pd-triger.service';
import { PdAllocationComponent } from '../pd-allocation/pd-allocation.component';
@Component({
selector: 'app-pd-status-change-dialogue',
templateUrl: './pd-status-change-dialogue.component.html',
@ -61,6 +61,7 @@ export class PdStatusChangeDialogueComponent implements OnInit {
// }
// });
}
}
changePDStatus(status: string): void {
@ -118,5 +119,9 @@ export class PdStatusChangeDialogueComponent implements OnInit {
});
}
}
Allocatetovendor()
{
}
}

View File

@ -3,7 +3,7 @@ import { FormGroup, FormArray, FormBuilder, FormControl, Validators } from '@ang
import { HttpClient, HttpParams } from '@angular/common/http';
import { environment } from 'environments/environment';
import { DatePipe } from '@angular/common';
import { PdTrigerService } from '../../../../../../pd-service/pd-triger.service';
const apiUrl = environment.apiEndpoint
@Injectable({
@ -20,7 +20,7 @@ export class QuesFormService {
pd_all_details:any= {}
datepipe: DatePipe;
//length: any;
constructor(private _fb:FormBuilder,private http:HttpClient) {
constructor(private _fb:FormBuilder,private http:HttpClient,private pdTriggerService:PdTrigerService) {
this.datepipe=new DatePipe('en-US')
// this.apiUrl = constantProvider.environment().url
}
@ -47,6 +47,13 @@ export class QuesFormService {
}
assignFormControl_array(formgroup: FormGroup, ques_data: any) {
let pdid = JSON.parse(localStorage.getItem('pdid'))
console.log('formgroup');
console.log(formgroup.controls);
//formgroup.addControl('nationality'('', [Validators.required]));
//formgroup.addControl('new', new FormControl('', Validators.required));
const control: any = formgroup
ques_data.forEach((val, index) => {
@ -67,8 +74,29 @@ export class QuesFormService {
// childControl.push(this._fb.group({ 'questions': this._fb.array([]) }))
console.log('veri');
console.log(val);
if(val.group_key=='cm_queries')
{
this.pdTriggerService.getAdditionalRequirements(pdid).subscribe(res=>{
if(res['dataStatus']){
console.log('requirements');
console.log(res['records']);
let queries_docs=res['records'].pd_additional_requirements
// val.question.push({
// }
// )
// val.group_questions[0].push({
// })
// this.docs_array_value=res['records'].docs_to_be_collected
}
})
}
if(this.len=='3' && val.form_name=='Key Stakeholders in Business')
{

View File

@ -160,7 +160,7 @@ else
let params = {"fk_entity_id":this.pd_all_details.pdmaster_details.fk_lender_id,"fk_product_id":this.pd_all_details.pdmaster_details.fk_product_id,"pd_form_id":this.pd_all_details.form_id,"fk_pd_id":this.pd_all_details.pdmaster_details.pd_id}
this.pdTriggerService.loadCreditPDTemplate(params).subscribe(result=>{
if(!environment.production){
//result.dataStatus = false
result.dataStatus = false
}
if(result.dataStatus) {
let question_template: any = result.records

View File

@ -196,6 +196,9 @@ export class StartPdComponent implements OnInit, OnDestroy {
console.log('details');
console.log(details)
console.log(details.fk_pd_id);
localStorage.setItem('pdid',details.fk_pd_id)
// this.formsCategoryEnable = true;
this.selectedFormsCategory = details;
let curr_vendor_ans_fetch_status = null

View File

@ -43,7 +43,7 @@
<button *ngIf="(master.lender_short_name != 'MWISE' && currentPDStatus==pdStatusCheck.QC_COMPLETED ) || (master.lender_short_name == 'MWISE' && LenderRoleID != '25' && currentPDStatus==pdStatusCheck.COMPLETED||currentVendorStatus==pdStatusCheck.COMPLETED) && roleAccessDetails.reports && master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="PD Report" matTooltipPosition="above" (click)="smcCreditPDReport(viewID)"><mat-icon>ballot</mat-icon></button>
</span>
<button *ngIf="is_agency_logged_in ==true && (master.lender_short_name != 'MWISE' && currentPDStatus==pdStatusCheck.QC_COMPLETED ) || (master.lender_short_name == 'MWISE' && LenderRoleID == '28' && (currentVendorStatus==pdStatusCheck.COMPLETED||currentVendorStatus=='QC COMPLETED')) && roleAccessDetails.reports && master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="PD Report" matTooltipPosition="above" (click)="smcCreditPDReport(viewID)"><mat-icon>ballot</mat-icon></button>
<button *ngIf="is_agency_logged_in ==true && (master.lender_short_name != 'MWISE' && currentPDStatus=='QC COMPLETED') || (master.lender_short_name == 'MWISE' && (LenderRoleID == '27'||LenderRoleID == '26') && (currentVendorStatus=='QC COMPLETED')) && roleAccessDetails.reports && master.pd_type_name" mat-raised-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="PD Report1" matTooltipPosition="above" (click)="smcCreditPDReport(viewID)"><mat-icon>ballot</mat-icon></button>
<span><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></span>
</div>
@ -222,7 +222,7 @@
<span *ngIf="master.lender_short_name == 'MWISE' && (LenderRoleID == '26')"><button *ngIf="roleAccessDetails.allocate && addresses.assigned_pd && addresses.addtional_pd_data[0].pd_type_name && (currentPDStatus == pdStatusCheck.TRIGGERED || (currentPDStatus == pdStatusCheck.ALLOCATED && master.pd_allocated_to_role_id == '27')) " mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Allocate to Self" matTooltipPosition="above" (click)="selfAllocation(addresses.fk_city)"><mat-icon>verified_user</mat-icon></button></span>
<span *ngIf="master.lender_short_name == 'MWISE' && LenderRoleID != '25' && (LenderRoleID != '26' || userId == master.fk_pd_allocated_to)"><button *ngIf="addresses.assigned_pd && addresses.addtional_pd_data[0].pd_type_name && (currentPDStatus == pdStatusCheck.ALLOCATED || currentPDStatus == pdStatusCheck.INPROGRESS)" mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Send back to CPA" matTooltipPosition="above" (click)="allocateToCpa()"><mat-icon>swap_vert</mat-icon></button></span>
<span *ngIf="is_agency_logged_in == false && master.lender_short_name == 'MWISE' && LenderRoleID != '25' && (LenderRoleID != '26' || userId == master.fk_pd_allocated_to)"><button *ngIf="roleAccessDetails.discussions && addresses.assigned_pd && addresses.addtional_pd_data[0].pd_type_name && addresses.addtional_pd_data[0].pd_status!=pdStatusCheck.DRAFT && currentPDStatus!=pdStatusCheck.BOUNCED && (LenderRoleID == '27' || LenderRoleID == '28'||currentPDStatus!=pdStatusCheck.TRIGGERED)||LenderRoleID == '29'" mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(addresses,addresses.addtional_pd_data[0].pd_status)"><mat-icon>question_answer</mat-icon></button></span>
<span *ngIf="is_agency_logged_in == true && master.lender_short_name == 'MWISE' && LenderRoleID != '25' && (LenderRoleID != '26' || userId == master.fk_pd_allocated_to)"><button *ngIf="roleAccessDetails.discussions && addresses.assigned_pd && addresses.addtional_pd_data[0].pd_type_name && addresses.addtional_pd_data[0].vendor_status!=pdStatusCheck.DRAFT && currentVendorStatus!=pdStatusCheck.BOUNCED && (LenderRoleID == '27' || LenderRoleID == '28'||currentVendorStatus!=pdStatusCheck.TRIGGERED)||LenderRoleID == '29'" mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion" matTooltipPosition="above" (click)="getPDStart(addresses,addresses.addtional_pd_data[0].vendor_status)"><mat-icon>question_answer</mat-icon></button></span>
<span *ngIf="is_agency_logged_in == true && master.lender_short_name == 'MWISE' && LenderRoleID != '25' && (LenderRoleID != '26' || userId == master.fk_pd_allocated_to)"><button *ngIf="roleAccessDetails.discussions && addresses.assigned_pd && addresses.addtional_pd_data[0].pd_type_name && addresses.addtional_pd_data[0].vendor_status!=pdStatusCheck.DRAFT && currentVendorStatus!=pdStatusCheck.BOUNCED && currentVendorStatus!='QC COMPLETED'&& (LenderRoleID == '27' || LenderRoleID == '28'||currentVendorStatus!=pdStatusCheck.TRIGGERED)||LenderRoleID == '29'" mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" matTooltip="Discussion1" matTooltipPosition="above" (click)="getPDStart(addresses,addresses.addtional_pd_data[0].vendor_status)"><mat-icon>question_answer</mat-icon></button></span>
</div>
</div>
</div>
@ -394,7 +394,7 @@
<div fxFlex="70" align="left" style="padding: 10px !important;">
<mat-card-title>Credit Managers Specific Queries</mat-card-title>
</div>
<div fxFlex="30" align="end" style="padding: 10px !important;" *ngIf="roleAccessDetails.trigger && currentPDStatus==pdStatusCheck.DRAFT">
<div fxFlex="30" align="end" style="padding: 10px !important;">
<!-- <span *ngIf="userRoleID == 10 || userRoleID == 3"><button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editAdditionalRequirement(pdAdditionalReqData)"><mat-icon>edit</mat-icon></button></span> -->
<span><button mat-raised-button mat-button-sm mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="editAdditionalRequirement(pdAdditionalReqData)"><mat-icon>edit</mat-icon></button></span>
</div>

View File

@ -32,6 +32,7 @@ export class ViewPdComponent implements OnInit, OnDestroy {
private notifier: NotifierService;
public userRoleID = +localStorage.getItem('user_role');
public LenderRoleID : any = localStorage.getItem('LenderRoleID');
errorMessage: any;
pdMasterData: any = [];
pdAddressesData: any = [];
@ -142,6 +143,7 @@ export class ViewPdComponent implements OnInit, OnDestroy {
}
ngOnInit() {
this.userRoleType=localStorage.getItem('user_role');
if(this.userRoleType=='28' || this.userRoleType=='29')
@ -379,7 +381,7 @@ export class ViewPdComponent implements OnInit, OnDestroy {
StatusUpdate(master)
{
let status='QC COMPLETE';
let status='QC COMPLETED';
let update_status = {
"pd_id":master.pd_id,
@ -583,9 +585,12 @@ else {
/** To update pd officer*/
selfAllocation(state_id) {
// console.log('allocate');
// console.log(this.pdMasterData[0].fk_city);
// return
if((this.LenderRoleID == '27') || (this.LenderRoleID == '25') || (this.LenderRoleID == '28')){
const dialogRef1 = this.dialog.open(PdAllocationComponent, {
data: { pd_id:this.viewID, pd_status: this.pdStatusCheck.ALLOCATED,random_string:this.pdMasterData[0].random_string,dialogType:'actionOnly',state_id:state_id, lender_role_id:this.LenderRoleID },
data: { pd_id:this.viewID, pd_status: this.pdStatusCheck.ALLOCATED,random_string:this.pdMasterData[0].random_string,city_id:this.pdMasterData[0].fk_city,dialogType:'actionOnly',state_id:state_id, lender_role_id:this.LenderRoleID },
disableClose: true,
minWidth: '30%',
})
@ -597,7 +602,7 @@ else {
})
}
else{
// return;
const dialogRef = this.dialog.open(PdStatusChangeDialogueComponent, {
data: { pdid:this.viewID, pd_status: "CM_ALLOCATED",random_string:this.pdMasterData[0].random_string,dialogType:'actionOnly' },
disableClose: true,

View File

@ -951,6 +951,12 @@ loadTemplate(form_id) {
return returnValue
})
}
getAdditionalRequirements(pdid)
{
// return this.http.post(this.apiurl+'getFullPDDetails?pdid=pdid');
return this._http.get(this.apiUrl+'getAdditionalRequirements?pdid='+pdid)
}
loadCreditPDTemplate(params):Observable<any> {
return this._http.post(this.apiUrl+'loadCreditPDTemplate',params)
.pipe(catchError(this.handleError("loadCreditPDTemplate",[])))