Browse Source

修改测试bug

linehang 7 years ago
parent
commit
026783b5de

+ 38 - 4
app/statistics/js/renew-progress.js

@ -52,8 +52,12 @@ new Vue({
				this.level = arg.level;
				this.lowLevel = arg.lowLevel;
				this.area = arg.area;
				this.areaTitle = arg.areaTitle;
				loadData([0, 1, 2], this);
			}
			EventBus.$emit('update-area-name', {
				areaName: this.areaTitle
			});
			//存储请求所带的参数
			reqList.push({
				level: this.level,
@ -120,14 +124,39 @@ new Vue({
				onClose: function(data) {
					vm.lowCode = data.lowCode;
					vm.contentHtml = data.contentHtml;
					vm.startDate = getStartDate(vm.chooseYear);
					vm.endDate = getEndDate(vm.chooseYear);
					//请求参数重置,页面类型重新开始
					vm.level = vm.userRole.code == '350200' ? 4 : vm.userRole.code.length == 6 ? 3 : 2;
					vm.area = vm.userRole.code;
					vm.areaTitle = vm.userRole.name;
					EventBus.$emit('update-area-name', {
						areaName: vm.areaTitle
					});
					vm.selectedDateType = 1;
					//然后清空请求列表数组
					reqList.splice(0, reqList.length);
					loadData([0, 1, 2], vm); //刷新数据
					//存储请求所带的参数
					reqList.push({
						level: vm.level,
						area: vm.area,
						areaTitle: vm.areaTitle,
						index: vm.index,
						endDate: vm.endDate,
						startDate: vm.startDate,
						lowLevel: vm.lowLevel,
						lowCode: vm.lowCode,
						analysisType: vm.analysisType
					});
					EventBus.$emit('update-dimension-name', {
						dimensionVal: data.name
					}); //更新维度名称
					EventBus.$emit('update-statistics-time', {}); //更新统计时间
					
				},
				component: 'renew-progress-filter',
				props: {
@ -257,8 +286,13 @@ function getTopTagDatas(data, vm) {
		name: '转签总量',
		value: vm.switchRange.switchRateAll
	}];
	drawPieChart('renewMain', renewArr, ['#12b7f5', '#ebebf5']); //续签率
	drawPieChart('switchMain', switchArr, ['#12b7f5', '#ebebf5']); //转签率
	var renewChart = drawPieChart('renewMain', renewArr, ['#12b7f5', '#ebebf5']); //续签率
	var switchChart = drawPieChart('switchMain', switchArr, ['#12b7f5', '#ebebf5']); //转签率
	window.onresize = function() {
		renewChart.resize();
		switchChart.resize();
		window.lineCharts.resize(); //日周月折线图
	}
}
function loadData(loadArr, vm) {

+ 51 - 24
app/statistics/js/resident-analysis-charts.js

@ -22,8 +22,8 @@ function jiaoFeiData(yiJiaoFeiData, weiJiaoFeiData) {
		series: [{
			type: 'pie',
			legendHoverLink: false,
            hoverAnimation: false,
            avoidLabelOverlap: false,
			hoverAnimation: false,
			avoidLabelOverlap: false,
			radius: ['50%', '70%'],
			center: ['50%', '50%'], //饼图的位置 
			data: [{
@ -75,8 +75,8 @@ function healthData(jkrqdata, hbrqdata, gwrqdata, hfqrqdata, wbzdata) {
		series: [{
			type: 'pie',
			legendHoverLink: false,
            hoverAnimation: false,
            avoidLabelOverlap: false,
			hoverAnimation: false,
			avoidLabelOverlap: false,
			radius: ['50%', '70%'],
			center: ['25%', '50%'], //饼图的位置 
			data: [{
@ -126,10 +126,10 @@ function healthData(jkrqdata, hbrqdata, gwrqdata, hfqrqdata, wbzdata) {
}
//服务分布
function serviceData(arr) {
function serviceData(nameArr, rateArr, colorList, year) {
	serviceChart = echarts.init(document.getElementById('serviceChart'));
	var serviceOptions = option = {
		calculable: true,
	var serviceOptions = {
		//		calculable: true,
		grid: {
			y: 25,
			y2: 30,
@ -151,7 +151,18 @@ function serviceData(arr) {
			},
			axisLabel: {
				show: true,
				color: '#666'
				interval: 0,
				textStyle: {
					color: '#333',
					fontSize: 14,
				},
				formatter: function(val) {
					if(val.length > 4) {
						return val.substring(0, 4) + '…'
					} else {
						return val
					}
				},
			},
			splitArea: {
				show: false
@ -159,10 +170,11 @@ function serviceData(arr) {
			splitLine: {
				show: false
			},
			data: ['普通人群', '老年人', '高血压', '糖尿病']
			data: nameArr
		}],
		yAxis: [{
			type: 'value',
			show: false,
			axisLine: {
				show: true,
				lineStyle: {
@ -187,29 +199,44 @@ function serviceData(arr) {
			}
		}],
		series: [{
			name: '服务分布比例',
			name: '',
			type: 'bar',
			barWidth: 20,
			barMinHeight: 1,
			label: {
				normal: {
					show: true,
					position: 'top',
					formatter: '{c}%',
					textStyle: {
						color: '#333',
						fontSize: 14,
					},
				}
			},
			itemStyle: {
				normal: {
					color: function(params) {
						var colorList = ['#12B7F5', '#61eb41', '#CD67FD', '#fb5dab'];
						return colorList[params.dataIndex]
						return colorList[params.dataIndex];
					},
					label: {
						show: true,
						position: 'top',
						color: '#666',
						formatter: function(params) {
							return params.value + '%';
						}
					},
					barBorderRadius: 0
				}
			},
			data: arr
			data: rateArr
		}]
	};
	if(year != "2016") {
		serviceOptions.dataZoom = [{
			type: 'inside',
			orient: 'horizontal',
			filterMode: 'none',
			zoomLock: true,
			zoomOnMouseWheel: false,
			preventDefaultMouseMove: false,
			xAxisIndex: 0,
			start: 0,
			end: 40
		}]
	}
	serviceChart.clear();
	serviceChart.setOption(serviceOptions);
}
@ -222,8 +249,8 @@ function sexData(femaleData, maleData) {
		series: [{
			type: 'pie',
			legendHoverLink: false,
            hoverAnimation: false,
            avoidLabelOverlap: false,
			hoverAnimation: false,
			avoidLabelOverlap: false,
			radius: ['50%', '70%'],
			center: ['50%', '50%'], //饼图的位置 
			data: [{

+ 124 - 79
app/statistics/js/sign-progress.js

@ -21,19 +21,19 @@ new Vue({
		chooseYear: '',
		userRole: '',
		analysisType: "1", // 筛选维度的id, 1-按任务,2-按人口,3-高血压,4-糖尿病,5-65岁以上人群
		analysisName:"按任务",
		signRateData:{
			signRateText:"",
			signRate:"",
			signAmount:"",
			signRateAll:"",
			completeRateText:"",
			completeRate:"",
			completeAmount:"",
			completeRateAll:""
		analysisName: "按任务",
		signRateData: {
			signRateText: "",
			signRate: "",
			signAmount: "",
			signRateAll: "",
			completeRateText: "",
			completeRate: "",
			completeAmount: "",
			completeRateAll: ""
		},
		yearHtml:"",
		contentHtml:""
		yearHtml: "",
		contentHtml: ""
	},
	components: {
		vuedals: Vuedals.Component
@ -52,8 +52,12 @@ new Vue({
				this.level = arg.level;
				this.lowLevel = arg.lowLevel;
				this.area = arg.area;
				this.areaTitle = arg.areaTitle;
				loadData([0, 1, 2], this);
			}
			EventBus.$emit('update-area-name', {
				areaName: this.areaTitle
			});
			//存储请求所带的参数
			reqList.push({
				level: this.level,
@ -63,7 +67,7 @@ new Vue({
				endDate: this.endDate,
				startDate: this.startDate,
				lowLevel: this.lowLevel,
				lowCode:this.lowCode,
				lowCode: this.lowCode,
				analysisType: this.analysisType,
			})
		}
@ -84,7 +88,7 @@ new Vue({
			endDate: this.endDate,
			startDate: this.startDate,
			lowLevel: this.lowLevel,
			lowCode:this.lowCode,
			lowCode: this.lowCode,
			analysisType: this.analysisType
		});
@ -92,7 +96,7 @@ new Vue({
		var vm = this;
		//监听后退按钮的操作
		EventBus.$on("back-click", function(arg) {
			EventBus.$emit('update-statistics-time', {});//更新统计时间
			EventBus.$emit('update-statistics-time', {}); //更新统计时间
			if(reqList.length == 1) {
				history.go(-1);
			} else {
@ -110,35 +114,64 @@ new Vue({
		});
		//监听页面刷新
		EventBus.$on("refresh-click", function(arg) {
			EventBus.$emit('update-statistics-time', {});//更新统计时间
			EventBus.$emit('update-statistics-time', {}); //更新统计时间
			loadData([0, 1, 2], vm);
		});
		
		//弹出筛选框
		EventBus.$on('filter-click', function(arg) {
			//弹框显示筛选条件
            Vuedals.Bus.$emit('new', {
                title: '条件筛选',
                onClose:function(data){
					vm.analysisType = data.id;
			Vuedals.Bus.$emit('new', {
				title: '条件筛选',
				onClose: function(data) {
					vm.chooseYear = data.chooseYear;
					vm.startDate = getStartDate(vm.chooseYear);
					vm.endDate = getEndDate(vm.chooseYear);
					vm.lowCode = data.lowCode;
					vm.yearHtml = data.yearHtml;
					vm.contentHtml = data.contentHtml;
					vm.chooseYear = data.year;
					vm.startDate = getStartDate(vm.chooseYear);
					vm.endDate = getEndDate(vm.chooseYear);
					
					loadData([0, 1, 2], vm);//刷新数据
					EventBus.$emit('update-statistics-year', {selectDate:data.year + "年"});//更新年份
					EventBus.$emit('update-dimension-name', {dimensionVal:data.name});//更新维度名称
					EventBus.$emit('update-statistics-time', {});//更新统计时间
                },
                component: 'sign-progress-filter',
                props: {
                    yearHtml:vm.yearHtml,
                    contentHtml:vm.contentHtml
                }
            });
					//请求参数重置,页面类型重新开始
					vm.level = vm.userRole.code == '350200' ? 4 : vm.userRole.code.length == 6 ? 3 : 2;
					vm.area = vm.userRole.code;
					vm.areaTitle = vm.userRole.name;
					EventBus.$emit('update-area-name', {
						areaName: vm.areaTitle
					});
					vm.selectedDateType = 1;
					//然后清空请求列表数组
					reqList.splice(0, reqList.length);
					loadData([0, 1, 2], vm); //刷新数据
					//存储请求所带的参数
					reqList.push({
						level: vm.level,
						area: vm.area,
						areaTitle: vm.areaTitle,
						index: vm.index,
						endDate: vm.endDate,
						startDate: vm.startDate,
						lowLevel: vm.lowLevel,
						lowCode: vm.lowCode,
						analysisType: vm.analysisType
					});
					EventBus.$emit('update-statistics-year', {
						selectDate: vm.chooseYear + "年"
					}); //更新年份
					EventBus.$emit('update-statistics-time', {}); //更新统计时间
					EventBus.$emit('update-dimension-name', {
						dimensionVal: data.name
					}); //更新维度名称
				},
				component: 'sign-progress-filter',
				props: {
					yearHtml: vm.yearHtml,
					contentHtml: vm.contentHtml
				}
			});
		});
	}
})
@ -162,7 +195,11 @@ function initData(vm) {
	vm.startDate = getStartDate(vm.chooseYear);
	vm.endDate = getEndDate(vm.chooseYear);
	//更新头部信息
	EventBus.$emit('update-all-prompt-info', {areaName:vm.areaTitle,selectDate:vm.chooseYear+"年",dimensionVal:vm.analysisName});
	EventBus.$emit('update-all-prompt-info', {
		areaName: vm.areaTitle,
		selectDate: vm.chooseYear + "年",
		dimensionVal: vm.analysisName
	});
}
function initReqParams(vm) {
@ -170,7 +207,7 @@ function initReqParams(vm) {
	if(vm.lowCode) {
		vm.index = 17;
	}
	
	reqParam = [{
		url: "/statistics/sign_info",
		reqType: 'get',
@ -212,33 +249,38 @@ function initReqParams(vm) {
	return reqParam;
}
function getTopTagDatas(data,vm) {
	vm.signRateData.signRateText = data.signRate.rate.substring(0,data.signRate.rate.length-2) + "%"
	vm.signRateData.signRate = parseFloat(data.signRate.rate)/100;
function getTopTagDatas(data, vm) {
	vm.signRateData.signRateText = data.signRate.rate.substring(0, data.signRate.rate.length - 2) + "%"
	vm.signRateData.signRate = parseFloat(data.signRate.rate) / 100;
	vm.signRateData.signAmount = data.signRate.sign;
	vm.signRateData.signRateAll = data.signRate.people;
	
	vm.signRateData.completeRateText = data.signTaskRate.rate.substring(0,data.signTaskRate.rate.length-2) + "%"
	vm.signRateData.completeRate = parseFloat(data.signTaskRate.rate)/100;
	vm.signRateData.completeRateText = data.signTaskRate.rate.substring(0, data.signTaskRate.rate.length - 2) + "%"
	vm.signRateData.completeRate = parseFloat(data.signTaskRate.rate) / 100;
	vm.signRateData.completeAmount = data.signTaskRate.sign;
	vm.signRateData.completeRateAll = data.signTaskRate.people;
	 var signArr = [{
            name: '签约量',
            value: vm.signRateData.signAmount
        },{
            name: '签约总量',
            value: vm.signRateData.signRateAll
        }];
        
        var completeArr = [{
            name: '完成量',
            value: vm.signRateData.completeAmount
        },{
            name: '完成总量',
            value: vm.signRateData.completeRateAll
        }];
	 drawPieChart('signMain', signArr, ['#12b7f5', '#ebebf5']);//签约率
	 drawPieChart('completeMain', completeArr, ['#12b7f5', '#ebebf5']);//完成率
	var signArr = [{
		name: '签约量',
		value: vm.signRateData.signAmount
	}, {
		name: '人口数',
		value: vm.signRateData.signRateAll
	}];
	var completeArr = [{
		name: '完成量',
		value: vm.signRateData.completeAmount
	}, {
		name: '目标量',
		value: vm.signRateData.completeRateAll
	}];
	var signChart = drawPieChart('signMain', signArr, ['#12b7f5', '#ebebf5']); //签约率
	var completeChart = drawPieChart('completeMain', completeArr, ['#12b7f5', '#ebebf5']); //完成率
	window.onresize = function() {
		signChart.resize();
		completeChart.resize();
		window.lineCharts.resize(); //日周月折线图
	}
}
function loadData(loadArr, vm) {
@ -271,7 +313,7 @@ function loadData(loadArr, vm) {
			}
			if(res1 && res1.status == 200) {
				getTopTagDatas(res1.data,vm);
				getTopTagDatas(res1.data, vm);
			}
			if(res2 && res2.status == 200) {
				handleSecondPanelData(res2.data, vm);
@ -292,7 +334,7 @@ function handleSecondPanelData(data, vm) {
	var xDatas = [],
		yDatas = [],
		names = [],
		taskNum = data.index_1.taskNum,
		taskNum = vm.lowCode ? data.index_17.taskNum : data.index_1.taskNum,
		colors = ['#12b7f5'],
		index_names = {
			'index_1': '总签约人数'
@ -305,7 +347,7 @@ function handleSecondPanelData(data, vm) {
		var yData = _.map(data[p].data, function(o) {
			return o.amount;
		});
		 
		xDatas.push(xData);
		yDatas.push(yData);
	}
@ -315,8 +357,8 @@ function handleSecondPanelData(data, vm) {
		xData: xDatas[0],
		yDatas: yDatas,
		colors: colors,
		markLineValue:taskNum,
		markLineName:"目标量"
		markLineValue: taskNum,
		markLineName: "目标量"
	});
}
@ -327,18 +369,18 @@ function listHandle(data, vm) {
		topArr = soreRank(getKeyValueArr(list, 'amount'));
		var arr = _.map(list, function(o, index) {
			var cols = [o.name];
			if(vm.analysisType=="2" && vm.level>2 && vm.lowLevel!=1){//按人口
			if(vm.analysisType == "2" && vm.level > 2 && vm.lowLevel != 1) { //按人口
				cols.push(o.num);
			}else{
			} else {
				cols.push(o.amount);
			}
            if(vm.level>2 && vm.lowLevel!=1){
	          	cols.push(o.signTaskNum);
	          	cols.push(parseFloat(o.rate).toFixed(2)+"%");
	        }else if(vm.chooseYear!="2016"){
	          cols.push(o.signRegulationNum);
	        }
			
			if(vm.level > 2 && vm.lowLevel != 1) {
				cols.push(o.signTaskNum);
				cols.push(parseFloat(o.rate).toFixed(2) + "%");
			} else if(vm.chooseYear != "2016") {
				cols.push(o.signRegulationNum);
			}
			return {
				rank: topArr[index],
				code: o.code,
@ -346,10 +388,13 @@ function listHandle(data, vm) {
				cols: cols
			}
		});
		
		var headers = ["排名", (vm.analysisType=="2"?"人口数":"签约量"), "目标率","当前签约率"];//analysisType=2 为按人口
		if(vm.lowLevel==1 || vm.level==2){//团队
			headers = ["排名", (vm.analysisType=="2"?"人口数":"签约量"), "调控量"];
		var headers = ["排名", (vm.analysisType == "2" ? "人口数" : "签约量"), "目标率", "当前签约率"]; //analysisType=2 为按人口
		if(vm.lowLevel == 1 || vm.level == 2) { //团队
			if(vm.chooseYear =="2016"){
				headers = ["排名", (vm.analysisType == "2" ? "人口数" : "签约量")];
			}else{
				headers = ["排名", (vm.analysisType == "2" ? "人口数" : "签约量"), "调控量"];
			}
		}
		EventBus.$emit("render-area-data", {

+ 4 - 0
app/statistics/js/two-rate-analysis.js

@ -51,8 +51,12 @@ new Vue({
				this.level = arg.level;
				this.lowLevel = arg.lowLevel;
				this.area = arg.area;
				this.areaTitle = arg.areaTitle;
				loadData([0, 1], this);
			}
			EventBus.$emit('update-area-name', {
				areaName: this.areaTitle
			});
			//存储请求所带的参数
			reqList.push({
				level: this.level,

+ 4 - 1
app/statistics/sign-progress.html

@ -27,7 +27,7 @@
							<div class="c-f16 c-12b7f5 mt15">{{signRateData.signRateText}}</div>
							<div class="c-f14 c-666">签约率</div>
						</div>
						<div id="signMain" class="c-100 height-120"></div>
						<div id="signMain" class="c-100 height-120 c-t-center"></div>
						<div class="c-f12 c-999 div-data-value">
							<span class="c-f12 c-12b7f5 qianyuelv">{{signRateData.signAmount}}</span>/
							<span class="c-f12 c-333 qianyuezong">{{signRateData.signRateAll}}</span>
@ -46,6 +46,8 @@
					</div>
				</div>
			</div>
			<!-- 折线图 -->
			<line-chart v-on:getlinedata="getNewLineData" class="mlr8"></line-chart>
			<!-- 底部区域图 -->
			<area-data-panel class="mt20 mlr8" v-on:getnewdata="getAreaData"></area-data-panel>
			<!--模态框组件-->
@ -65,6 +67,7 @@
		<script src="../../component/common/vuedals.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/header-tab.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/header-prompt.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/line-chart.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/area-data-panel.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/team-info.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../component/statistics/sign-progress-filter.js" type="text/javascript" charset="utf-8"></script>

+ 1 - 0
component/statistics/line-chart.js

@ -195,5 +195,6 @@
//          console.log(JSON.stringify(options));
        $("#lineChart").removeAttr('_echarts_instance_')
        lineCharts.setOption(options);
        window.lineCharts = lineCharts;
    }
})()

+ 2 - 1
component/statistics/resident-analysis-filter.js

@ -124,13 +124,14 @@
         },
         confirmClick:function(){
         	var vm = this;
         	debugger
         	console.log("area:"+vm.resultCode)
         	console.log("name:"+vm.curName)
         	console.log("level:"+vm.selectLevel)
         	console.log("year:"+$("#signYear .c-33.active").attr("data-val"))
			//触发刷新
			this.$emit('vuedals:close', {
				areaCode: vm.resultCode,
				areaCode: vm.resultCode==""?vm.curCode:vm.resultCode,
				name: vm.curName,
				level: vm.selectLevel,
				year: $("#signYear .c-33.active").attr("data-val"),

+ 157 - 99
component/statistics/resident-analysis.js

@ -89,49 +89,48 @@ Vue.component('resident-analysis', {
	props: [],
	data: function() {
		return {
			yiJiaoFeiData:"",
			yiJiaoFeiPer:"",
			weiJiaoFeiData:"",
			weiJiaoFeiPer:"",
			jianKangRQPer:"",
			huanBingRQPer:"",
			gaoWeiRQPer:"",
			huiFuQiRQPer:"",
			weiBiaoZRQPer:"",
			maleData:"",
			malePer:"",
			femaleData:"",
			femalePer:"",
			chooseYear:"",//选择年份值
			curLevel:null,//当前level值
			curCode:null,//当前选中区域的code值
			curName:null,//当前选中区域名称值
			endDate:null,
			userRole:null,
			roleLevel:null,
			filterHtml:null,
			yearHtml:null
			yiJiaoFeiData: "",
			yiJiaoFeiPer: "",
			weiJiaoFeiData: "",
			weiJiaoFeiPer: "",
			jianKangRQPer: "",
			huanBingRQPer: "",
			gaoWeiRQPer: "",
			huiFuQiRQPer: "",
			weiBiaoZRQPer: "",
			maleData: "",
			malePer: "",
			femaleData: "",
			femalePer: "",
			chooseYear: "", //选择年份值
			curLevel: null, //当前level值
			curCode: null, //当前选中区域的code值
			curName: null, //当前选中区域名称值
			endDate: null,
			userRole: null,
			roleLevel: null,
			filterHtml: null,
			yearHtml: null
		}
	},
	mounted: function() {
		var vm = this;
	    var now = new Date();
	    if(now.getMonth() >= 6){
	        vm.chooseYear = now.getFullYear();
	    }else{
	        vm.chooseYear = now.getFullYear() - 1;
	    }
	    vm.userRole = JSON.parse(window.localStorage.getItem("selectedRole"));
		vm.roleLevel = vm.userRole.code == '350200'  ? 4 : vm.userRole.code.length==6 ? 3 : 2;
	    vm.endDate = getEndDate(vm.chooseYear);
		var now = new Date();
		if(now.getMonth() >= 6) {
			vm.chooseYear = now.getFullYear();
		} else {
			vm.chooseYear = now.getFullYear() - 1;
		}
		vm.userRole = JSON.parse(window.localStorage.getItem("selectedRole"));
		vm.roleLevel = vm.userRole.code == '350200' ? 4 : vm.userRole.code.length == 6 ? 3 : 2;
		vm.endDate = getEndDate(vm.chooseYear);
		vm.curLevel = vm.roleLevel;
		vm.curCode = vm.userRole.code;
		vm.curName = vm.userRole.name;
		
    	
    	//初始化数据
		//初始化数据
		initData(vm);
		
		//监听后退按钮的操作
		EventBus.$on("back-click", function(arg) {
			history.go(-1);
@ -140,60 +139,99 @@ Vue.component('resident-analysis', {
		EventBus.$on('refresh-click', function(arg) {
			initData(vm);
		});
		
		//弹出筛选框
		EventBus.$on('filter-click', function(arg) {
			//弹框显示筛选条件
            Vuedals.Bus.$emit('new', {
                title: '条件筛选',
                onClose:function(data){
                    vm.chooseYear = data.year;
                    vm.curName = data.name;
                    vm.curCode = data.areaCode;
                    vm.curLevel = data.level;
                    vm.endDate = getEndDate(vm.chooseYear);
                    vm.yearHtml = data.yearHtml;
                     vm.filterHtml = data.filterHtml;
                    initData(vm);//刷新数据
                },
                component: 'resident-analysis-filter',
                props: {
                    curLevel: vm.roleLevel,
                    curCode: vm.userRole.code,
                    curName: vm.userRole.name,
                    yearHtml:vm.yearHtml,
                    filterHtml:vm.filterHtml
                }
            });
			Vuedals.Bus.$emit('new', {
				title: '条件筛选',
				onClose: function(data) {
					vm.chooseYear = data.year;
					vm.curName = data.name;
					vm.curCode = data.areaCode;
					vm.curLevel = data.level;
					vm.endDate = getEndDate(vm.chooseYear);
					vm.yearHtml = data.yearHtml;
					vm.filterHtml = data.filterHtml;
					initData(vm); //刷新数据
				},
				component: 'resident-analysis-filter',
				props: {
					curLevel: vm.roleLevel,
					curCode: vm.userRole.code,
					curName: vm.userRole.name,
					yearHtml: vm.yearHtml,
					filterHtml: vm.filterHtml
				}
			});
		});
		
		
	},
	methods: {
		
	}
})
//请求接口数据
function initData(vm) {
	EventBus.$emit('update-area-name', {areaName:vm.curName});//更新区域名称
	EventBus.$emit('update-statistics-time', {});//更新统计时间
	EventBus.$emit('update-statistics-year', {selectDate:vm.chooseYear+"年"});//更新统计年份
	var url = "/statistics/leveltwo_increment",reqPromise = [];
	
	reqPromise.push(httpRequest.get(url, {data: {endDate:vm.endDate,area:vm.curCode,level:vm.curLevel,index:16}}));
	reqPromise.push(httpRequest.get(url, {data: {endDate:vm.endDate,area:vm.curCode,level:vm.curLevel,index:15}}));
	reqPromise.push(httpRequest.get(url, {data: {endDate:vm.endDate,area:vm.curCode,level:vm.curLevel,index:vm.chooseYear==2016?7:36}}));
	reqPromise.push(httpRequest.get(url, {data: {endDate:vm.endDate,area:vm.curCode,level:vm.curLevel,index:6}}));
	reqPromise.push(httpRequest.get(url, {data: {endDate:vm.endDate,area:vm.curCode,level:vm.curLevel,index:8}}));
	EventBus.$emit('update-area-name', {
		areaName: vm.curName
	}); //更新区域名称
	EventBus.$emit('update-statistics-time', {}); //更新统计时间
	EventBus.$emit('update-statistics-year', {
		selectDate: vm.chooseYear + "年"
	}); //更新统计年份
	var url = "/statistics/leveltwo_increment",
		reqPromise = [];
	reqPromise.push(httpRequest.get(url, {
		data: {
			endDate: vm.endDate,
			area: vm.curCode,
			level: vm.curLevel,
			index: 16
		}
	}));
	reqPromise.push(httpRequest.get(url, {
		data: {
			endDate: vm.endDate,
			area: vm.curCode,
			level: vm.curLevel,
			index: 15
		}
	}));
	reqPromise.push(httpRequest.get(url, {
		data: {
			endDate: vm.endDate,
			area: vm.curCode,
			level: vm.curLevel,
			index: vm.chooseYear == "2016" ? 7 : 36
		}
	}));
	reqPromise.push(httpRequest.get(url, {
		data: {
			endDate: vm.endDate,
			area: vm.curCode,
			level: vm.curLevel,
			index: 6
		}
	}));
	reqPromise.push(httpRequest.get(url, {
		data: {
			endDate: vm.endDate,
			area: vm.curCode,
			level: vm.curLevel,
			index: 8
		}
	}));
	Promise.all(reqPromise).then(function(datas) {
		var jiaoFeiArr = datas[0],
		healthArr = datas[1],
		serviceArr = datas[2],
		sexArr = datas[3],
		ageArr = datas[4];
		
			healthArr = datas[1],
			serviceArr = datas[2],
			sexArr = datas[3],
			ageArr = datas[4];
		//缴费情况处理
		if(jiaoFeiArr.status == "200") {
			var data = jiaoFeiArr.data.index_16;
@ -218,9 +256,9 @@ function initData(vm) {
					}
				}
			})
			jiaoFeiData(yiJiaoFeiData,weiJiaoFeiData);
			jiaoFeiData(yiJiaoFeiData, weiJiaoFeiData);
		}
		
		//健康分布处理
		if(healthArr.status == "200") {
			var data = healthArr.data.index_15;
@ -234,42 +272,62 @@ function initData(vm) {
			vm.huanBingRQPer = parseFloat(data[2].rate).toFixed(2);
			vm.gaoWeiRQPer = parseFloat(data[3].rate).toFixed(2);
			vm.huiFuQiRQPer = parseFloat(data[4].rate).toFixed(2);
			healthData(jkrqdata,hbrqdata,gwrqdata,hfqrqdata,wbzdata);
			healthData(jkrqdata, hbrqdata, gwrqdata, hfqrqdata, wbzdata);
		}
		
		//服务分布处理
		if(serviceArr.status=="200"){
			var data=serviceArr.data["index_"+(vm.chooseYear==2016?7:36)];
			var amountArr = [];
			$.each(data, function(i, v) {
				amountArr.push(v.amount);
			})
			serviceData(amountArr);			
		if(serviceArr.status == "200") {
			var data = serviceArr.data["index_" + (vm.chooseYear == "2016" ? 7 : 36)];
			var colors = "#42C7FF,#FFC84C,#FB5DAB,#CD67FD,#795548,#607d8b,#ff5722,#cddc39,#9e9e9e,#3f51b5,#f44336,#9c27b0".split(',');
			var nameArr=[];
			var rateArr =[];
			if(vm.chooseYear == "2016") {
				$.each(data, function(i, v) {
					if(v.code == 1 || v.code == 2 || v.code == 3 || v.code == 7) {
						v.rate = parseFloat(v.rate).toFixed(2);
						nameArr.push(v.name);
						rateArr.push(v.rate);
					}
				})
				serviceData(nameArr,rateArr,colors.slice(0, nameArr.length),vm.chooseYear);
			}else{
				arry = _.chain(data).filter(function(v) {
									return !_.contains(["0","2","13"],v.code)
								}).map(function(v) {
									v.rate = parseFloat(v.rate).toFixed(2);
									return {"value":v.rate, "name":v.name}
								}).value();
				$.map(arry,function(item,index){
					nameArr.push(item.name)
					rateArr.push(item.value)
				})
				serviceData(nameArr,rateArr,colors.slice(0, nameArr.length),vm.chooseYear);
			}
		}
		
		//性别情况处理
		if(sexArr.status=="200"){
		if(sexArr.status == "200") {
			var data = sexArr.data.index_6;
			var femaleData,maleData;
			var femaleData, maleData;
			$.each(data, function(i, v) {
				if(v.code=="1"){//女
				if(v.code == "1") { //女
					femaleData = v.amount;
					vm.femaleData = v.amount;
					vm.femalePer = parseFloat(v.rate).toFixed(2)+"%";
				}else{//男
					vm.femalePer = parseFloat(v.rate).toFixed(2) + "%";
				} else { //男
					maleData = v.amount;
					vm.maleData = v.amount;
					vm.malePer = parseFloat(v.rate).toFixed(2)+"%";
					vm.malePer = parseFloat(v.rate).toFixed(2) + "%";
				}
			})
			sexData(femaleData,maleData);			
			sexData(femaleData, maleData);
		}
		
		
		//年龄分布处理
		if(ageArr.status=="200"){
			 var data=ageArr.data.index_8;
			 var amountArr = [];
		if(ageArr.status == "200") {
			var data = ageArr.data.index_8;
			var amountArr = [];
			$.each(data, function(i, v) {
				amountArr.push(v.amount);
			})

+ 1 - 1
component/statistics/sign-progress-filter.js

@ -70,7 +70,7 @@
	         	console.log("name:"+name)
				//触发刷新
				this.$emit('vuedals:close', {
					year: year,
					chooseYear: year,
					id: typeCode,
					lowCode: lowCode,
					name: name,