-
+ *ngIf="latestPDDetails.is_latest == 1 && qcStatus !== 'QC_COMPLETED'" (click)="addNewQuestion()">edit
+
QC Completed Review
+
+
+
+My html content
`; + } + + ngOnInit() { + this.getQcCompleteReviewStatus(); + } + + getQcCompleteReviewStatus() { + this.pdTrigerService.getQCReportFinalReviewDetails(this.data.startId, "QC").subscribe(data => { + if(data['dataStatus']){ + this.recordData = data.records[0]; + this.ngForm = this._formBuilder.group({ + qc_remarks: [this.recordData.qc_remarks], + qc_rating: [Number(this.recordData.qc_rating)], + pd_status: [this.recordData.pd_status], + }) + this.showForm = true; + } + },err => { + + }); + } + + onChange($event: any): void { + console.log('onChange'); + // this.log += new Date() + ""; + } + + myClick(): void { + let template = this.ngForm.value; + template.pd_id = this.data.startId; + console.log(JSON.stringify(template)); + this.pdTrigerService.pdReviewStatusUpdate(template).subscribe(data=>{ + this.notifier.notify('success', 'Your Changes Updated.!'); + this.dialogRef.close(); + }, err => { + this.notifier.notify('warning', 'Something Wents Wrong Try Again.!'); + + }) + } + + + + // ============================= + + ratingClicked: number; + itemIdRatingClicked: string; + rating : number = 1; + + ratingComponentClick(e){ + this.ngForm.controls.qc_rating.setValue(e.rating); + } +} diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html index f25950d8d..2c8b9bc4f 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.html @@ -249,10 +249,10 @@
@@ -283,7 +283,7 @@
-
@@ -305,6 +305,58 @@
+
+
+
+ {{SL.state_name}}
+
+
+
+
+
+ {{CL.city_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -371,7 +423,7 @@
-
@@ -394,6 +446,59 @@
+
+
+
+
+ {{SL.state_name}}
+
+
+
+
+
+ {{CL.city_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -459,7 +564,7 @@
-
@@ -481,6 +586,58 @@
+
+
+
+ {{SL.state_name}}
+
+
+
+
+
+ {{CL.city_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -547,7 +704,7 @@
-
@@ -569,6 +726,59 @@
+
+
+
+ {{SL.state_name}}
+
+
+
+
+
+ {{CL.city_name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts
index 7f18d0981..4981b675a 100755
--- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts
+++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/general-info/general-info.component.ts
@@ -3,7 +3,7 @@ import { FormBuilder, FormGroup, Validators, FormControl, FormArray } from '@ang
import { MatDialog, MatDialogRef, MAT_DIALOG_DATA , DialogPosition} from '@angular/material';
import { NotifierService } from 'angular-notifier';
import { PdTrigerService } from './../../../../../pd-service/pd-triger.service';
-import {OtherApplicantDetailsComponent} from './../other-applicant-details/other-applicant-details.component';
+import {OtherApplicantDetailsComponent} from './../dialogue/other-applicant-details/other-applicant-details.component';
@Component({
selector: 'app-general-info',
templateUrl: './general-info.component.html',
@@ -27,7 +27,7 @@ export class GeneralInfoComponent implements OnInit {
this.form_id = 18;
this.pd_applicants_details = this.pd_all_details.pdapplicants_detials;
// push Other options to applicant details
- this.pd_applicants_details.push({'pd_co_applicant_id':"0",'applicant_name':'Others', });
+ // this.pd_applicants_details.push({'pd_co_applicant_id':"0",'applicant_name':'Others', });
}
ngOnInit() {
@@ -147,37 +147,11 @@ export class GeneralInfoComponent implements OnInit {
// checkand un check function
checkboxChange(event, index, item) {
if(item.exist_status.value){
- if(item.pd_co_applicant_id.value==0){
- const dialogRef = this.dialog.open(OtherApplicantDetailsComponent, {
- data: '',
- width:'40%',
- disableClose: true
- });
- dialogRef.afterClosed()
- .subscribe(dataresult => {
- if(dataresult.data.length>0){
- let relationControl = this._generalForm.controls['applicant_relation'];
- dataresult.data.forEach(element => {
- let applicant_details: any= {'pd_co_applicant_id':element.pd_co_applicant_id,'applicant_name':element.applicant_name,'applicant_relation_to':'','relation':'','company_name':element.company_name,'company_relation':''};
- relationControl.push(this.createApplicantRelation(applicant_details));
- // push related to details
- this.fetch_related_details.push(element.applicant_name);
- });
-
- }
-
-
- // exist_status
- });
-
- }
- else{
let relationControl = this._generalForm.controls['applicant_relation'];
let applicant_details: any= {'pd_co_applicant_id':item.pd_co_applicant_id.value,'applicant_name':item.applicant_name.value,'applicant_relation_to':'','relation':'','company_name':item.company_name.value,'company_relation':''};
relationControl.push(this.createApplicantRelation(applicant_details));
// push related to details
this.fetch_related_details.push(item.applicant_name.value);
- }
}
else {
@@ -192,6 +166,30 @@ export class GeneralInfoComponent implements OnInit {
}
}
+ // add more applicant details
+ addOtherApplicant() {
+ const dialogRef = this.dialog.open(OtherApplicantDetailsComponent, {
+ data: '',
+ width:'40%',
+ disableClose: true
+ });
+ dialogRef.afterClosed()
+ .subscribe(dataresult => {
+ if(dataresult.data.length>0){
+ let relationControl = this._generalForm.controls['applicant_relation'];
+ dataresult.data.forEach(element => {
+ let applicant_details: any= {'pd_co_applicant_id':element.pd_co_applicant_id,'applicant_name':element.applicant_name,'applicant_relation_to':'','relation':'','company_name':element.company_name,'company_relation':''};
+ relationControl.push(this.createApplicantRelation(applicant_details));
+ // push related to details
+ this.fetch_related_details.push(element.applicant_name);
+ });
+
+ }
+ });
+
+ }
+
+
// remove other details
removeOthers(index, item: any){
console.log(item)
diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/manage-pd.module.ts b/ng6-seed/src/app/personal-discussion/manage-pd/manage-pd.module.ts
index 12285e2ba..90d398715 100755
--- a/ng6-seed/src/app/personal-discussion/manage-pd/manage-pd.module.ts
+++ b/ng6-seed/src/app/personal-discussion/manage-pd/manage-pd.module.ts
@@ -79,7 +79,7 @@ import { AllocationViewMoreComponent } from './list-pd/allocation-view-more/allo
import { PdRequirementComponent } from './list-pd/pd-requirement/pd-requirement.component';
import { GeneralInfoComponent } from './list-pd/start-pd/forms/general-info/general-info.component';
import { ModelEditPdReportComponent } from './list-pd/pd-report/model-edit-pd-report/model-edit-pd-report.component';
-import { OtherApplicantDetailsComponent } from './list-pd/start-pd/forms/other-applicant-details/other-applicant-details.component';
+import { OtherApplicantDetailsComponent } from './list-pd/start-pd/forms/dialogue/other-applicant-details/other-applicant-details.component';
import { NeighbourHoodComponent } from './list-pd/start-pd/forms/neighbour-hood/neighbour-hood.component';
// import ngx-viewer module
@@ -87,6 +87,8 @@ import { NgxViewerModule } from 'ngx-viewer';
import { FinalRemarksComponent } from './list-pd/start-pd/forms/final-remarks/final-remarks.component';
import { BusinessOtherFamilyMemberComponent } from './list-pd/start-pd/forms/dialogue/business-other-family-member/business-other-family-member.component';
+import { QcReviewComponent } from './list-pd/pd-report/qc-review/qc-review.component';
+import { SharedModule } from "app/shared/shared.module";
/**
* Custom angular notifier options
@@ -264,7 +266,7 @@ const pdCustomNotifierOptions: NotifierOptions = {
// AgmCoreModule.forRoot({apiKey: 'AIzaSyBtdO5k6CRntAMJCF-H5uZjTCoSGX95cdk'}), OwlDateTimeModule,
// OwlNativeDateTimeModule,
// ],
- declarations: [RentalInfoComponent, TelePdAllocationComponent, FinancialInfoComponent, BusinessInfoComponent, EmploymentInfoComponent, StockComponent, BankingDetailsComponent, ListPdComponent, FamilyDetailsComponent, AddressComponent, ManagePdComponent, MapPdViewComponent, AddPdComponent, ViewPdComponent, PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, InprogressPdComponent, AllPdComponent, ScheduledPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, CurrentLoanComponent, AssetsInfoComponent, LoanDetailsComponent, OtherIncomeComponent, SupplierInfoComponent, PersonalInfoComponent, LenderRepresentativeComponent, PdReportComponent, AssessedIncomeComponent, AllocationViewMoreComponent, PdRequirementComponent, GeneralInfoComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent],
+ declarations: [RentalInfoComponent, TelePdAllocationComponent, FinancialInfoComponent, BusinessInfoComponent, EmploymentInfoComponent, StockComponent, BankingDetailsComponent, ListPdComponent, FamilyDetailsComponent, AddressComponent, ManagePdComponent, MapPdViewComponent, AddPdComponent, ViewPdComponent, PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, InprogressPdComponent, AllPdComponent, ScheduledPdComponent, CompletedPdComponent, QcCompletedPdComponent, ClientInfoComponent, CurrentLoanComponent, AssetsInfoComponent, LoanDetailsComponent, OtherIncomeComponent, SupplierInfoComponent, PersonalInfoComponent, LenderRepresentativeComponent, PdReportComponent, AssessedIncomeComponent, AllocationViewMoreComponent, PdRequirementComponent, GeneralInfoComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent],
// exports: [PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, StartPdComponent, CompletedPdComponent, QcCompletedPdComponent],
// providers: [PdTrigerService, GetGeometricLocationService],
@@ -273,6 +275,7 @@ const pdCustomNotifierOptions: NotifierOptions = {
CommonModule,
ManagePdRoutingModule,
NgxViewerModule,
+ SharedModule,
NotifierModule.withConfig(pdCustomNotifierOptions),
CKEditorModule,
PdfViewerModule,
@@ -307,7 +310,7 @@ const pdCustomNotifierOptions: NotifierOptions = {
{provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS}],
entryComponents: [PdAllocationComponent, SmartPdAllocationComponent, SchedulePdComponent, EditPdApplicantComponent, EditPdMasterComponent, TelePdAllocationComponent, AllocationViewMoreComponent, PersonalInfoComponent,
- ClientInfoComponent, SupplierInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent,RentalInfoComponent, AssessedIncomeComponent, GeneralInfoComponent, PdRequirementComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent],
+ ClientInfoComponent, SupplierInfoComponent, CurrentLoanComponent, LoanDetailsComponent, OtherIncomeComponent, AssetsInfoComponent, AddressComponent, FamilyDetailsComponent, BankingDetailsComponent, StockComponent, EmploymentInfoComponent, BusinessInfoComponent, FinancialInfoComponent, LenderRepresentativeComponent,RentalInfoComponent, AssessedIncomeComponent, GeneralInfoComponent, PdRequirementComponent, ModelEditPdReportComponent, OtherApplicantDetailsComponent, NeighbourHoodComponent, DialogChangeCurrentVenrsion, FinalRemarksComponent, BusinessOtherFamilyMemberComponent, QcReviewComponent],
})
export class ManagePdModule {
diff --git a/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts b/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts
index 0cec83e9f..89b00f4b7 100755
--- a/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts
+++ b/ng6-seed/src/app/personal-discussion/pd-service/pd-triger.service.ts
@@ -331,6 +331,23 @@ getTypeofActivityForSuppliedInfoForm(pd_id: any): Observable{
)
}
+ getQCReportFinalReviewDetails(pd_id: any, flag : string ): Observable{
+ return this._http.post(this.apiUrl+"getQCLenderRemarks", {"records": { "pd_id" : pd_id, "flag" :flag }})
+ .pipe(
+ catchError(this.handleError('operation', []))
+ )
+ }
+
+ // pd review status update details
+ pdReviewStatusUpdate(editData: any): Observable {
+ editData.fk_updatedby = this._aws.getlocale();
+ // editData.updatedon = currentdate;
+ return this._http.post(this.apiUrl + "updatePDMaster", {records: editData})
+
+ .pipe(
+ catchError(this.handleError('operation', []))
+ )
+ }
// inWords(num) {
diff --git a/ng6-seed/src/app/shared/rating/rating.component.html b/ng6-seed/src/app/shared/rating/rating.component.html
new file mode 100644
index 000000000..06bae631d
--- /dev/null
+++ b/ng6-seed/src/app/shared/rating/rating.component.html
@@ -0,0 +1,16 @@
+
\ No newline at end of file
diff --git a/ng6-seed/src/app/shared/rating/rating.component.scss b/ng6-seed/src/app/shared/rating/rating.component.scss
new file mode 100644
index 000000000..64db81cb4
--- /dev/null
+++ b/ng6-seed/src/app/shared/rating/rating.component.scss
@@ -0,0 +1,42 @@
+
+.rating {
+ float:left;
+}
+
+.rating:not(:checked) > input {
+ position:absolute;
+ top:-9999px;
+ clip:rect(0,0,0,0);
+}
+
+.rating:not(:checked) > label {
+ float:right;
+ width:1em;
+ padding:0.1em;
+ overflow:hidden;
+ white-space:nowrap;
+ cursor:pointer;
+ font-size:200%;
+ line-height:1.2;
+ color:#ddd;
+}
+
+.rating:not(:checked) > label:before {
+ content: '★ ';
+}
+
+.rating > input:checked ~ label {
+ color: #f70;
+}
+
+.rating:not(:checked) > label:hover,
+.rating:not(:checked) > label:hover ~ label {
+ color: gold;
+}
+
+
+.rating > input:checked ~ label:hover,
+.rating > input:checked ~ label:hover ~ label,
+.rating > label:hover ~ input:checked ~ label {
+ color: #ea0;
+}
\ No newline at end of file
diff --git a/ng6-seed/src/app/shared/rating/rating.component.spec.ts b/ng6-seed/src/app/shared/rating/rating.component.spec.ts
new file mode 100644
index 000000000..1460c9ec6
--- /dev/null
+++ b/ng6-seed/src/app/shared/rating/rating.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { RatingComponent } from './rating.component';
+
+describe('RatingComponent', () => {
+ let component: RatingComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ RatingComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(RatingComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/ng6-seed/src/app/shared/rating/rating.component.ts b/ng6-seed/src/app/shared/rating/rating.component.ts
new file mode 100644
index 000000000..5c6eed26a
--- /dev/null
+++ b/ng6-seed/src/app/shared/rating/rating.component.ts
@@ -0,0 +1,25 @@
+import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-rating',
+ templateUrl: './rating.component.html',
+ styleUrls: ['./rating.component.scss']
+})
+export class RatingComponent implements OnInit {
+ @Input() rating: number;
+ @Input() itemId: number;
+ @Output() ratingClick: EventEmitter = new EventEmitter();
+
+ inputName: string;
+ ngOnInit() {
+ this.inputName = this.itemId + '_rating';
+ }
+ onClick(rating: number): void {
+ this.rating = rating;
+ this.ratingClick.emit({
+ itemId: this.itemId,
+ rating: rating
+ });
+ }
+
+}
diff --git a/ng6-seed/src/app/shared/shared.module.ts b/ng6-seed/src/app/shared/shared.module.ts
index 9dbf91116..cc6a4cb68 100755
--- a/ng6-seed/src/app/shared/shared.module.ts
+++ b/ng6-seed/src/app/shared/shared.module.ts
@@ -4,19 +4,22 @@ import { MenuItems } from './menu-items/menu-items';
import { HorizontalMenuItems } from './menu-items/horizontal-menu-items';
import { AccordionAnchorDirective, AccordionLinkDirective, AccordionDirective } from './accordion';
import { ToggleFullscreenDirective } from './fullscreen/toggle-fullscreen.directive';
+import { RatingComponent} from './rating/rating.component';
@NgModule({
declarations: [
AccordionAnchorDirective,
AccordionLinkDirective,
AccordionDirective,
- ToggleFullscreenDirective
+ ToggleFullscreenDirective,
+ RatingComponent
],
exports: [
AccordionAnchorDirective,
AccordionLinkDirective,
AccordionDirective,
- ToggleFullscreenDirective
+ ToggleFullscreenDirective,
+ RatingComponent
],
providers: [ MenuItems, HorizontalMenuItems ]
})
+
{{applicant.controls.applicant_name.value}}
-
+