Commit 06bd1df3 authored by 黄奎's avatar 黄奎

页面修改

parent ec2421f0
...@@ -2,27 +2,27 @@ ...@@ -2,27 +2,27 @@
<div class="regionChoice" v-loading="loading"> <div class="regionChoice" v-loading="loading">
<div class="item"> <div class="item">
<div class="item_b" v-for="(item,index) in regionList" :key="index"> <div class="item_b" v-for="(item,index) in regionList" :key="index">
<el-checkbox :indeterminate="item.indeterminate" v-model="item.ischeckAll" @change="handleCheckAllChange(index,item.ID,$event)" :disabled="item.disabled"> </el-checkbox> <el-checkbox :indeterminate="item.indeterminate" v-model="item.ischeckAll"
@change="handleCheckAllChange(index,item.ID,$event)" :disabled="item.disabled"> </el-checkbox>
<span @click="showcity(index,item.ID)">{{item.Name}}</span> <span @click="showcity(index,item.ID)">{{item.Name}}</span>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div class="item_b" v-for="(item,index) in cityList " :key="index"> <div class="item_b" v-for="(item,index) in cityList " :key="index">
<el-checkbox :indeterminate="item.indeterminate" v-model="item.ischeckAll" @change="handleCityAllChange(index,item.ID,$event)" :disabled="item.disabled"> </el-checkbox> <el-checkbox :indeterminate="item.indeterminate" v-model="item.ischeckAll"
@change="handleCityAllChange(index,item.ID,$event)" :disabled="item.disabled"> </el-checkbox>
<span @click="showarea(index,item.ID)">{{item.Name}}</span> <span @click="showarea(index,item.ID)">{{item.Name}}</span>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div class="item_b" v-for="(item,index) in areaList" :key="index" v-if="areaList[0].Name.indexOf('街道')==-1" > <div class="item_b" v-for="(item,index) in areaList" :key="index" v-if="areaList[0].Name.indexOf('街道')==-1">
<el-checkbox v-model="item.ischeckAll" @change="handleareaAllChange(index,item.ID,$event)" :disabled="item.disabled"></el-checkbox> <el-checkbox v-model="item.ischeckAll" @change="handleareaAllChange(index,item.ID,$event)"
:disabled="item.disabled"></el-checkbox>
<span>{{item.Name}}</span> <span>{{item.Name}}</span>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: "regionChoice", name: "regionChoice",
...@@ -30,139 +30,127 @@ ...@@ -30,139 +30,127 @@
List: Array, List: Array,
required: true required: true
}, },
data(){ data() {
return{ return {
regionList:[], regionList: [],
msg:{ Id:1,}, msg: {
cityID:0, Id: 1,
areaID:0, },
list:[], cityID: 0,
provinceindex:0, areaID: 0,
cityindex:0, list: [],
areaindex:0, provinceindex: 0,
cityindex: 0,
cityList:[], areaindex: 0,
areaList:[],
loading:false, cityList: [],
getlist:[], areaList: [],
isban:false,//是否禁止 loading: false,
isbanlist:[],//被禁的数组 getlist: [],
isban: false, //是否禁止
isbanlist: [], //被禁的数组
} }
}, },
methods:{ methods: {
getprovince(){ getprovince() {
let getlist = this.getlist let getlist = this.getlist
let isbanlist = this.isbanlist let isbanlist = this.isbanlist
this.apipost("/api/Destination/GetChildList", this.msg, res => {
this.apipost("/api/Destination/GetChildList",this.msg , res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data; let data = res.data.data;
for(let i=0;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
data[i].ischeckAll=false; data[i].ischeckAll = false;
data[i].indeterminate=false; data[i].indeterminate = false;
if(getlist.length>0){ if (getlist.length > 0) {
for(let j=0;j<getlist.length;j++){ for (let j = 0; j < getlist.length; j++) {
if(getlist[j].GrandpaID==data[i].ID || getlist[j].ParentID==data[i].ID){ //如果有着2个参数再 他的子级没选择完全 if (getlist[j].GrandpaID == data[i].ID || getlist[j].ParentID == data[i]
data[i].indeterminate=true; .ID) { //如果有着2个参数再 他的子级没选择完全
this.citylist(data[i].ID,i) data[i].indeterminate = true;
} this.citylist(data[i].ID, i)
if(getlist[j].RegionId==data[i].ID){ }
data[i].ischeckAll=true; if (getlist[j].RegionId == data[i].ID) {
data[i].indeterminate=false; data[i].ischeckAll = true;
data[i].indeterminate = false;
this.getCitylist(true) this.getCitylist(true)
} }
} }
} }
if (isbanlist.length > 0 && this.isban == true) {
if(isbanlist.length>0 && this.isban==true){ for (let j = 0; j < isbanlist.length; j++) {
if (isbanlist[j].GrandpaID == data[i].ID || isbanlist[j].ParentID == data[i]
for(let j=0;j<isbanlist.length;j++){ .ID) { //如果有着2个参数再 他的子级没选择完全
if(isbanlist[j].GrandpaID==data[i].ID || isbanlist[j].ParentID==data[i].ID){ //如果有着2个参数再 他的子级没选择完全 data[i].disabled = true;
data[i].disabled=true; this.citylist(data[i].ID, i)
this.citylist(data[i].ID,i)
} }
if(isbanlist[j].RegionId==data[i].ID){ if (isbanlist[j].RegionId == data[i].ID) {
data[i].disabled=true; data[i].disabled = true;
} }
} }
} }
} }
this.regionList = data; this.regionList = data;
this.cityID = data[this.provinceindex].ID this.cityID = data[this.provinceindex].ID
this.getCitylist() this.getCitylist()
} else {
// this.Info(res.data.message);
} }
}) })
}, },
getCitylist(type=false,type2=true){ getCitylist(type = false, type2 = true) {
let getlist =this.getlist let getlist = this.getlist
let isbanlist = this.isbanlist let isbanlist = this.isbanlist
this.apipost("/api/Destination/GetChildList",{'Id':this.cityID} , res => { this.apipost("/api/Destination/GetChildList", {
'Id': this.cityID
}, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data; let data = res.data.data;
this.areaID = data[this.cityindex].ID this.areaID = data[this.cityindex].ID
for(let i=0;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
if(type2==true){ if (type2 == true) {
if(getlist.length>0){ if (getlist.length > 0) {
for(let j=0;j<getlist.length;j++){ for (let j = 0; j < getlist.length; j++) {
if(type==true){ if (type == true) {
data[i].ischeckAll=true; data[i].ischeckAll = true;
data[i].indeterminate=false; data[i].indeterminate = false;
}else { } else {
if (getlist[j].RegionId == data[i].ID || getlist[j].RegionId == this.cityID) {
if(getlist[j].RegionId==data[i].ID || getlist[j].RegionId==this.cityID){ data[i].ischeckAll = true;
data[i].ischeckAll=true; data[i].indeterminate = false;
data[i].indeterminate=false; } else if (getlist[j].ParentID == data[i].ID) {
}else if(getlist[j].ParentID==data[i].ID){ data[i].ischeckAll = false;
data[i].ischeckAll=false; data[i].indeterminate = true;
data[i].indeterminate=true;
}else if(data[i].hasOwnProperty('ischeckAll')==false && data[i].hasOwnProperty('indeterminate')==false){ } else if (data[i].hasOwnProperty('ischeckAll') == false && data[i].hasOwnProperty(
data[i].ischeckAll=false; 'indeterminate') == false) {
data[i].indeterminate=false; data[i].ischeckAll = false;
data[i].indeterminate = false;
} }
} }
} }
} else {
if (type == true) {
}else { data[i].ischeckAll = true;
if(type==true){ data[i].indeterminate = false;
data[i].ischeckAll=true; } else {
data[i].indeterminate=false; data[i].ischeckAll = false;
}else { data[i].indeterminate = false;
data[i].ischeckAll=false;
data[i].indeterminate=false;
} }
} }
if (isbanlist.length > 0 && this.isban == true) {
if(isbanlist.length>0 && this.isban==true){ for (let j = 0; j < isbanlist.length; j++) {
if (isbanlist[j].RegionId == data[i].ID || isbanlist[j].RegionId == this.cityID) {
for(let j=0;j<isbanlist.length;j++){ data[i].disabled = true;
if(isbanlist[j].RegionId==data[i].ID || isbanlist[j].RegionId==this.cityID){ } else if (isbanlist[j].ParentID == data[i].ID) {
data[i].disabled=true; data[i].disabled = true;
}else if(isbanlist[j].ParentID==data[i].ID){
data[i].disabled=true;
} }
} }
} }
}else { } else {
data[i].ischeckAll=false; data[i].ischeckAll = false;
data[i].indeterminate=false; data[i].indeterminate = false;
} }
} }
let regionList = this.regionList let regionList = this.regionList
for(let i=0;i<regionList.length;i++){ for (let i = 0; i < regionList.length; i++) {
if(regionList[i].ID== this.cityID){ if (regionList[i].ID == this.cityID) {
regionList[i].cityList = data; regionList[i].cityList = data;
} }
} }
...@@ -173,60 +161,57 @@ ...@@ -173,60 +161,57 @@
} }
}) })
}, },
getareaIDlist(type=false,type2=true){ getareaIDlist(type = false, type2 = true) {
let getlist =this.getlist let getlist = this.getlist
let isbanlist = this.isbanlist let isbanlist = this.isbanlist
this.apipost("/api/Destination/GetChildList",{'Id':this.areaID} , res => { this.apipost("/api/Destination/GetChildList", {
this.loading= false 'Id': this.areaID
}, res => {
this.loading = false
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data; let data = res.data.data;
for(let i=0;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
if(type2==true){ if (type2 == true) {
if(getlist.length>0){ if (getlist.length > 0) {
for(let j=0;j<getlist.length;j++){ for (let j = 0; j < getlist.length; j++) {
if(type==true){ if (type == true) {
data[i].ischeckAll=true; data[i].ischeckAll = true;
}else { } else {
if(getlist[j].RegionId==this.cityID || getlist[j].RegionId==data[i].ID || getlist[j].RegionId == this.areaID){
data[i].ischeckAll=true;
}else if(data[i].hasOwnProperty('ischeckAll')==false ){
data[i].ischeckAll=false;
if (getlist[j].RegionId == this.cityID || getlist[j].RegionId == data[i].ID || getlist[j]
.RegionId == this.areaID) {
data[i].ischeckAll = true;
} else if (data[i].hasOwnProperty('ischeckAll') == false) {
data[i].ischeckAll = false;
} }
} }
} }
} else {
if (type == true) {
}else { data[i].ischeckAll = true;
if(type==true){ } else {
data[i].ischeckAll=true; data[i].ischeckAll = false;
}else {
data[i].ischeckAll=false;
} }
} }
if(isbanlist.length>0 && this.isban==true){ if (isbanlist.length > 0 && this.isban == true) {
for(let j=0;j<isbanlist.length;j++){ for (let j = 0; j < isbanlist.length; j++) {
if(isbanlist[j].RegionId==this.cityID || isbanlist[j].RegionId==data[i].ID || isbanlist[j].RegionId == this.areaID){ if (isbanlist[j].RegionId == this.cityID || isbanlist[j].RegionId == data[i].ID || isbanlist[j]
data[i].disabled=true; .RegionId == this.areaID) {
data[i].disabled = true;
} }
} }
} }
}else { } else {
data[i].ischeckAll=false; data[i].ischeckAll = false;
} }
} }
let regionList = this.regionList; let regionList = this.regionList;
for(let i=0;i<regionList.length;i++){ for (let i = 0; i < regionList.length; i++) {
if(regionList[i].ID== this.cityID){ if (regionList[i].ID == this.cityID) {
let cityList = regionList[i].cityList; let cityList = regionList[i].cityList;
for(let i=0;i<cityList.length;i++){ for (let i = 0; i < cityList.length; i++) {
if(cityList[i].ID== this.areaID){ if (cityList[i].ID == this.areaID) {
cityList[i].areaList = data; cityList[i].areaList = data;
} }
} }
...@@ -238,383 +223,364 @@ ...@@ -238,383 +223,364 @@
} }
}) })
}, },
handleCheckAllChange(index, id, e){ handleCheckAllChange(index, id, e) {
let regionList = this.regionList; let regionList = this.regionList;
this.provinceindex = index; this.provinceindex = index;
this.cityID = id; this.cityID = id;
if(regionList[index].indeterminate==true){ if (regionList[index].indeterminate == true) {
regionList[index].indeterminate=false; regionList[index].indeterminate = false;
regionList[index].ischeckAll=true; regionList[index].ischeckAll = true;
} }
if (e == false) {
if(e==false){ if (regionList[index].hasOwnProperty('cityList') == false) {
this.getCitylist(false, false)
if(regionList[index].hasOwnProperty('cityList')==false) { } else {
this.getCitylist(false,false)
}else {
let cityList = regionList[index].cityList; let cityList = regionList[index].cityList;
for (let i = 0; i < cityList.length; i++) {
for(let i=0;i<cityList.length;i++){ cityList[i].ischeckAll = false
cityList[i].ischeckAll=false
} }
this.cityList = cityList this.cityList = cityList
let areaList = this.cityList[this.cityindex].areaList let areaList = this.cityList[this.cityindex].areaList
for(let i=0;i<areaList.length;i++){ for (let i = 0; i < areaList.length; i++) {
areaList[i].ischeckAll=false areaList[i].ischeckAll = false
} }
this.areaList = areaList this.areaList = areaList
} }
}else { } else {
if(regionList[index].hasOwnProperty('cityList')==false) { if (regionList[index].hasOwnProperty('cityList') == false) {
this.getCitylist(true) this.getCitylist(true)
}else { } else {
let cityList = regionList[index].cityList; let cityList = regionList[index].cityList;
for(let i=0;i<cityList.length;i++){ for (let i = 0; i < cityList.length; i++) {
cityList[i].ischeckAll=true cityList[i].ischeckAll = true
} }
this.cityList = cityList this.cityList = cityList
let areaList = this.cityList[this.cityindex].areaList let areaList = this.cityList[this.cityindex].areaList
for(let i=0;i<areaList.length;i++){ for (let i = 0; i < areaList.length; i++) {
areaList[i].ischeckAll=true areaList[i].ischeckAll = true
} }
this.areaList = areaList this.areaList = areaList
} }
} }
this.toParent() this.toParent()
}, },
showcity(index, id){ showcity(index, id) {
let regionList = this.regionList; let regionList = this.regionList;
this.provinceindex = index; this.provinceindex = index;
this.cityID = id; this.cityID = id;
if(regionList[index].hasOwnProperty('cityList')==false){ if (regionList[index].hasOwnProperty('cityList') == false) {
this.getCitylist() this.getCitylist()
}else { } else {
this.cityList = regionList[index].cityList; this.cityList = regionList[index].cityList;
this.areaList = this.cityList[0].areaList; this.areaList = this.cityList[0].areaList;
} }
}, },
handleCityAllChange(index, id, e) {
handleCityAllChange(index, id, e){
let regionList = this.regionList; let regionList = this.regionList;
this.cityindex = index; this.cityindex = index;
this.areaID = id; this.areaID = id;
//取消自己的勾的时候父级的勾改变 //取消自己的勾的时候父级的勾改变
let areaList = regionList[this.provinceindex].cityList[index].areaList; let areaList = regionList[this.provinceindex].cityList[index].areaList;
if(e==false){ if (e == false) {
if(regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList')==false){ if (regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList') == false) {
this.getareaIDlist(false,false) this.getareaIDlist(false, false)
}else { } else {
this.areaList = regionList[this.provinceindex].cityList[index].areaList; this.areaList = regionList[this.provinceindex].cityList[index].areaList;
} }
regionList[this.provinceindex].indeterminate=true; regionList[this.provinceindex].indeterminate = true;
regionList[this.provinceindex].ischeckAll=false; regionList[this.provinceindex].ischeckAll = false;
if(areaList!=undefined){ if (areaList != undefined) {
for(let i=0;i<areaList.length;i++){ for (let i = 0; i < areaList.length; i++) {
areaList[i].ischeckAll=false; areaList[i].ischeckAll = false;
} }
regionList[this.provinceindex].cityList[index].indeterminate=false regionList[this.provinceindex].cityList[index].indeterminate = false
} }
let all = true;
let all=true;
let cityList = this.regionList[this.provinceindex].cityList; let cityList = this.regionList[this.provinceindex].cityList;
if(cityList!=undefined){ if (cityList != undefined) {
for(let i=0;i<cityList.length;i++){ for (let i = 0; i < cityList.length; i++) {
if(cityList[i].ischeckAll==true){ if (cityList[i].ischeckAll == true) {
all=false all = false
} }
} }
} }
if (all == true) {
if(all==true){ this.regionList[this.provinceindex].indeterminate = false
this.regionList[this.provinceindex].indeterminate=false this.regionList[this.provinceindex].ischeckAll = false
this.regionList[this.provinceindex].ischeckAll=false
} }
if(areaList!=undefined){ if (areaList != undefined) {
for(let i=0;i<areaList.length;i++){ for (let i = 0; i < areaList.length; i++) {
areaList[i].ischeckAll=false areaList[i].ischeckAll = false
} }
} }
}else { } else {
if (regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList') == false) {
if(regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList')==false){
this.getareaIDlist(true) this.getareaIDlist(true)
}else { } else {
this.areaList = regionList[this.provinceindex].cityList[index].areaList; this.areaList = regionList[this.provinceindex].cityList[index].areaList;
} }
regionList[this.provinceindex].indeterminate=true; regionList[this.provinceindex].indeterminate = true;
regionList[this.provinceindex].ischeckAll=false; regionList[this.provinceindex].ischeckAll = false;
let all = true;
let all=true;
let cityList = this.regionList[this.provinceindex].cityList; let cityList = this.regionList[this.provinceindex].cityList;
if(cityList!=undefined){ if (cityList != undefined) {
for(let i=0;i<cityList.length;i++){ for (let i = 0; i < cityList.length; i++) {
if(cityList[i].ischeckAll==false){ if (cityList[i].ischeckAll == false) {
all=false all = false
} }
} }
} }
if (all == true) {
if(all==true){ this.regionList[this.provinceindex].indeterminate = false
this.regionList[this.provinceindex].indeterminate=false this.regionList[this.provinceindex].ischeckAll = true
this.regionList[this.provinceindex].ischeckAll=true
} }
if(areaList!=undefined){ if (areaList != undefined) {
for(let i=0;i<areaList.length;i++){ for (let i = 0; i < areaList.length; i++) {
areaList[i].ischeckAll=true areaList[i].ischeckAll = true
} }
} }
} }
this.toParent() this.toParent()
}, },
showarea(index, id){ showarea(index, id) {
let regionList = this.regionList; let regionList = this.regionList;
this.cityindex = index; this.cityindex = index;
this.areaID = id; this.areaID = id;
if(regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList')==false){//没有子级的时候加载 if (regionList[this.provinceindex].cityList[index].hasOwnProperty('areaList') == false) { //没有子级的时候加载
if(regionList[this.provinceindex].cityList[index].ischeckAll==true){ if (regionList[this.provinceindex].cityList[index].ischeckAll == true) {
this.getareaIDlist(true) this.getareaIDlist(true)
}else { } else {
this.getareaIDlist() this.getareaIDlist()
} }
}else { } else {
this.areaList = regionList[this.provinceindex].cityList[index].areaList; this.areaList = regionList[this.provinceindex].cityList[index].areaList;
} }
}, },
handleareaAllChange(index, id, e){ handleareaAllChange(index, id, e) {
let regionList = this.regionList; let regionList = this.regionList;
this.areaindex = index; this.areaindex = index;
let areaList= regionList[this.provinceindex].cityList[this.cityindex].areaList; let areaList = regionList[this.provinceindex].cityList[this.cityindex].areaList;
let cityList= regionList[this.provinceindex].cityList; let cityList = regionList[this.provinceindex].cityList;
if(e==false){ if (e == false) {
regionList[this.provinceindex].indeterminate=true regionList[this.provinceindex].indeterminate = true
regionList[this.provinceindex].cityList[this.cityindex].indeterminate=true regionList[this.provinceindex].cityList[this.cityindex].indeterminate = true
let areaAll = true
let areaAll=true for (let i = 0; i < areaList.length; i++) {
for(let i=0;i<areaList.length;i++){ if (areaList[i].ischeckAll == true) {
if(areaList[i].ischeckAll==true){ areaAll = false
areaAll=false
} }
} }
if(areaAll==true){ if (areaAll == true) {
regionList[this.provinceindex].cityList[this.cityindex].indeterminate=false; regionList[this.provinceindex].cityList[this.cityindex].indeterminate = false;
regionList[this.provinceindex].cityList[this.cityindex].ischeckAll=false; regionList[this.provinceindex].cityList[this.cityindex].ischeckAll = false;
let provinceAll = true;
let provinceAll =true; for (let i = 0; i < cityList.length; i++) {
for(let i=0;i<cityList.length;i++){ if (cityList[i].ischeckAll == true || cityList[i].indeterminate == true) {
if(cityList[i].ischeckAll==true || cityList[i].indeterminate==true){ provinceAll = false
provinceAll=false
} }
} }
if(provinceAll== true){ if (provinceAll == true) {
regionList[this.provinceindex].indeterminate=false; regionList[this.provinceindex].indeterminate = false;
regionList[this.provinceindex].ischeckAll=false; regionList[this.provinceindex].ischeckAll = false;
} }
} }
} else {
}else { regionList[this.provinceindex].indeterminate = true
regionList[this.provinceindex].indeterminate=true regionList[this.provinceindex].cityList[this.cityindex].indeterminate = true
regionList[this.provinceindex].cityList[this.cityindex].indeterminate=true let areaAll = true
for (let i = 0; i < areaList.length; i++) {
if (areaList[i].ischeckAll == false) {
let areaAll=true areaAll = false
for(let i=0;i<areaList.length;i++){
if(areaList[i].ischeckAll==false){
areaAll=false
} }
} }
if(areaAll==true){ if (areaAll == true) {
regionList[this.provinceindex].cityList[this.cityindex].indeterminate=false; regionList[this.provinceindex].cityList[this.cityindex].indeterminate = false;
regionList[this.provinceindex].cityList[this.cityindex].ischeckAll=true; regionList[this.provinceindex].cityList[this.cityindex].ischeckAll = true;
let provinceAll =true; let provinceAll = true;
for(let i=0;i<cityList.length;i++){ for (let i = 0; i < cityList.length; i++) {
if(cityList[i].ischeckAll==false || cityList[i].indeterminate==true){ if (cityList[i].ischeckAll == false || cityList[i].indeterminate == true) {
provinceAll=false provinceAll = false
} }
} }
if(provinceAll== true){ if (provinceAll == true) {
regionList[this.provinceindex].indeterminate=false; regionList[this.provinceindex].indeterminate = false;
regionList[this.provinceindex].ischeckAll=true; regionList[this.provinceindex].ischeckAll = true;
} }
} }
} }
this.toParent() this.toParent()
}, },
toParent(){//传值给父组件 toParent() { //传值给父组件
let List=[]; let List = [];
let data= this.regionList let data = this.regionList
for(let i=0 ;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
if(data[i].ischeckAll==true && data[i].indeterminate==false && (data[i].hasOwnProperty('disabled')==false || data[i].disabled==false)){ //全选的情况 只穿省的ID if (data[i].ischeckAll == true && data[i].indeterminate == false && (data[i].hasOwnProperty('disabled') ==
List.push({'ID':0,'RegionId':data[i].ID,"RegionName":data[i].Name,'GrandpaID':0,'ParentID':0}) false || data[i].disabled == false)) { //全选的情况 只穿省的ID
} List.push({
if(data[i].indeterminate==true){//传市的ID 'ID': 0,
'RegionId': data[i].ID,
if(data[i].hasOwnProperty('cityList')==true){ "RegionName": data[i].Name,
'GrandpaID': 0,
'ParentID': 0
})
}
if (data[i].indeterminate == true) { //传市的ID
if (data[i].hasOwnProperty('cityList') == true) {
let citylist = data[i].cityList; let citylist = data[i].cityList;
for(let j= 0;j<citylist.length;j++){ for (let j = 0; j < citylist.length; j++) {
if(citylist[j].ischeckAll==true && citylist[j].indeterminate==false && (citylist[j].hasOwnProperty('disabled')==false || citylist[j].disabled==false)){ if (citylist[j].ischeckAll == true && citylist[j].indeterminate == false && (citylist[j].hasOwnProperty(
List.push({'ID':0,'RegionId':citylist[j].ID,"RegionName":citylist[j].Name,'GrandpaID':0,'ParentID':data[i].ID}) 'disabled') == false || citylist[j].disabled == false)) {
List.push({
'ID': 0,
'RegionId': citylist[j].ID,
"RegionName": citylist[j].Name,
'GrandpaID': 0,
'ParentID': data[i].ID
})
} }
if(citylist[j].indeterminate==true){ if (citylist[j].indeterminate == true) {
if(citylist[j].hasOwnProperty('areaList')==true){ if (citylist[j].hasOwnProperty('areaList') == true) {
let areaList = citylist[j].areaList; let areaList = citylist[j].areaList;
for(let z= 0;z<areaList.length;z++){ for (let z = 0; z < areaList.length; z++) {
if(areaList[z].ischeckAll==true && (areaList[z].hasOwnProperty('disabled')==false || areaList[z].disabled==false)){ if (areaList[z].ischeckAll == true && (areaList[z].hasOwnProperty('disabled') == false ||
List.push({'ID':0,'RegionId':areaList[z].ID,"RegionName":areaList[z].Name,'GrandpaID':data[i].ID,'ParentID':citylist[j].ID}) areaList[z].disabled == false)) {
List.push({
'ID': 0,
'RegionId': areaList[z].ID,
"RegionName": areaList[z].Name,
'GrandpaID': data[i].ID,
'ParentID': citylist[j].ID
})
} }
} }
} }
} }
} }
} }
} }
} }
this.$emit('event1', List) this.$emit('event1', List)
}, },
citylist(Id,index){ citylist(Id, index) {
let getlist =this.getlist; let getlist = this.getlist;
let isbanlist =this.isbanlist; let isbanlist = this.isbanlist;
let msg = {'Id':Id} let msg = {
this.apipost("/api/Destination/GetChildList",msg , res => { 'Id': Id
}
this.apipost("/api/Destination/GetChildList", msg, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data; let data = res.data.data;
for(let i=0;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
if(getlist.length>0){ if (getlist.length > 0) {
for(let j=0;j<getlist.length;j++){ for (let j = 0; j < getlist.length; j++) {
if (getlist[j].RegionId == data[i].ID || getlist[j].RegionId == this.regionList[index].ID) {
if(getlist[j].RegionId==data[i].ID || getlist[j].RegionId==this.regionList[index].ID){ data[i].ischeckAll = true;
data[i].ischeckAll=true; data[i].indeterminate = false;
data[i].indeterminate=false; this.arealist(data[i].ID, i, index)
this.arealist(data[i].ID,i,index) } else if (getlist[j].ParentID == data[i].ID) {
data[i].ischeckAll = false;
}else if(getlist[j].ParentID==data[i].ID){ data[i].indeterminate = true;
data[i].ischeckAll=false; this.arealist(data[i].ID, i, index)
data[i].indeterminate=true; } else if (data[i].hasOwnProperty('ischeckAll') == false && data[i].hasOwnProperty(
this.arealist(data[i].ID,i,index) 'indeterminate') == false) {
}else if(data[i].hasOwnProperty('ischeckAll')==false && data[i].hasOwnProperty('indeterminate')==false){ data[i].ischeckAll = false;
data[i].ischeckAll=false; data[i].indeterminate = false;
data[i].indeterminate=false;
} }
} }
}else { } else {
data[i].ischeckAll=false; data[i].ischeckAll = false;
data[i].indeterminate=false; data[i].indeterminate = false;
} }
if(isbanlist.length>0 && this.isban==true){ if (isbanlist.length > 0 && this.isban == true) {
for(let j=0;j<isbanlist.length;j++){ for (let j = 0; j < isbanlist.length; j++) {
if(isbanlist[j].RegionId==data[i].ID || isbanlist[j].RegionId==this.cityID){ if (isbanlist[j].RegionId == data[i].ID || isbanlist[j].RegionId == this.cityID) {
data[i].disabled=true; data[i].disabled = true;
} else if (isbanlist[j].ParentID == data[i].ID) {
}else if(isbanlist[j].ParentID==data[i].ID){ data[i].disabled = true;
data[i].disabled=true;
} }
} }
} }
} }
this.regionList[index].cityList = data this.regionList[index].cityList = data
} else { } else {
this.Info(res.data.message); this.Info(res.data.message);
} }
}) })
}, },
arealist(Id,index,Pindex){ arealist(Id, index, Pindex) {
let getlist =this.getlist; let getlist = this.getlist;
let isbanlist =this.isbanlist; let isbanlist = this.isbanlist;
let msg = {'Id':Id} let msg = {
this.apipost("/api/Destination/GetChildList",msg , res => { 'Id': Id
}
this.apipost("/api/Destination/GetChildList", msg, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
let data = res.data.data; let data = res.data.data;
for(let i=0;i<data.length;i++){ for (let i = 0; i < data.length; i++) {
if (getlist.length > 0) {
if(getlist.length>0){ for (let j = 0; j < getlist.length; j++) {
for(let j=0;j<getlist.length;j++){ if (getlist[j].RegionId == this.regionList[Pindex].ID || getlist[j].RegionId == data[i].ID ||
getlist[j].RegionId == this.regionList[Pindex].cityList[index].ID) {
if(getlist[j].RegionId==this.regionList[Pindex].ID || getlist[j].RegionId==data[i].ID || getlist[j].RegionId == this.regionList[Pindex].cityList[index].ID){ data[i].ischeckAll = true;
data[i].ischeckAll=true; } else if (data[i].hasOwnProperty('ischeckAll') == false) {
}else if(data[i].hasOwnProperty('ischeckAll')==false ){ data[i].ischeckAll = false;
data[i].ischeckAll=false;
} }
} }
}else { } else {
data[i].ischeckAll=false; data[i].ischeckAll = false;
} }
if (isbanlist.length > 0 && this.isban == true) {
if(isbanlist.length>0 && this.isban==true){ for (let j = 0; j < isbanlist.length; j++) {
for(let j=0;j<isbanlist.length;j++){ if (isbanlist[j].RegionId == this.cityID || isbanlist[j].RegionId == data[i].ID || isbanlist[j]
if(isbanlist[j].RegionId==this.cityID || isbanlist[j].RegionId==data[i].ID || isbanlist[j].RegionId == this.areaID){ .RegionId == this.areaID) {
data[i].disabled=true; data[i].disabled = true;
} }
} }
} }
} }
this.regionList[Pindex].cityList[index].areaList = data this.regionList[Pindex].cityList[index].areaList = data
} else { } else {
this.Info(res.data.message); this.Info(res.data.message);
} }
}) })
}, },
Receive(val,val2=[],isban=false){ Receive(val, val2 = [], isban = false) {
this.regionList = []; this.regionList = [];
this.loading=true; this.loading = true;
this.provinceindex=0; this.provinceindex = 0;
this.cityindex=0; this.cityindex = 0;
this.areaindex=0; this.areaindex = 0;
this.cityID=0; this.cityID = 0;
this.areaID=0; this.areaID = 0;
this.getlist= val; this.getlist = val;
this.isbanlist= val2; this.isbanlist = val2;
this.isban = isban this.isban = isban
setTimeout(() => {
setTimeout(()=>{
this.getprovince() this.getprovince()
},2000) }, 2000)
} }
}, },
mounted() {
mounted(){
// this.getprovince()
}, },
} }
</script> </script>
<style scoped> <style scoped>
.regionChoice{ .regionChoice {
width: 880px; width: 880px;
height: 400px; height: 400px;
/*margin-left: 100px;*/
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
} }
.regionChoice .item{
.regionChoice .item {
overflow-y: auto; overflow-y: auto;
border: 1px solid #EBEEF5; border: 1px solid #EBEEF5;
border-radius: 4px; border-radius: 4px;
...@@ -623,12 +589,15 @@ ...@@ -623,12 +589,15 @@
height: 400px; height: 400px;
} }
.regionChoice .item_b{
.regionChoice .item_b {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
} }
.regionChoice .item_b span{
.regionChoice .item_b span {
margin-left: 15px; margin-left: 15px;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment