Title case implemented for applicants

This commit is contained in:
saravanakumarkandasami 2019-04-30 18:13:08 +05:30
parent b254c4bceb
commit d797e84a6f
70 changed files with 3086 additions and 148 deletions

View File

@ -1,5 +1 @@
<<<<<<< HEAD
{"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
=======
{"version":3,"sources":["../../@angular/common/http (ignored)"],"names":[],"mappings":";;;;;AAAA,e","file":"0.js","sourcesContent":["/* (ignored) */\n\n\n//////////////////\n// WEBPACK FOOTER\n// @angular/common/http (ignored)\n// module id = 657\n// module chunks = 0"],"sourceRoot":""}
>>>>>>> 8fde53cce8093e6e59c8fb598743fcc841bbdd25
{"version":3,"sources":["../../@angular/common/http (ignored)"],"names":[],"mappings":";;;;;AAAA,e","file":"0.js","sourcesContent":["/* (ignored) */\n\n\n//////////////////\n// WEBPACK FOOTER\n// @angular/common/http (ignored)\n// module id = 706\n// module chunks = 0"],"sourceRoot":""}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
.sourcemaps/3.js.map Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
#Fri Apr 26 20:11:09 IST 2019
#Mon Apr 29 20:23:26 IST 2019
base.0=S\:\\pd_office\\pd_officer\\platforms\\android\\app\\build\\intermediates\\transforms\\dexMerger\\debug\\0
path.0=classes.dex
renamed.0=classes.dex

View File

@ -1,5 +1,5 @@
#Internal package file, do not edit.
#Fri Apr 26 20:11:10 IST 2019
#Mon Apr 29 20:23:27 IST 2019
60.set=ASSET
52.set=ASSET
53.base=S\:\\pd_office\\pd_officer\\platforms\\android\\app\\build\\intermediates\\assets\\debug

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -12,6 +12,7 @@ import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import { SQLite } from '@ionic-native/sqlite';
import { DatabaseProvider } from '../providers/database/database';
import { AndroidPermissions } from '@ionic-native/android-permissions';
import {MapAddressPage} from '../pages/map-address/map-address'
import {
MatAutocompleteModule,
@ -183,7 +184,8 @@ import { CompleteListPage } from '../pages/complete-list/complete-list';
PdQuestionAssessedDailyPurchasePage,
PdQuestionAssessedImagesPage,
RupeeCurrencyFormatPipe,
PdQuestionRentalDashPage
PdQuestionRentalDashPage,
MapAddressPage
// PipesModule
],
@ -280,7 +282,8 @@ import { CompleteListPage } from '../pages/complete-list/complete-list';
PdQuestionAssessedSummaryPage,
PdQuestionAssessedDailyPurchasePage,
PdQuestionAssessedImagesPage,
PdQuestionRentalDashPage
PdQuestionRentalDashPage,
MapAddressPage
],
providers: [

View File

@ -14,6 +14,7 @@
// To declare rules for a specific mode, create a child rule
// for the .md, .ios, or .wp mode classes. The mode class is
// automatically applied to the <body> element in the app.
@font-face{
font-family: Roboto;
src: url('../assets/fonts/Roboto-Light.ttf');
@ -325,3 +326,8 @@ ion-content {
// display: flex;
// padding-right: 3px;
// }
.applicant_free_text{
text-transform: capitalize;
}
@import "theme/mapAddress"

View File

@ -1,13 +0,0 @@
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { CompleteListPage } from './complete-list';
@NgModule({
declarations: [
CompleteListPage,
],
imports: [
IonicPageModule.forChild(CompleteListPage),
],
})
export class CompleteListPageModule {}

View File

@ -16,7 +16,7 @@ import { InputPage } from '../input/input';
* Ionic pages and navigation.
*/
@IonicPage()
//@IonicPage()
@Component({
selector: 'page-complete-list',
templateUrl: 'complete-list.html',

View File

@ -1,3 +1,4 @@
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<ion-header>
<ion-navbar color="optblue">
<button ion-button menuToggle>
@ -66,12 +67,14 @@
<hr/>
<div *ngFor="let addr of addresses; let i=index">
<mat-label style="font-size:12px;color:gray">Address {{i+1}}</mat-label>
<a (click)="locationnavicate(i)" style="text-decoration: none;">
<ion-row float-right >
<div *ngFor="let status of addr.addtional_pd_data">
<ion-row float-right >
<h6 class="status">{{status.pd_status}}</h6>
</ion-row><br/>
</div>
<h6 class="status">{{status.pd_status}}&nbsp; <ion-icon *ngIf="status.is_child == '0'" name="md-checkmark" style="color:green;font-size:21px;font-weight: bold"></ion-icon></h6>
</div>
</ion-row>
<a (click)="locationnavicate(i)" style="text-decoration: none;">
<ion-row>
<ion-col col-1 top><ion-icon name="pin"></ion-icon></ion-col>
<ion-col class="addressinfo">{{addr.addressline1}}<br/>
@ -81,8 +84,11 @@
<span class="addressinfo" *ngIf="addr.pincode != '' && addr.pincode != null && addr.pincode == 'Others'">-{{addr.other_pincode}}</span></ion-col>
</ion-row>
</a>
<span *ngIf="addr.addtional_pd_data.length==0 && addr.is_primary == 0 && address_pd_status == ''"><button ion-button class="inprogress_btn" color="optblue" clear (click)="mapAddress(addr)"><i class="material-icons" style="font-size:28px;">where_to_vote</i></button></span>
<div *ngFor="let status of addr.addtional_pd_data;let i=index">
<ion-icon *ngIf="status.scheduled_on != null" item-start class="addressinfo" name="md-calendar"> {{status.scheduled_on}}</ion-icon>
<!-- <button ion-button clear color="optblue" class="inprogress_btn"><i class="material-icons" style="font-size:24px;">where_to_vote</i></button> -->
<!-- <button mat-raised-button mat-button-md mat-icon-button class="mr-1 mb-1 hover-icon" type="button" ><mat-icon>where_to_vote</mat-icon></button> -->
<ion-icon *ngIf="status.scheduled_on != null" item-start class="schdule_time" name="md-calendar"> {{status.scheduled_on}}</ion-icon>
<ion-icon float-right class="addressinfo" name="md-people"> {{status.customer_segment_abbr}}</ion-icon><br/>
<span *ngIf="status.pd_status == 'COMPLETED' || status.pd_status == 'INPROGRESS' || status.pd_status == 'ADD_ON_PENDING'" class="inprogress_btn"> <button ion-button clear color="optblue" (click)="inprogress(applicatentDetails,status)"><ion-icon style="font-size:24px;" name="md-chatbubbles"></ion-icon></button></span>
</div>

View File

@ -83,6 +83,9 @@ page-input{
font-size: 19px!important;
//padding-bottom: 30px!important;
}
.schdule_time{
font-size:117%;
}
.schdul{
// border:2px solid black;
border-radius: 5px;
@ -115,7 +118,7 @@ page-input{
//background-blend-mode: color-burn;
//background-color:lavender;
border:2px solid darkmagenta;
padding:7px;
padding:5px;
border-radius: 10px;
}
.inprogress_btn{

View File

@ -1,5 +1,5 @@
import { Component, ElementRef,ViewChild } from '@angular/core';
import { IonicPage, NavController, NavParams,AlertController, Content } from 'ionic-angular';
import { IonicPage, NavController, NavParams,AlertController, Content,ModalController,ModalOptions } from 'ionic-angular';
import {Validators, FormBuilder, FormGroup, FormArray } from '@angular/forms';
// import {MomentDateAdapter} from '@angular/material-moment-adapter';
import {DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core';
@ -25,6 +25,8 @@ import { PdGeneralImagesPage } from '../pd-general-images/pd-general-images';
import { AndroidPermissions } from '@ionic-native/android-permissions';
import {BouncedRejectPage} from '../../pages/input/bounced-reject/bounced-reject'
import {PdQuestionCategoryPage} from '../../pages/pd-question-category/pd-question-category'
import {MapAddressPage} from '../../pages/map-address/map-address'
/**
@ -71,14 +73,14 @@ checkOtpAccess:boolean = false;
@ViewChild('scroll') scrolltop : Content;
addresses: any=[];
address_pd_id: any;
address_pd_status: any;
address_pd_status: any='';
address_allocated_data:any
// address_child_schedule_time:any;
constructor(public navCtrl: NavController, public navParams: NavParams,public fb:FormBuilder,
public statusBar:StatusBar,public platform: Platform,public launchNavigator:LaunchNavigator,
public aws:AwsServiceProvider,public pdDetails:PdtriggerProvider,public geolocation:Geolocation,
public alertCtrl:AlertController,public locationAccuracy:LocationAccuracy,public toast:ToastProvider,
public constant:ConstantsProvider,public androidPermissions:AndroidPermissions, ) {
public constant:ConstantsProvider,public androidPermissions:AndroidPermissions,public modalCtrl:ModalController) {
this.maxdate = this.pipe.transform(new Date(),'yyyy-MM-ddTHH:mm').toString();
// this.maxdate=new Date().toLocaleString();
@ -97,7 +99,7 @@ checkOtpAccess:boolean = false;
this.applicatentDetails = this.navParams.get('pdDetails');
this.getFullPD();
// this.getFullPD();
// if(this.applicatentDetails.pd_status == 'ALLOCATED')
@ -123,7 +125,13 @@ checkOtpAccess:boolean = false;
this.users = this.aws.getlocale();
}
ionViewCanEnter(){
this.getFullPD();
}
// ionViewDidEnter(){
// console.log("ionViewDidEnter")
// this.getFullPD();
// }
ionViewDidLoad() {
this.setPermission();
@ -376,9 +384,13 @@ checkOtpAccess:boolean = false;
this.geolocation.getCurrentPosition().then((resp) => {
// resp.coords.latitude
// resp.coords.longitude
let mobile_no=this.other_applicant.filter(val=>val.additional_pd_id == this.address_allocated_data.pd_id).map(val=>val.mobile_no)[0]
console.log("mobile",mobile_no)
if(mobile_no ==undefined){
mobile_no=this.mainApplicant.mobile_no
}
this.currentPosPDofficer = resp.coords.latitude+","+resp.coords.longitude;
data = {'pd_id':this.address_pd_id,'pd_status':'INITIATED','mobile_no':this.mainApplicant.mobile_no,'officerName':appdetails.pd_allocated_to,'firstName':this.mainApplicant.applicant_name,'fk_updatedby':this.users,'updatedon':currentdate,'link':this.currentPosPDofficer};
data = {'pd_id':this.address_pd_id,'pd_status':'INITIATED','mobile_no':mobile_no,'officerName':appdetails.pd_allocated_to,'firstName':this.mainApplicant.applicant_name,'fk_updatedby':this.users,'updatedon':currentdate,'link':this.currentPosPDofficer};
this.pdDetails.updatepdStatus(data).subscribe(res=>
@ -404,7 +416,12 @@ checkOtpAccess:boolean = false;
},error=>{
console.log("currnpd",this.currentPosPDofficer);
alert(JSON.stringify(error))
data = {'pd_id':this.address_pd_id,'pd_status':'INITIATED','mobile_no':this.mainApplicant.mobile_no,'officerName':appdetails.pd_allocated_to,'firstName':this.mainApplicant.applicant_name,'fk_updatedby':this.users,'updatedon':currentdate,'link': this.currentPosPDofficer};
let mobile_no=this.other_applicant.filter(val=>val.additional_pd_id == this.address_allocated_data.pd_id).map(val=>val.mobile_no)[0]
console.log("mobile",mobile_no)
if(mobile_no ==undefined){
mobile_no=this.mainApplicant.mobile_no
}
data = {'pd_id':this.address_pd_id,'pd_status':'INITIATED','mobile_no':mobile_no,'officerName':appdetails.pd_allocated_to,'firstName':this.mainApplicant.applicant_name,'fk_updatedby':this.users,'updatedon':currentdate,'link': this.currentPosPDofficer};
this.pdDetails.updatepdStatus(data).subscribe(res=>
{
this.updateinitiated = res;
@ -425,8 +442,12 @@ checkOtpAccess:boolean = false;
let data:any;
this.geolocation.getCurrentPosition().then((resp) => {
this.currentPosPDofficer = resp.coords.latitude+","+resp.coords.longitude;
data = {'pd_id':this.address_pd_id,'pd_status':'STARTED','mobile_no':this.mainApplicant.mobile_no,'fk_updatedby':this.users,'updatedon':currentdate,'link':this.currentPosPDofficer };
let mobile_no=this.other_applicant.filter(val=>val.additional_pd_id == this.address_allocated_data.pd_id).map(val=>val.mobile_no)[0]
console.log("mobile",mobile_no)
if(mobile_no ==undefined){
mobile_no=this.mainApplicant.mobile_no
}
data = {'pd_id':this.address_pd_id,'pd_status':'STARTED','mobile_no':mobile_no,'fk_updatedby':this.users,'updatedon':currentdate,'link':this.currentPosPDofficer };
console.log(data);
this.pdDetails.updatepdStatus(data).subscribe(res=>
{
@ -606,4 +627,16 @@ else{
pdValues.applicat_details=this.other_applicant
this.navCtrl.push(PdQuestionCategoryPage,{'pdDetails':pdValues})
}
mapAddress(values){
const modalOptions:ModalOptions={
cssClass:"mapAddress"
}
const modal=this.modalCtrl.create(MapAddressPage,{'master':this.pdMaster,'address':values,'applicants':this.other_applicant},modalOptions)
modal.present();
modal.onDidDismiss((data)=>{
console.log("datas",data)
this.getFullPD();
})
}
}

View File

@ -0,0 +1,60 @@
<!--
Generated template for the MapAddressPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<!-- <ion-header>
<ion-navbar>
<ion-title>mapAddress</ion-title>
</ion-navbar>
</ion-header> -->
<ion-content>
<ion-list no-lines="">
<!-- <div class="login-top">
<h2 text-center="">
<img alt="" src="assets/imgs/logo.png">
</h2>
<h4 style="margin-top: 2%;" text-center="" text-white="">
Company Name
</h4>
</div> -->
<!-- <ion-item>
<ion-input email="" ngmodel="" placeholder="Email" type="email"></ion-input>
</ion-item>
<ion-item>
<ion-input ngmodel="" password="" placeholder="Password" type="password"></ion-input>
</ion-item>
<ion-item>
<button block="" click="" color="primary" ion-button="" signin="">Sign in</button>
</ion-item> -->
<form [formGroup]="addressMapping">
<mat-label>{{pageTitle}}</mat-label><br/><br/><br/>
<mat-form-field>
<mat-select placeholder="Customer Segment" formControlName="fk_customer_segment" required>
<mat-option>Select</mat-option>
<mat-option *ngFor="let data of cus_seg" [value]="data.customer_segment_id">{{data.abbr}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field>
<mat-select placeholder="Applicant" formControlName="pd_co_applicant_id" (selectionChange)="updateMobile(addressMapping.value)" required>
<mat-option>Select</mat-option>
<mat-option *ngFor="let data of applicants" [value]="data.pd_co_applicant_id">{{data.applicant_name}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field>
<input matInput type="tel" maxlength="10" minlength="10" placeholder="Mobile Number" formControlName="mobile_no" [readonly]="mobileDisable" required>
</mat-form-field>
</form>
<ion-item>
<button block="" color="primary" ion-button="" (click)="submit(addressMapping.value)">Submit</button>
<button block="" color="gray" ion-button="" (click)="cancel()">Cancel</button>
</ion-item>
</ion-list>
</ion-content>

View File

@ -0,0 +1,10 @@
page-map-address {
.mat-form-field{
width: 100%;
//margin-left: 10px;
//margin:10px;
// margin-top:20px;
padding: 0 10px 0 10px;
}
}

View File

@ -0,0 +1,100 @@
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import {QuestionCategoryProvider} from '../../providers/question-category/question-category'
import { FormGroup,FormBuilder, Validators } from '@angular/forms';
import{AwsServiceProvider} from '../../providers/aws-service/aws-service'
import {PdtriggerProvider} from '../../providers/pdtrigger/pdtrigger'
import {ToastProvider} from '../../providers/common-provider/toast'
/**
* Generated class for the MapAddressPage page.
*
* See https://ionicframework.com/docs/components/#navigation for more info on
* Ionic pages and navigation.
*/
@Component({
selector: 'page-map-address',
templateUrl: 'map-address.html',
})
export class MapAddressPage {
cus_seg:any=[]
addressMapping:FormGroup
mobileDisable:boolean=false;
master:any=[]
addressData:any=[]
applicants:any=[]
pageTitle="Choose customer segment For this PD address"
constructor(public navCtrl: NavController, public navParams: NavParams,private qustCat:QuestionCategoryProvider,
private fb:FormBuilder,private aws:AwsServiceProvider,private pdTrigger:PdtriggerProvider,private toast:ToastProvider) {
this.master=this.navParams.get('master')
this.addressData=this.navParams.get('address')
this.applicants=this.navParams.get('applicants')
console.log("d",this.master,'kd',this.applicants,'dks',this.applicants);
this.addressMapping=this.fb.group({
fk_customer_segment:[''],
pd_co_applicant_id:[''],
mobile_no:['']
})
this.dropDown();
}
ionViewDidLoad() {
console.log('ionViewDidLoad MapAddressPage');
}
updateMobile(data){
let mobile=this.applicants.filter(val=>val.pd_co_applicant_id==data.pd_co_applicant_id).map(val=>val.mobile_no)[0]
console.log(mobile)
if(mobile != '' && mobile != null){
this.addressMapping.controls['mobile_no'].setValue(mobile)
this.addressMapping.controls['mobile_no'].clearValidators();
this.addressMapping.controls['mobile_no'].updateValueAndValidity();
this.mobileDisable=true
}
else{
this.addressMapping.controls['mobile_no'].setValue('')
this.addressMapping.controls['mobile_no'].setValidators(Validators.compose([Validators.required]));
this.addressMapping.controls['mobile_no'].updateValueAndValidity();
this.mobileDisable=false
}
}
dropDown(){
this.qustCat.getCustomersDetails().subscribe(res=>{
if(res['dataStatus']== true){
this.cus_seg=res['records']
}
})
}
cancel(){
this.navCtrl.pop();
}
submit(values){
if(this.addressMapping.invalid){
this.toast.pdTriggerappmessage("Please Fill all the Fields");
return;
}
let update_records={"pd_id":null,"parent_pd_id":this.master.parent_pd_id,"fk_address_id":this.addressData.pd_address_id,"pd_status":"ACCEPTED","fk_updatedby":this.aws.getlocale(),
"fk_customer_segment":values.fk_customer_segment,
"pd_co_applicant_id":values.pd_co_applicant_id,
"mobile_no":values.mobile_no
}
console.log("update",update_records);
this.pdTrigger.updatepdStatus(update_records).subscribe(res=>{
if(res['dataStatus']==true){
this.toast.pdTriggerappmessage("Saved Successfully..");
this.navCtrl.pop();
}
else{
this.toast.pdTriggerappmessage("Something went wrong!!")
}
},err=>{
console.log("Error",JSON.stringify(err))
})
}
}

View File

@ -104,15 +104,51 @@ page-pd-list{
// overflow-y:scroll;
// display: block;
}
.slide-zoom{
height:100%;
overflow-y:scroll;
// .slide-zoom{
// height:auto;
// //overflow-y:scroll;
// }
// ion-slide{
// //overflow: auto;
// }
// .swiper-slide{
// display:block;
// }
// ion-slide{
// ion-grid{
// height: 90vh; // padding for footer
// overflow-y: scroll;
// overflow-x:scroll;
// }
// }
ion-slides{
height: auto;
}
// .slide-zoom {
// text-align: center;
// position: absolute;
// top: 0;
// display: block;
// width: 100%;
// height: auto;
// //padding: 50px 10px;
// }
// .slide-zoom{
// height: auto;
// }
// ion-slide{
// height: auto;
// }
// ion-slides{
// height: auto;
// overflow: auto;
// }
// ion-slide{
// overflow: auto;
// }
// .slide-zoom{
// height: auto;
// }
.app_id{

View File

@ -161,7 +161,7 @@
<!-- <button ion-button full color="primary" [disabled]="!overallqustioncountAccess"style="background-color: green !important;" (click)="completed()">
Completed </button> -->
<button *ngIf='!complete_status' ion-button full color="primary" style="background-color: green !important;" (click)="completePDAlert()">
<button *ngIf='!complete_status' ion-button full color="primary" style="background-color: green !important;" [disabled]="complete_btn == false" (click)="completePDAlert()">
Completed </button>
</ion-row>

View File

@ -67,6 +67,7 @@ completedAccess:any;
searchitem:any;
enableAddonPD: boolean=false;
pageTitle:string;
complete_btn:boolean=true;
complete_status : boolean = false;
constructor(public navCtrl: NavController, public navParams: NavParams,public templateget:QuestionCategoryProvider,public aws:AwsServiceProvider, public shared:CognitoServiceProvider,public toast:ToastProvider,public pdstatusprovide:PdtriggerProvider) {
@ -138,6 +139,7 @@ searchitem:any;
this.questionCate = this.questionCate.records;
this.random_ng_past();
this.complete_btn= this.questionCate.pdmaster_details.pd_status == "ADD_ON_PENDING" ? false : this.questionCate.pdmaster_details.pd_status == "COMPLETED" ? false :true
// if(this.questionCate.question_answers !='' && this.questionCate.template_forms!='')
// {
// this.questionCateAccess = true;

View File

@ -184,7 +184,7 @@
<mat-select placeholder="Comment on Locality" name="comment_locality" formControlName="comment_locality" required>
<mat-option>Select</mat-option>
<mat-option value="{{data.comments_on_locality_id}}"
*ngFor="let data of cmtlocality">{{data.rating}}
*ngFor="let data of cmtlocality">{{data.rating | titlecase}}
</mat-option>
</mat-select>
<mat-error align="end" style="font-size:13px" *ngIf="item.controls['comment_locality'].errors?.required || item.controls['comment_locality'].touched">Comment on Locality is Required</mat-error>

View File

@ -281,37 +281,7 @@ countRowsForTextarea(text){
this.timer.unsubscribe();
console.log("dirty",this.pdQuestionAddress.dirty);
if(this.pdQuestionAddress.dirty){
// console.log("dirty",this.AssetsDetailsForm.dirty)
//return false;
// let val=this.toast.setAlert('Form is Modified','Are you sure want to Go Back');
// console.log("v",val)
// if(val==1){
// }
// if(val.__zone_symbol__state)
// return new Promise((resolve, reject) => {
// let alert=this.alerCtrl.create({
// title:'Form is Modified',
// message:'Are you sure want to Go Back',
// cssClass:'buttoncss',
// buttons:[{
// text:'Yes',
// cssClass:'btnYes',
// handler:()=>{
// resolve();
// }
// },
// {
// text:'No',
// cssClass:'btnNo',
// handler:()=>{
// reject();
// }
// }]
// });
// alert.present()
// })
return new Promise((resolve,reject)=>{
return new Promise((resolve,reject)=>{
let alert=this.toast.setAlert("Form is Modified","Are you sure want to Go Back")
alert.present();
alert.onDidDismiss((data)=>{
@ -339,19 +309,10 @@ countRowsForTextarea(text){
})
})
}
// let datas:any=this.pdQuestionAddress.value
// datas.pd_id=this.pdDetails.pd_id
// datas.form_id=this.FormId.form_id;
// datas.active=true;
// let form_id=this.FormId.form_id
// // let recors={'records':datas}
// this.storagedb.insertData(datas).then(res=>{
// let alert=this.toast.setAlert('data',JSON.stringify(res))
// alert.present();
// console.log(res);
// })
//For Inserting the data locally
// this.localInsert(true);
resolve();
}
})
@ -724,6 +685,7 @@ countRowsForTextarea(text){
//TO CHANGE THE FORM STATE
this.pdQuestionAddress.reset(this.pdQuestionAddress.value);
//FOR UPDATING THE FORM STATUS IN LOCAL
// this.localInsert(false);
this.toast.pdTriggerappmessage('Record Saved Successfully');
setTimeout(()=>{

View File

@ -291,13 +291,13 @@
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName" >
<mat-option *ngFor="let val of group.groupValues" [value]="val">
{{val.name}}
{{val.name | titlecase}}
</mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
<mat-form-field *ngIf="isOtherOwner[i]" style="width:100%;">
<input matInput placeholder="Specify Owner Name"
<input class="applicant_free_text" matInput placeholder="Specify Owner Name" (keyup)="changeSentence(sup)"
formControlName="other_owner" autocomplete="off">
</mat-form-field>
</div>

View File

@ -55,3 +55,6 @@ page-pd-question-assests {
// color:green;
// }
}
// .applicant_free_text{
// text-transform: capitalize;
// }

View File

@ -910,5 +910,10 @@ export class PdQuestionAssestsPage {
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('other_owner').value
value.get('other_owner').setValue(this.constprovider.sentenceCase(name));
}
}

View File

@ -85,13 +85,13 @@
<mat-select placeholder="Account Name"
formControlName="applicant_name" [compareWith]="compareObjects" >
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option *ngFor="let val of group.groupValues" [value]="val">{{val.name}} </mat-option>
<mat-option *ngFor="let val of group.groupValues" [value]="val">{{val.name | titlecase}} </mat-option>
</mat-optgroup>
</mat-select>
</mat-form-field>
</div>
<mat-form-field style="width: 100%" *ngIf="checkOthers(bankinfo.get('applicant_name').value)==true">
<input type="text" matInput placeholder="Specify Account Name" name="other_applicant" formControlName="other_applicant">
<input type="text" matInput placeholder="Specify Account Name" name="other_applicant" formControlName="other_applicant" (keyup)="changeSentence(bankinfo)">
</mat-form-field>
<div fxLayout="column" fxLayoutAlign="start stretch">
<mat-form-field style="width: 100%">

View File

@ -504,4 +504,9 @@ inWords(e,i,flag){
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('other_applicant').value
value.get('other_applicant').setValue(this.cons.sentenceCase(name));
}
}

View File

@ -367,7 +367,7 @@
</mat-form-field>
<mat-form-field *ngIf="isOtherOwner">
<input matInput placeholder="Specify Asset Owned Name"
<input matInput placeholder="Specify Asset Owned Name" (keyup)="changeSentence(sup)"
formControlName="business_name_of_the_other_owner" autocomplete="off">
</mat-form-field>

View File

@ -1041,5 +1041,10 @@ if(flag== 11){
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('business_name_of_the_other_owner').value
value.get('business_name_of_the_other_owner').setValue(this.cons.sentenceCase(name));
}
}

View File

@ -84,7 +84,7 @@
</mat-form-field>
<mat-form-field style="width: 100%" *ngIf="checkOthers(itemrow.get('applicant_name').value)==true">
<input type="text" matInput placeholder="Specify Applicant Name" name="other_applicant" formControlName="other_applicant">
<input type="text" matInput placeholder="Specify Applicant Name" name="other_applicant" formControlName="other_applicant" (keyup)="changeSentence(itemrow)">
</mat-form-field>
<mat-form-field style="width: 100%">

View File

@ -471,7 +471,11 @@ capture(){
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('other_applicant').value
value.get('other_applicant').setValue(this.cons.sentenceCase(name));
}
}

View File

@ -80,7 +80,7 @@
</mat-select>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="member.value.partner_name=='Others'">
<input matInput placeholder="Specify Others(Name)" formControlName="partner_other_name"
<input matInput placeholder="Specify Others(Name)" formControlName="partner_other_name" (keyup)="changeSentence(member)"
autocomplete="off">
</mat-form-field>
<div *ngIf="generalExistEntityType.value!=''">
@ -116,6 +116,7 @@
(change)="checkWithExistTotalWorkExperience($event.target.value,i,member)">
<mat-hint style="color: red;" align="start" style="font-size:11px">{{errorMessageForExistTotalWorkExperience[i]}}</mat-hint>
</mat-form-field>
<mat-form-field style="width:100%;" *ngIf="member.value.total_business_previous_experience!=undefined">
<input matInput autocomplete="off" placeholder="Previous Work Experience" formControlName="total_business_previous_experience">
</mat-form-field>

View File

@ -1314,7 +1314,7 @@ createPartners(): FormGroup {
current_business_experiance_year:[''],
current_business_experiance_month:[''],
total_business_experiance:[''],
total_business_previous_experience:['']
// total_business_previous_experience:['']
/* shareholding: ['', Validators.compose([Validators.required])],
current_business_experiance: ['', Validators.compose([Validators.required])],
total_business_experiance: ['', Validators.compose([Validators.required])],*/
@ -2235,7 +2235,11 @@ toGetPOSMachinesDetails(e,flag){
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('partner_other_name').value
value.get('partner_other_name').setValue(this.cons.sentenceCase(name));
}

View File

@ -110,7 +110,7 @@
<input matInput placeholder="Specify Lender" formControlName="others_lender">
</mat-form-field>
<mat-form-field style="width: 100%">
<mat-select placeholder="Loan Taken By" formControlName="loan_taken_by" [compareWith]="compareObjects" multiple>
<mat-select placeholder="Loan Taken By" formControlName="loan_taken_by" [compareWith]="compareObjects" (selectionChange)="checkOthers(details.get('loan_taken_by').value)" multiple>
<mat-optgroup *ngFor="let group of mergeCompanyApplicant" [label]="group.groupName">
<mat-option [value]="val" *ngFor="let val of group.groupValues">{{val.name}}</mat-option>
@ -118,8 +118,8 @@
</mat-select>
</mat-form-field>
<mat-form-field *ngIf="checkOthers(details.get('loan_taken_by').value) == true">
<input matInput autocomplete="off" placeholder="Specify Borrower" formControlName="others_loan_taken">
<mat-form-field *ngIf="others_loanAccess">
<input matInput autocomplete="off" placeholder="Specify Borrower" formControlName="others_loan_taken" (keyup)="changeSentence(details)">
</mat-form-field>
<mat-form-field style="width: 100%">
<mat-select (selectionChange)="selectedfrequency($event.value,i)" placeholder="Instalment Frequency"

View File

@ -44,6 +44,7 @@ applicants: any;
addressTypeData: any;
propertyTypeData: any;
tentureErrorFlag:boolean=false
others_loanAccess:boolean=false
@ViewChild('balanceTenure') TenureFocus : ElementRef
lenderDataValue: any;
protected _onDestroy = new Subject<void>();
@ -260,13 +261,19 @@ compareObjects(o1: any, o2: any) {
else return false
}
checkOthers(values){
if(values!=null) {
return values.id==0 ? true : false;
console.log(values)
let status
if(values.length != 0 && values != null){
status=values.filter(res=>res.id == 0)
status=status.length > 0 ?true : false
console.log(status)
this.others_loanAccess=status
}
else {
return false;
this.others_loanAccess= false;
}
}
checkTenure(details){
let originalTenure = details.value.original_tenure;
@ -817,4 +824,9 @@ submitCurrentloan(answerData) {
this.toast.pdTriggerappmessage(JSON.stringify(ERR));
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('others_loan_taken').value
value.get('others_loan_taken').setValue(this.constant.sentenceCase(name));
}
}

View File

@ -74,7 +74,7 @@
<mat-select placeholder="Applicants" formControlName="selected_person" (selectionChange)="selectedPerson($event.value,i)" required>
<mat-option>Select</mat-option>
<mat-option value="{{pd.pd_co_applicant_id}}"
*ngFor="let pd of pdDetails.applicat_details">{{pd.applicant_name}}</mat-option>
*ngFor="let pd of pdDetails.applicat_details">{{pd.applicant_name | titlecase}}</mat-option>
</mat-select>
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="tech.controls['selected_person'].errors?.required ">Applicant
@ -177,13 +177,13 @@
<mat-card-header appearence="outline">Family Details # {{ix+1}} Of {{FamilyMemberAsLabel[i]}}</mat-card-header>
<mat-form-field style="width:100%">
<mat-select placeholder="Title" formControlName="applicant_title_name">
<mat-select placeholder="Title" formControlName="family_member_salutation">
<mat-option>Select</mat-option>
<mat-option *ngFor="let t1 of titleList" [value]="t1.title_id">{{t1.name}}</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field>
<input matInput type="text" placeholder="Name" formControlName="family_member_name" />
<input matInput type="text" placeholder="Name" formControlName="family_member_name" (keyup)="changeSentence(item)" />
</mat-form-field>
<mat-form-field>
<mat-select placeholder="Relationship *" formControlName="family_member_relationship" >

View File

@ -69,11 +69,8 @@ data:any;
imageDisplay: any=[];
imageBucket: any=[];
tab: any='0';
<<<<<<< HEAD
titleList: any=[];
=======
complete_status: boolean = false;
>>>>>>> 8fde53cce8093e6e59c8fb598743fcc841bbdd25
constructor(public navCtrl: NavController, public navParams: NavParams,public fb:FormBuilder,
public qustCat:QuestionCategoryProvider,public aws:AwsServiceProvider,
@ -269,7 +266,7 @@ data:any;
this.inWords(vals.earning_gross_income_per_month,index,1);
}
let datas = this.fb.group({
applicant_title_name:[vals.applicant_title_name || null],
family_member_salutation:[vals.family_member_salutation || null],
family_member_name: [vals.family_member_name || null],
family_member_relationship: [vals.family_member_relationship || null],
relationSearch:[''],
@ -380,7 +377,7 @@ data:any;
}
generateFamilyMembersDetailsGet(): FormGroup {
return this.fb.group({
applicant_title_name:[''],
family_member_salutation:[''],
family_member_name: ['' ],
family_member_relationship: [''],
relationSearch:[''],
@ -710,7 +707,7 @@ selectedPerson(e,inx){
// this.isReadOnly[inx] = false;
// }
arraydata = {
'applicant_title_name':'',
'family_member_salutation':'',
'family_member_name' : val.name,
'family_member_relationship' : val.relationship,
'family_member_age' : val.age,
@ -756,7 +753,7 @@ if (result.length > 0) {
}
initgenerateFamilyMembersDetailsGet(val):FormGroup{
return this.fb.group({
applicant_title_name:[val.applicant_title_name],
family_member_salutation:[val.family_member_salutation],
family_member_name: [val.family_member_name],
family_member_relationship: [val.family_member_relationship],
relationSearch:[''],
@ -1117,4 +1114,9 @@ searchFun(control:any,i:number,option){
}
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('family_member_name').value
value.get('family_member_name').setValue(this.cons.sentenceCase(name));
}
}

View File

@ -137,7 +137,7 @@
</mat-form-field>
<mat-form-field style="width:100%">
<input matInput type="text" placeholder="Name of the Person" formControlName="applicant_name">
<input matInput type="text" placeholder="Name of the Person" formControlName="applicant_name" (keyup)="changeSentence(indi)">
<mat-error style="color:red;font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="indi.controls['applicant_name'].errors?.required || indi.controls['applicant_name'].touched">Name
is Required</mat-error>
</mat-form-field>

View File

@ -12,6 +12,7 @@ import { DataSource } from '@angular/cdk/table';
import { MatSelect } from '@angular/material';
import {CameraProvider} from '../../../providers/common-provider/camera'
import {LoadingProvider} from '../../../providers/common-provider/loading'
import {ConstantsProvider} from '../../../providers/constants/constants'
//import {} from 'moment'
/**
@ -85,7 +86,7 @@ export class PdQuestionGeneralInfoPage {
constructor(public navCtrl: NavController, public navParams: NavParams,
public aws:AwsServiceProvider,public qustCat:QuestionCategoryProvider,
public toast:ToastProvider,public fb:FormBuilder,public modal:ModalController,
private cameraProvider:CameraProvider,private loading:LoadingProvider) {
private cameraProvider:CameraProvider,private loading:LoadingProvider,private cons:ConstantsProvider) {
this.maxDate = new Date();
this.pd_applicants_details = [];
this.pd_applicants_details.pop();
@ -1420,6 +1421,11 @@ console.log('1)',this.temp);
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('applicant_name').value
value.get('applicant_name').setValue(this.cons.sentenceCase(name));
}
}

View File

@ -119,7 +119,7 @@
<mat-error style="font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="neighbourhood['controls'].organisation_owner.errors?.required || neighbourhood['controls'].organisation_owner.touched">pick atleast one organisation owner</mat-error>
</mat-form-field>
<mat-form-field *ngIf="isOrganisationOwner[n]">
<input matInput autocomplete="off" placeholder="Specify Owner name" formControlName="other_organisation_owner" type="text">
<input matInput autocomplete="off" placeholder="Specify Owner name" formControlName="other_organisation_owner" type="text" (keyup)="changeSentence(neighbourhood)">
<mat-error style="font-size:12px;margin:0;padding:0;font-weight: normal;float:right" *ngIf="neighbourhood['controls'].organisation_owner.errors?.required || neighbourhood['controls'].organisation_owner.touched">organisation owner is required</mat-error>
</mat-form-field>
<label *ngIf="isDisplay2[n]">Who is the owner of the organisation?</label><br/>

View File

@ -625,7 +625,11 @@ ChdCtrls.controls.other_organisation_owner.updateValueAndValidity();
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('other_organisation_owner').value
value.get('other_organisation_owner').setValue(this.constant.sentenceCase(name));
}
}

View File

@ -70,7 +70,7 @@
</mat-select>
</mat-form-field> -->
<mat-card style="width: 100%">
<p>Other Income</p>
<p>Other Income of Loan Applicants</p>
<mat-radio-group formControlName="other_income" (change)="checkotherDetails($event.value)">
<mat-radio-button value="Yes">Yes</mat-radio-button>
&nbsp;&nbsp;&nbsp;&nbsp;
@ -113,7 +113,7 @@
</mat-select>
</mat-form-field>
<mat-form-field *ngIf="isOrganisationOwner[i]">
<input matInput placeholder="Specify Income Earned By" formControlName="others_income_earned_by" autocomplete="off">
<input matInput placeholder="Specify Income Earned By" formControlName="others_income_earned_by" autocomplete="off" (keyup)="changeSentence(details)">
</mat-form-field>
<mat-form-field style="width: 100%">
<input matInput type="number" placeholder="Amount" formControlName="amount" (keyup)=inWords($event,i)>

View File

@ -458,5 +458,10 @@ this.tab='1';
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('others_income_earned_by').value
value.get('others_income_earned_by').setValue(this.constant.sentenceCase(name));
}
}

View File

@ -94,7 +94,7 @@ export class PdQuestionRentalDashPage {
}
else{
this.existing_rental_count_id=0
this.addMore();
// this.addMore();
}
})
console.log("ren",this.existing_rental_list);

View File

@ -591,7 +591,7 @@
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owner_other']">
<mat-label>Specify Other Owner/Owners</mat-label>
<input matInput autocomplete="off" placeholder="" formControlName="agreement_property_owner_other"
<input matInput autocomplete="off" placeholder="" formControlName="agreement_property_owner_other" (keyup)="changeSentence(units)"
required>
</mat-form-field>
<mat-form-field style="width:100%" *ngIf="units.controls['agreement_property_owner_other_relationship']">

View File

@ -1557,6 +1557,10 @@ this.tab='1';
})
}
changeSentence(value){
console.log("val",value)
let name=value.get('agreement_property_owner_other').value
value.get('agreement_property_owner_other').setValue(this.constprovider.sentenceCase(name));
}
}

View File

@ -220,4 +220,13 @@ searchData(data,val: any,option) {
// this.stateList.filter(res => res.state_name.toLowerCase().indexOf(searchVal) > -1)
// )
}
sentenceCase (str) {
if ((str===null) || (str===''))
return '';
else
str = str.toString();
return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
}
}

View File

@ -136,4 +136,10 @@ getAddressDetails(pdid:any){
getStateCityNamesAndPincode(values:any){
return this.http.post<any>(this.apiurl+'getStateCityNamesAndPincode',{'records':values})
}
// get customers list
getCustomersDetails(): Observable<any> {
return this.http.get<any>(this.apiurl + 'getListOfCustomerSegments')
}
}

49
src/theme/mapAddress.scss Normal file
View File

@ -0,0 +1,49 @@
.mapAddress {
padding: 30px;
// filter:blur(5px);
//color:lightcyan;
// background-color:gray;
.modal-wrapper {
border-radius: 7px;
background: rgba(0, 0, 0, 0.5);
// color: gray;
height: 80% !important;
margin-top: 25%;
ion-content{
background-color:blanchedalmond;
}
form{
margin-top:20px;
//margin-bottom:
}
mat-label{
margin-bottom: 20px;
color:darkgreen;
font-weight: bold;
font-size:85%;
padding:0 10px 0 10px;
}
ion-list{
// background-color:greenyellow;
.login-top{
margin-top: -20px;
background: #4eb5e2;
padding-bottom: 10px;
margin-bottom: 25px;
}
img {
margin-top: 15%;
max-width: 30%;
}
.item{
background: none !important;
button{
height:4rem !important;
}
}
}
}
}

View File

@ -43,6 +43,7 @@ $colors: (
light: #f4f4f4,
dark: #222,
optblue: #E00201,
gray: rgb(218, 216, 216)
);
$header_color:#8835C3;
$sidemenu_color:#19152C;

File diff suppressed because one or more lines are too long