|
@ -7,49 +7,133 @@ toastr.options = {
|
|
|
new Vue({
|
|
|
el: '#main',
|
|
|
data: {
|
|
|
type:0,//0:高血压 1:糖尿病 2:孕产妇 3:65岁以上老年人人数
|
|
|
jsonUrl:"../../../dataJson/jumingHealthJson/高血压人群.json",
|
|
|
jsonData:null,
|
|
|
city: '上饶市',
|
|
|
town: [],
|
|
|
cityVal:"0",
|
|
|
diseaseData:[],
|
|
|
mapData:null,
|
|
|
zhongDianData:[],
|
|
|
gaoFaData:null,
|
|
|
siWangData:[],
|
|
|
skipShow:0,
|
|
|
lineHeightIndex:null,
|
|
|
},
|
|
|
mounted: function() {
|
|
|
this.bindEvents();
|
|
|
this.initData();
|
|
|
this.getJsonData();
|
|
|
// this.getJsonData();
|
|
|
},
|
|
|
methods: {
|
|
|
initData:function(){
|
|
|
var vm = this;
|
|
|
$(".div-mask-layer").hide();
|
|
|
var reqUrl = [{url: bigDataAPI.getCityArea,reqType: 'get',data: {}},
|
|
|
{url:bigDataAPI.getMapJingWeiDuInfo,reqType: 'get',data:{}},//上饶地图经纬度数据
|
|
|
{url: bigDataAPI.getNoChartTemplateData,reqType: 'get',data: {viewCodeStr: "VIEW_13_0026"}},//地图数据
|
|
|
{url: bigDataAPI.getNoChartTemplateData,reqType: 'get',data: {viewCodeStr: "VIEW_13_0027"}},//按月环比糖尿病患者人数
|
|
|
var vm = this,townStr="",viewMapJsonGXY = null,viewMapJsonTNB = null,viewMapJsonYCF = null,viewMapJsonGL = null,zhongDianViewCodeMonth="",zhongDianViewCodeYear="";
|
|
|
$(".div-mask-layer").show();
|
|
|
//封装参数
|
|
|
vm.cityVal!="0"?townStr = "town="+vm.cityVal+";":townStr = "";//vm.cityVal=0 查询整个市
|
|
|
var diseaseLinkAgeFliter = "quotaDate >= '" + getLastMonthStartDate() + "' and quotaDate <= '" + getLastMonthEndDate() + "';";//疾病列表参数(上个月数据)
|
|
|
var zhongDianLinkageFilter = "quotaDate >= '" + getLastYearMonthArray()[11] + "' and quotaDate <= '" + getLastYearMonthArray()[0] + "';";//重点人群参数(过去12个月数据)
|
|
|
// var gaoFaLinkageFilterMonth = "quotaDate >= '" + getMonthStartDate() + "' and quotaDate <= '" + getMonthEndDate() + "';";//高发疾病参数(本月数据)
|
|
|
// var gaoFaLinkageFilterYear = "quotaDate >= '" + getYearStartDate() + "' and quotaDate <= '" + getYearEndDate() + "';";//高发疾病参数(本年数据)
|
|
|
var gaoFaLinkageFilterMonth = "quotaDate >= '2017-06-01' and quotaDate <= '2017-06-30';";//高发疾病参数(本月数据)
|
|
|
var gaoFaLinkageFilterYear = "quotaDate >= '2017-01-01' and quotaDate <= '2017-12-31';";//高发疾病参数(本年数据)
|
|
|
viewMapJsonGXY = {VIEW_13_0013:townStr,VIEW_13_0036:townStr+diseaseLinkAgeFliter,VIEW_13_0037:townStr+diseaseLinkAgeFliter};//高血压
|
|
|
viewMapJsonTNB = {VIEW_13_0026:townStr,VIEW_13_0034:townStr+diseaseLinkAgeFliter,VIEW_13_0027:townStr+diseaseLinkAgeFliter};//糖尿病
|
|
|
viewMapJsonYCF = {VIEW_16_0001:townStr,VIEW_16_0002:townStr+diseaseLinkAgeFliter,VIEW_16_0003:townStr+diseaseLinkAgeFliter};//孕产妇
|
|
|
viewMapJsonGL = {VIEW_15_0001:townStr,VIEW_15_0011:townStr+diseaseLinkAgeFliter,VIEW_15_0008:townStr+diseaseLinkAgeFliter};//65岁以上
|
|
|
if(vm.type==0){//高血压
|
|
|
zhongDianViewCodeMonth = "VIEW_13_0017";//重点人群+按月
|
|
|
zhongDianViewCodeYear = "VIEW_13_0022";//重点人群+按年
|
|
|
}else if(vm.type==1){//糖尿病
|
|
|
zhongDianViewCodeMonth = "VIEW_13_0028";//重点人群+按月
|
|
|
zhongDianViewCodeYear = "VIEW_13_0029";//重点人群+按年
|
|
|
}else if(vm.type==2){//孕产妇
|
|
|
zhongDianViewCodeMonth = "VIEW_16_0004";//重点人群+按月
|
|
|
zhongDianViewCodeYear = "VIEW_16_0005";//重点人群+按年
|
|
|
}else if(vm.type==3){//65岁以上
|
|
|
zhongDianViewCodeMonth = "VIEW_15_0009";//重点人群+按月
|
|
|
zhongDianViewCodeYear = "VIEW_15_0010";//重点人群+按年
|
|
|
}
|
|
|
//整理请求参数集合
|
|
|
var reqUrl = [
|
|
|
{url: bigDataAPI.getCityArea,reqType: 'get',data: {}},
|
|
|
{url:bigDataAPI.getMapJingWeiDuInfo,reqType: 'get',data:{}},//上饶地图经纬度数据
|
|
|
{url:bigDataAPI.getMoreNoChartTemplateData,reqType: 'get',data:{viewMapJson:JSON.stringify(viewMapJsonGXY)}},//高血压疾病数据+地图
|
|
|
{url:bigDataAPI.getMoreNoChartTemplateData,reqType: 'get',data:{viewMapJson:JSON.stringify(viewMapJsonTNB)}},//糖尿病疾病数据+地图
|
|
|
{url:bigDataAPI.getMoreNoChartTemplateData,reqType: 'get',data:{viewMapJson:JSON.stringify(viewMapJsonYCF)}},//孕产妇疾病数据+地图
|
|
|
{url:bigDataAPI.getMoreNoChartTemplateData,reqType: 'get',data:{viewMapJson:JSON.stringify(viewMapJsonGL)}},//65岁以上疾病数据+地图
|
|
|
{url: bigDataAPI.getTemplateDataByViewCode,reqType: 'get',data: {viewCode: zhongDianViewCodeMonth,linkageFilter:zhongDianLinkageFilter+townStr}},//重点人群+按月
|
|
|
{url: bigDataAPI.getTemplateDataByViewCode,reqType: 'get',data: {viewCode: zhongDianViewCodeYear,linkageFilter:zhongDianLinkageFilter+townStr}},//重点人群+按年
|
|
|
{url: bigDataAPI.getTemplateDataByViewCode,reqType: 'get',data: {viewCode: "VIEW_13_0007",linkageFilter:gaoFaLinkageFilterMonth+townStr,limitCondition:10}},//高发疾病排行----筛选条件:全部+本月(默认),其他情况数据在组件里请求数据
|
|
|
{url: bigDataAPI.getTemplateDataByViewCode,reqType: 'get',data: {viewCode: "VIEW_13_0007",linkageFilter:gaoFaLinkageFilterYear+townStr,limitCondition:10}},//高发疾病排行----筛选条件:全部+本年(默认),其他情况数据在组件里请求数据
|
|
|
{url: bigDataAPI.getTemplateDataByViewCode,reqType: 'get',data: {viewCode: "VIEW_13_0008",linkageFilter:townStr}},//死亡原因
|
|
|
];
|
|
|
httpRequest.getReqPromises(reqUrl).then(function(datas) {
|
|
|
debugger
|
|
|
vm.town = [{
|
|
|
"name": "上饶市",
|
|
|
"id": "0"
|
|
|
}].concat(datas[0]);
|
|
|
vm.town = [{"name": "上饶市","id": "0"}].concat(datas[0]);
|
|
|
echarts.registerMap('上饶',datas[1]);
|
|
|
vm.setMapData(datas[2]);
|
|
|
vm.diseaseData.push(datas[2]);
|
|
|
vm.diseaseData.push(datas[3]);
|
|
|
vm.diseaseData.push(datas[4]);
|
|
|
vm.diseaseData.push(datas[5]);
|
|
|
if(vm.type==0){//高血压
|
|
|
vm.setMapData(datas[2]);
|
|
|
}else if(vm.type==1){//糖尿病
|
|
|
vm.setMapData(datas[3]);
|
|
|
}else if(vm.type==2){//孕产妇
|
|
|
vm.setMapData(datas[4]);
|
|
|
}else if(vm.type==3){//65岁以上
|
|
|
vm.setMapData(datas[5]);
|
|
|
}
|
|
|
vm.zhongDianData = [datas[6],datas[7]];//重点人群+按月、重点人群+按年
|
|
|
vm.gaoFaData = [datas[8],datas[9]];//高发疾病排行----筛选条件:本月(默认)、本年
|
|
|
vm.siWangData = datas[10];//死亡原因
|
|
|
$(".div-mask-layer").hide();
|
|
|
})
|
|
|
},
|
|
|
setMapData: function(data) {
|
|
|
var optionData = [];
|
|
|
_.map(data.obj.VIEW_13_0026, function(item) {
|
|
|
if(item.firstColumn != "合计") {
|
|
|
optionData.push({
|
|
|
name: item.townName,
|
|
|
value: parseInt(item.HC_13_0017)
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
var optionData = [],vm=this;
|
|
|
if(vm.type==0){//高血压
|
|
|
data = data.successFlg?data.detailModelList&&data.detailModelList[1].VIEW_13_0036 || []:[];
|
|
|
_.map(data, function(item) {
|
|
|
if(item.firstColumn != "合计") {
|
|
|
optionData.push({
|
|
|
name: item.townName,
|
|
|
value: parseInt(item.HC_13_0021)
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}else if(vm.type==1){//糖尿病
|
|
|
data = data.successFlg?data.detailModelList&&data.detailModelList[1].VIEW_13_0034 || []:[];
|
|
|
_.map(data, function(item) {
|
|
|
if(item.firstColumn != "合计") {
|
|
|
optionData.push({
|
|
|
name: item.townName,
|
|
|
value: parseInt(item.HC_13_0017)
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}else if(vm.type==2){//孕产妇
|
|
|
data = data.successFlg?data.detailModelList&&data.detailModelList[1].VIEW_15_0011 || []:[];
|
|
|
_.map(data, function(item) {
|
|
|
if(item.firstColumn != "合计") {
|
|
|
optionData.push({
|
|
|
name: item.townName,
|
|
|
value: parseInt(item.HC_15_1006)
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}else if(vm.type==3){//65岁以上
|
|
|
data = data.successFlg?data.detailModelList&&data.detailModelList[1].VIEW_15_0011 || []:[];
|
|
|
_.map(data, function(item) {
|
|
|
if(item.firstColumn != "合计") {
|
|
|
optionData.push({
|
|
|
name: item.townName,
|
|
|
value: parseInt(item.HC_15_1006)
|
|
|
})
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
var options = optionData;
|
|
|
this.mapData = {
|
|
|
data: options,
|
|
@ -70,17 +154,8 @@ new Vue({
|
|
|
bindEvents:function(){
|
|
|
var vm = this;
|
|
|
EventBus.$on("refresh-json-data", function(arg) {
|
|
|
var type = arg.type;//0:高血压 1糖尿病 2孕产妇 365岁以上老年人人数
|
|
|
if(type==0){
|
|
|
vm.jsonUrl = "../../../dataJson/jumingHealthJson/高血压人群.json";
|
|
|
}else if(type==1){
|
|
|
vm.jsonUrl = "../../../dataJson/jumingHealthJson/糖尿病人群.json";
|
|
|
}else if(type==2){
|
|
|
vm.jsonUrl = "../../../dataJson/jumingHealthJson/孕产妇人群.json";
|
|
|
}else if(type==3){
|
|
|
vm.jsonUrl = "../../../dataJson/jumingHealthJson/65岁以上老年人人数.json";
|
|
|
}
|
|
|
vm.getJsonData();
|
|
|
vm.type = arg.type;//0:高血压 1:糖尿病 2:孕产妇 3:65岁以上老年人人数
|
|
|
vm.initData();
|
|
|
});
|
|
|
},
|
|
|
setCity(item){
|
|
@ -114,18 +189,14 @@ new Vue({
|
|
|
this.jsonData = data;
|
|
|
},
|
|
|
city:function(value){
|
|
|
var that =this;
|
|
|
that.lineHeightIndex =value;
|
|
|
// debugger
|
|
|
this.town.map(function(v,i){
|
|
|
if(v.townName == value) {
|
|
|
that.refreshAllData(v.result);
|
|
|
|
|
|
|
|
|
var vm =this;
|
|
|
vm.lineHeightIndex =value;
|
|
|
this.town.map(function(v,i){
|
|
|
if(v.name == value) {
|
|
|
vm.cityVal = v.id;
|
|
|
}
|
|
|
})
|
|
|
|
|
|
|
|
|
vm.initData();
|
|
|
}
|
|
|
}
|
|
|
});
|