| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280 | 
							- var reqList = [{}]; //记录请求的参数和url,用于后退时使用
 
- var colors={"0":"#5b9db5","1":"#ed7d31","2":"#a5a5a5",
 
- 	"3":"#ffc000","4":"#44c274","5":"#70ad47",
 
- 	"6":"#255e91","7":"#9e480e","8":"#7e7e7e","9":"#997300","10":"#264478","11":"#43682b","12":"#5b9db5"}
 
- Vue.use(Vuedals.default);
 
- new Vue({
 
- 	el: "#main",
 
- 	data: {
 
-         isloading:false,  //加载中
 
-         start:"",
 
-         end:"",
 
- 		pieData:[],    //饼图数据
 
- 		tabnumber:0,
 
- 		tabledata0:[],   //表格数据	
 
- 		topData:{},
 
- 		//请求页面所需参数
 
- 		levelList:[{level:"4",areaLevel:"2"},{level:"3",areaLevel:"3"},{level:"2",areaLevel:"4"}],  //两种搜索,地区等级对比
 
- 		areaLevel:"",  // 2、市,3、区,4、社区,5、团队
 
- 		initareaLevel:"",
 
- 		initlevel: '',
 
- 		initarea: '',
 
- 		level: '',
 
- 		area: '',
 
- 		areaTitle: '',
 
- 		lowLevel: '',
 
- 		initlowLevel:"",
 
- 		lowCode: '',
 
- 		chooseYear: '',
 
- 		userRole: '',
 
- 		pieShow:true,
 
- 		pieShow1:true,
 
- 		reqListLength:1,
 
- 	},
 
- 	components: {
 
- 		vuedals: Vuedals.Component
 
- 	},
 
- 	mounted: function () {
 
- 		var vm=this
 
- 		//初始化数据
 
- 		initData(vm);
 
- 	},
 
- 	methods: {
 
- 		getData:function(isNext,type){  //是否下转
 
- 			var vm = this
 
- 			var params={
 
- 				areaLevel: vm.areaLevel,
 
- 				level: vm.level,
 
- 				area: vm.area,
 
- 				endDate: vm.end,
 
- 				startDate: vm.start,
 
- 				lowLevel: vm.lowLevel,
 
- 				areaTitle:vm.areaTitle
 
- 			}
 
- 			loadData([0,1,2,3], vm); //刷新数据
 
- 			if(isNext){
 
- 				//存储请求所带的参数
 
- 				reqList.push(params);
 
- 				vm.reqListLength=reqList.length
 
- 			}else{
 
- 				reqList[reqList.length-1]=params
 
- 				vm.reqListLength=reqList.length
 
- 			}
 
- 		},
 
- 		//表格tab切换/下转
 
- 		getnewdata:function(arg){
 
- 			var vm = this
 
- 			vm.lowLevel=arg.lowLevel||""
 
- 			if(arg.level){
 
- 				vm.level = arg.level
 
- 				vm.areaLevel = _.find(vm.levelList,{level:vm.level}).areaLevel
 
- 			}
 
- 			if(arg.area){
 
- 				vm.area = arg.area
 
- 			}
 
- 			if(arg.areaTitle){
 
- 				vm.areaTitle = arg.areaTitle
 
- 			}
 
- 			vm.getData(arg.level)   //有传level,说明是下转
 
- 		},
 
- 		//重新搜索
 
- 		initSearchHandle: function (arg) {
 
- 			var vm=this
 
- 			vm.start = arg.start
 
- 			vm.end = arg.end
 
- 			//搜索时,取消下转记录
 
- 			vm.area=vm.initarea
 
- 			vm.areaLevel=vm.initareaLevel
 
- 			vm.level=vm.initlevel
 
- 			vm.lowLevel = vm.initlowLevel
 
- 			reqList=[{}]; //搜索时清空历史记录,重新搜索
 
- 			vm.getData()
 
- 			vm.initTable()
 
- 		},
 
- 		showTab:function(){
 
- 		},
 
- 		backClick:function(){
 
- 			var vm=this
 
- 			if (reqList.length == 1) {
 
- 				history.go(-1);
 
- 			} else {
 
- 				var preInfo = reqList.pop();
 
- 				var info = reqList[reqList.length - 1];
 
- 				vm.areaLevel = info.areaLevel;
 
- 				vm.level = info.level;
 
- 				vm.area = info.area;
 
- 				vm.lowLevel = info.lowLevel;
 
- 				vm.getData()
 
- 				
 
- 				vm.$refs.tableRef0.changeTab({level:vm.level,lowlevel:vm.lowLevel})   //表格tab
 
- 			}
 
- 		},
 
- 		bindEvent:function(){
 
- 			var vm=this
 
- 			//监听后退按钮的操作
 
- 			EventBus.$on("back-click", function (arg) {
 
- 				EventBus.$emit('update-statistics-time', {}); //更新统计时间
 
- 				vm.backClick()
 
- 			});
 
- 			//监听页面刷新
 
- 			EventBus.$on("refresh-click", function (arg) {
 
- 				EventBus.$emit('update-statistics-time', {}); //更新统计时间
 
- 				initData(vm)
 
- 			});
 
- 			$("#main").removeClass("c-hide");
 
- 		},
 
- 		initTable:function(){
 
- 			var vm=this
 
- 			vm.$refs.tableRef0.initTable({
 
-     			tabList:[{name:"各区",level:"4",lowlevel:"3",isShow:true},{name:"社区",level:"3",lowlevel:"4",isShow:true},{name:"团队",level:"2",lowlevel:"5",isShow:true}],
 
- 				//表格表头
 
- 				headers:[{thead:"排名",param:"name",canclick:true},{thead:"访视人数",param:"rehabilitationTotalAmount0"}],
 
- 				tabnumber:vm.tabnumber
 
- 			})
 
- 		},
 
-     },
 
- })
 
- function initData(vm) {
 
- 	//获得缓存中缓存的角色权限
 
- 	var userRole = window.sessionStorage.getItem("selectedRole");
 
- 	if (!userRole) {
 
- 		return false;
 
- 	}
 
- 	vm.userRole = JSON.parse(userRole);
 
- 	//level:2、市,3、区,4、社区,5、团队
 
- 	vm.initareaLevel = vm.areaLevel = vm.userRole.code == '350200' ? 2 : vm.userRole.code.length == 6 ? 3 : 4;
 
- 	vm.initlevel = vm.level = vm.userRole.code == '350200' ? 4 : vm.userRole.code.length == 6 ? 3 : 2;
 
- 	vm.lowLevel = vm.initlowLevel = vm.userRole.code == '350200' ? 3 : vm.userRole.code.length == 6 ? 4 : 5;
 
- 				
 
- 	vm.initarea =vm.area = vm.userRole.code;
 
- 	vm.areaTitle = vm.userRole.name;
 
- 	
 
- 	vm.tabnumber=vm.areaLevel==4?1:vm.areaLevel==3?2:3   //表格显示的tab数
 
- 	
 
- 	//初始化时间
 
- 	EventBus.$emit("init-FilterDate")
 
- 	vm.bindEvent()
 
- }
 
- function initReqParams(vm) {
 
- 	var reqParam = [{
 
- 		url: "statistics/getHomeVisitTotalHead",   //头部
 
- 		reqType: 'get',
 
- 		data:{
 
- 			startDate: vm.start,
 
- 			endDate: vm.end,
 
- 			area: vm.area,
 
- 		    level: vm.areaLevel, //2、市,3、区,4、社区,5、团队
 
- 		    index:150,
 
- 		},
 
- 	},{
 
- 		url: "statistics/getSpecialistTypeCircle",   //访视对象分析150
 
- 		reqType: 'get',
 
- 		data:{
 
- 			startDate: vm.start,
 
- 			endDate: vm.end,
 
- 			area: vm.area,
 
- 		    level: vm.areaLevel, //等级,4 市 3区 2社区 1团队
 
- 		    index:150,
 
- 		},
 
- 	},{
 
- 		url: "statistics/getSpecialistTypeCircle",   //访视完成情况分析152
 
- 		reqType: 'get',
 
- 		data:{
 
- 			startDate: vm.start,
 
- 			endDate: vm.end,
 
- 			area: vm.area,
 
- 		    level: vm.areaLevel, //等级,4 市 3区 2社区 1团队
 
- 		    index:152,
 
- 		},
 
- 	},{
 
- 		url: "statistics/rehabilitationLowLevel",   //列表151
 
- 		reqType: 'get',
 
- 		data:{
 
- 			startDate: vm.start,
 
- 			endDate: vm.end,
 
- 			area: vm.area,
 
- 		    level: vm.areaLevel, //等级,4 市 3区 2社区 1团队
 
- 		    sort: 1,
 
- 		    lowLevel:vm.lowLevel||"",  //等级 5:团队 4社区机构 3区级 2市级,
 
- 		    index:151,
 
- 		},
 
- 	}];
 
- 	return reqParam;
 
- }
 
- function loadData(loadArr, vm) {
 
- 	//获取其他请求的参数
 
- 	var reqParams = initReqParams(vm),
 
- 		reqPromise = [],
 
- 		newArr = []; //记录非顶部请求的请求数组
 
- 	for (i = 0; i < loadArr.length; i++) {
 
- 		var j = loadArr[i];
 
- 		var param = reqParams[j];
 
- 		reqPromise.push(httpRequest.get(param.url, {
 
- 			data: param.data
 
- 		}));
 
- 		newArr.push(loadArr[i]);
 
- 	}
 
- 	vm.isloading=true    
 
- 	if (reqPromise.length > 0) {
 
- 		Promise.all(reqPromise).then(function (ress) {
 
- 			var res1, res2, res3, res4, res5;
 
- 			for (var i = 0; i < loadArr.length; i++) {
 
- 				var j = loadArr[i] + 1;
 
- 				if (j == 1) { res1 = ress[i]; }
 
- 				if (j == 2) { res2 = ress[i]; }
 
- 				if (j == 3) { res3 = ress[i]; }
 
- 				if (j == 4) { res4 = ress[i]; }
 
- 				if (j == 5) { res5 = ress[i]; }
 
- 			}
 
- 			if(res1&& res1.status == 200){
 
- 				vm.topData=res1.data
 
- 			}
 
- 			if(res2&& res2.status == 200){
 
- 				if(res2.data.length==0||(res2.data.length==1&&!res2.data[0].slaveKey1Name)){
 
- 					vm.pieShow=false
 
- 				}else{
 
- 					vm.pieShow=true
 
- 					vm.$nextTick(function(){
 
- 						handlePieData({elId:"pieChart", arry:res2.data, title:{}, colors:colors,position:['30%', '51%'], radius:['70%', '90%'],nameparam:"slaveKey1Name",param:"total"})
 
- 					})
 
- 				}
 
- 			}
 
- 			if(res3&& res3.status == 200){
 
- 				if(res3.data.length==0||(res3.data.length==1&&!res3.data[0].slaveKey1Name)){
 
- 					vm.pieShow1=false
 
- 				}else{
 
- 					vm.pieShow1=true
 
- 					vm.$nextTick(function(){
 
- 						handlePieData({elId:"pieChart1", arry:res3.data, title:{}, colors:colors,position:['30%', '51%'], radius:['70%', '90%'],nameparam:"slaveKey1Name",param:"total"})
 
- 					})
 
- 				}
 
- 			}
 
- 			if(res4&& res4.status == 200){
 
- 				vm.tabledata0=listHandle(res4.data,"rehabilitationTotalAmount0", vm);
 
- 			}
 
- 			vm.isloading=false
 
- 		})
 
- 	}
 
- }
 
- function listHandle(list,param, vm){
 
-     var topArr = [];
 
-     if(list.length==1&&!list[0].name){
 
-     	list=[]
 
-     }
 
-     topArr = soreRank(getKeyValueArr(list, param||"amount"));
 
-     var newlist = _.map(list, function(o, index){
 
-     	o.rank=topArr[index]
 
-     	return o
 
-     });
 
-     EventBus.$emit("render-area-data",{
 
-     });
 
-     return newlist
 
- }
 
 
  |