diff --git a/src/app/closure/closure.component.html b/src/app/closure/closure.component.html index f2d2694..de773f1 100644 --- a/src/app/closure/closure.component.html +++ b/src/app/closure/closure.component.html @@ -109,7 +109,7 @@

{{currentLanguageSet?.closure}}

Select none - {{availableService.subServiceName}} + {{availableService.subServiceName}}
diff --git a/src/app/closure/closure.component.ts b/src/app/closure/closure.component.ts index 2ff1d12..bd6a290 100644 --- a/src/app/closure/closure.component.ts +++ b/src/app/closure/closure.component.ts @@ -36,7 +36,7 @@ import { dataService } from "../services/dataService/data.service"; import { CallServices } from "../services/callservices/callservice.service"; import { FeedbackResponseModel } from "../sio-grievience-service/sio-grievience-service.component"; import { MdDialog } from "@angular/material"; -import { Observable } from "rxjs/Rx"; +import { Observable, Subscription } from "rxjs/Rx"; //import { Router } from '@angular/router'; import { Router } from "@angular/router"; import { ConfirmationDialogsService } from "./../services/dialog/confirmation.service"; @@ -139,6 +139,10 @@ export class ClosureComponent implements OnInit { enableInstitute: boolean = false; varRefral : any; appointmnetSuccessFlag : boolean; + benDetailsSelectedData: any; + transferCallArr: Array = []; + private benDetailSubscription: Subscription; + constructor( public dialog: MdDialog, @@ -205,6 +209,14 @@ export class ClosureComponent implements OnInit { (err) => {} ); + this._availableServices.getServices(requestObject).subscribe( + (response) => { + // this.callTypeObj = response; + this.populateTransferDropDown(response); + }, + (err) => { } + ); + this.saved_data.serviceAvailed.subscribe((data) => { this.serviceAvailed = true; }); @@ -286,6 +298,10 @@ export class ClosureComponent implements OnInit { }) .subscribe((response) => this.IDsuccessHandeler(response)); } + + ngOnDestroy(){ + this.benDetailSubscription.unsubscribe(); + } IDsuccessHandeler(res) { this.commonData = res; if (this.saved_data.caste) { @@ -427,10 +443,25 @@ export class ClosureComponent implements OnInit { // if(this.current_role=="Supervisor"){ // this.roleFlag=false; - if (callType == "Valid" || callType == "Transfer" || callType == "Referral") { - this.validTrans = true; - this.nuisanceBLock = false; - } else { + if (callType.toLowerCase() === "valid" || callType.toLowerCase() === "transfer" || callType.toLowerCase() === "referral") { + this.nuisanceBLock = false; + this.benDetailSubscription = this.saved_data.isBenDetails$.subscribe((value) => { + this.benDetailsSelectedData = value; + if(this.benDetailsSelectedData === null || this.benDetailsSelectedData === undefined || this.benDetailsSelectedData === ""){ + if(callType.toLowerCase() === "transfer"){ + this.validTrans = true; + } + else{ + this.validTrans = false; + } + } + else{ + this.validTrans = true; + } + }); + + } + else { this.validTrans = false; this.nuisanceBLock = true; // this is done to disable S & COntinue in case of incomplete } @@ -556,7 +587,6 @@ export class ClosureComponent implements OnInit { values.isFollowupRequired = this.doFollow; values.isTransfered = this.doTransfer; values.isFeedback = this.isFeedbackRequiredFlag; - if (values.isFollowupRequired == undefined) { values.isFollowupRequired = false; } @@ -615,8 +645,12 @@ export class ClosureComponent implements OnInit { values.isCompleted = true; this.updateOutboundCallStatus(values); } + // this.benDetailSubscription.unsubscribe(); + console.log("BEN DETAILS CHECK***"); + this.saved_data.clearBenData(); this.checkForSubmitCloseBtnType(btnType); } + }, (err) => { console.log(err); @@ -629,9 +663,12 @@ export class ClosureComponent implements OnInit { ); } this.submitContinueBtnType(btnType); + } + } + setbenRegID(values) { if (this.saved_data !== undefined && this.saved_data !== null) { this.beneficiaryDetails = @@ -881,6 +918,7 @@ export class ClosureComponent implements OnInit { transferToCampaign, "success" ); + sessionStorage.removeItem("onCall"); sessionStorage.removeItem("CLI"); this.router.navigate(["/MultiRoleScreenComponent/dashboard"]); @@ -898,6 +936,7 @@ export class ClosureComponent implements OnInit { ); } } + } transferEmergencyCallSuccessHandeler(response, transferToCampaign) { @@ -1516,4 +1555,49 @@ export class ClosureComponent implements OnInit { } }) } + + populateTransferDropDown(response: any) { + // this.benDetailsSelectedData = this.saved_data.benDetailsSelected; + this.benDetailSubscription = this.saved_data.isBenDetails$.subscribe((value) => { + this.benDetailsSelectedData = value; + + if ((this.current_role.toUpperCase() === "RO") && (this.benDetailsSelectedData === null || this.benDetailsSelectedData === undefined || this.benDetailsSelectedData === "")) { + if (response !== null && response !== undefined && response.length > 0) { + this.transferCallArr = response.filter(function (item) { + return item.subServiceName === 'Health Advisory Service'; + }); + } + + } + + else { + if (response !== null && response !== undefined && response.length > 0) { + this.transferCallArr = response; + // transferCallArr = response; + } + } + // transferDropdown(); + + }); + + // let transferCallArr : Array = []; + + // if ((this.current_role.toUpperCase() === "RO") && (this.benDetailsSelectedData === null || this.benDetailsSelectedData === undefined || this.benDetailsSelectedData === "")) { + // if (response !== null || response !== undefined || response.length > 0) { + // this.transferCallArr = response.filter(function (item) { + // return item.subServiceName === 'Health Advisory Service'; + // }); + // } + + // } + + // else { + // if (response !== null || response !== undefined || response.length > 0) { + // this.transferCallArr = response; + // // transferCallArr = response; + // } + // } + + } + } diff --git a/src/app/innerpage/innerpage.component.ts b/src/app/innerpage/innerpage.component.ts index 0888526..b229dbb 100644 --- a/src/app/innerpage/innerpage.component.ts +++ b/src/app/innerpage/innerpage.component.ts @@ -496,6 +496,8 @@ export class InnerpageComponent implements OnInit, OnDestroy { this.selectedBenData.caste = res[0].i_bendemographics.communityName ? res[0].i_bendemographics.communityName : undefined; + + this.getCommonData.getBenDetailsOfCall(this.selectedBenData); } } diff --git a/src/app/services/dataService/data.service.ts b/src/app/services/dataService/data.service.ts index 99b6265..7e1d113 100644 --- a/src/app/services/dataService/data.service.ts +++ b/src/app/services/dataService/data.service.ts @@ -24,6 +24,7 @@ import { Injectable } from '@angular/core'; import { Http, Response } from '@angular/http'; +import { BehaviorSubject } from 'rxjs'; import { Observable } from 'rxjs/Observable'; import { Subject } from 'rxjs/Subject'; import 'rxjs/add/operator/catch'; @@ -69,6 +70,9 @@ export class dataService { outboundBloodReqtID: any; avoidingEvent: boolean = false; transactionId:any; + isBenDetails: any=""; + isBenDetailsData = new BehaviorSubject(this.isBenDetails); + isBenDetails$ = this.isBenDetailsData.asObservable(); // bpQuestionTypeId = 18; // diabeticQuestionTypeId = 19; @@ -116,5 +120,14 @@ export class dataService { benDataInRO: any; apiCalledForInbound=false; appLanguage:any="English"; + + getBenDetailsOfCall(value : any){ + this.isBenDetails = value; + this.isBenDetailsData.next(this.isBenDetails); + } + clearBenData(){ + this.isBenDetails = null; + this.isBenDetailsData.next(this.isBenDetails); + } }; diff --git a/src/index.html b/src/index.html index 286158c..d5cffb3 100644 --- a/src/index.html +++ b/src/index.html @@ -7,7 +7,9 @@