From 6066ab6cfe80cbee723cfd95e9cd5b8b3ffe43f3 Mon Sep 17 00:00:00 2001 From: gandhimathi Date: Fri, 22 Mar 2019 13:08:21 +0530 Subject: [PATCH] select max city changes done in business form --- .../business-info/business-info.component.ts | 45 ++++++++++--------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts index 8be3a6e6c..b326cb500 100755 --- a/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts +++ b/ng6-seed/src/app/personal-discussion/manage-pd/list-pd/start-pd/forms/business-info/business-info.component.ts @@ -1634,30 +1634,35 @@ export class BusinessInfoComponent implements OnInit { } filterMaxSaleCities(datasource: any, filterValues: any, selectedCites: any) { - let existCities: any = selectedCites.filter(cfVal => cfVal.city_name != '').map(mcVal => mcVal.city_name); - existCities = [].concat.apply([], existCities); if (filterValues) { + let setCityValues: any=[]; let getOriginalStateList = datasource.map(dval => dval.state_id); + filterValues.forEach((stateElement,statePos) => { + selectedCites.forEach((existElement,existPos) => { + if(stateElement==existElement.state_name && existElement.city_name.length>0){ + let findIndex = getOriginalStateList.indexOf(stateElement); + findIndex = datasource[findIndex].cities; + let getAllCities: any = existElement.city_name.filter(cVal=>cVal=="1"); + // this is for throuh out states city + if(getAllCities.length>0){ + setCityValues= setCityValues.concat.apply(setCityValues, findIndex); + } + // this is for seleted states city + else{ + let check: any = findIndex.filter(function (fVal) { + return existElement.city_name.some(function (sVal) { + return fVal.city_id == sVal; + }); + }); + setCityValues= setCityValues.concat.apply(setCityValues, check); - let setCityFilter = filterValues.map(x => { - let findIndex = getOriginalStateList.indexOf(x); - findIndex = datasource[findIndex].cities; - return findIndex; + } + } + + }); }); - - let merged = [].concat.apply([], setCityFilter); - - if (merged.length > 0) { - let check: any = merged.filter(function (fVal) { - return existCities.some(function (sVal) { - return fVal.city_id == sVal; - }); - }) - return check; - } - else { - return []; - } + return setCityValues.length>0 ? setCityValues.filter(fVal=>fVal.city_id!="1") : []; + } else { return [];