chenrj-PC\chenrj 8 лет назад
Родитель
Сommit
601eca4fa1

+ 195 - 63
VisualInspection/js/statistics/road_manage_statistics.js

@@ -8,6 +8,7 @@ var check_type;
 var select_road = $(".div-roadManage select").val();
 var array_year_score = new Array();
 var array_points = new Array();
+var array_points2 = new Array();
 var array_allStation = new Array();
 var array_allStation_score = new Array();
 var array_check_type = new Array();
@@ -83,7 +84,8 @@ $(function(){
 			init_company_year_assess("statistics/score/year/info",select_road);
 		}
 		// 查询图二
-		init_company_points_assess("statistics/lost/score/rate",select_month+'',select_road);
+		// init_company_points_assess("statistics/lost/score/rate",select_month+'',select_road);
+		init_company_points_assess("statistics/score/info",select_month.split('/')[1] +'');
 		// 查询图三
 		init_stationAll_rank("statistics/score/manage/tollgate/info",select_month+'',select_road);
 		// 查询图四
@@ -113,10 +115,15 @@ $(function(){
 	 * 初始化图二
 	 */
 	function init_company_points_assess(url,mon,select_road){
+		// var param = {
+		// 	"mth":mon,
+		// 	"dept_id":select_road,
+		// 	"queryType":1
+		// }
+		// initRqueset(url,param,2);
 		var param = {
-			"mth":mon,
-			"dept_id":select_road,
-			"queryType":1
+			"start_date": year+'-'+(mon-1)+'-25 23:00:00',
+			"end_date": year+'-'+ mon +'-25 23:00:00'
 		}
 		initRqueset(url,param,2);
 	}
@@ -228,6 +235,22 @@ $(function(){
         	return "" ;
     	});
 	}
+	
+	function push_data(data,names,propertyname,center_id){
+		for(var i=0;i<data.list.length;i++){
+			if(i<7 && center_id==30){
+				if(data.list[i][propertyname] !=0 )
+					array_points2.push({"value":( data.list[i][propertyname] ),"name": data.list[i].name+names});
+			}else if(i>6 && i<13 && center_id==31){
+				if(data.list[i][propertyname] !=0 )
+					array_points2.push({"value":( data.list[i][propertyname] ),"name": data.list[i].name+names});
+			}else if(i>12 && i<21 && center_id==32){
+				if(data.list[i][propertyname] !=0 )
+					array_points2.push({"value":( data.list[i][propertyname] ),"name": data.list[i].name+names});
+			}
+		}
+	}
+
     /**
 	 * 数组数据
 	 * @param {*} data 
@@ -259,14 +282,62 @@ $(function(){
 			else
 			min_year = 	eval("Math.min(" + array_year_score.toString() + ")").toFixed(0)-10;	
 		}else if(type == 2){
-			array_points.length=0;
+			array_points = [];
+			array_points2 = [] ;
 				if(data!=null){
-						array_points.push({"value": (data.people_num-(data.score_fifteen+data.score_fifty+data.score_over_fifty)),"name":'满分'});
-						array_points.push({"value": data.score_fifteen,"name":'0-15分'});
-						array_points.push({"value": data.score_fifty,"name":'15-50分'});
-						array_points.push({"value": data.score_over_fifty,"name":'50分以上'});
+						var temp = [0,0,0,0];
+						// array_points.push({"value": (data.people_num-(data.score_fifteen+data.score_fifty+data.score_over_fifty)),"name":'满分'});
+						// array_points.push({"value": data.score_fifteen,"name":'0-15分'});
+						// array_points.push({"value": data.score_fifty,"name":'15-50分'});
+						// array_points.push({"value": data.score_over_fifty,"name":'50分以上'});
+						// 过滤出道管的数据
+						
+						var center_id = $(".div-roadManage select").val() ;
+
+						for(var i=0;i<data.list.length;i++){
+							if(i<7 && center_id==30){
+								temp[0] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+								temp[1] += data.list[i].score_fifteen ;
+								temp[2] += data.list[i].score_fifty  ;
+								temp[3] += data.list[i].score_over_fifty ;
+							}else if(i<13 && center_id==31){
+								temp[0] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+								temp[1] += data.list[i].score_fifteen ;
+								temp[2] += data.list[i].score_fifty  ;
+								temp[3] += data.list[i].score_over_fifty ;
+							}else if(i<21 && center_id==32){
+								temp[0] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+								temp[1] += data.list[i].score_fifteen ;
+								temp[2] += data.list[i].score_fifty  ;
+								temp[3] += data.list[i].score_over_fifty ;
+							}
+						}
+
+						array_points.push({"value": (temp[0]),"name":'满分'});
+						array_points.push({"value": temp[1],"name":'0-15分'});
+						array_points.push({"value": temp[2],"name":'15-50分'});
+						array_points.push({"value": temp[3],"name":'50分以上'});
+					
+						for(var i=0;i<data.list.length;i++){
+							if(i<7 && center_id==30){
+								array_points2.push({"value":(data.list[i].checked_people_num - data.list[i].score_fifteen -
+												 data.list[i].score_fifty - data.list[i].score_over_fifty),"name": data.list[i].name+'满分'});
+							}else if(i>6 && i<13 && center_id==31){
+								array_points2.push({"value":(data.list[i].checked_people_num - data.list[i].score_fifteen -
+												 data.list[i].score_fifty - data.list[i].score_over_fifty),"name": data.list[i].name+'满分'});
+							}else if(i>12 && i<21 && center_id==32){
+								array_points2.push({"value":(data.list[i].checked_people_num - data.list[i].score_fifteen -
+												 data.list[i].score_fifty - data.list[i].score_over_fifty),"name": data.list[i].name+'满分'});
+							}
+						}
+						push_data(data,'0-15分',"score_fifteen",center_id);
+					
+						push_data(data,'15-50分',"score_fifty",center_id);
+						
+						push_data(data,'50分以上',"score_over_fifty",center_id);
+						
 				}else{
-					array_points.length=0;	
+					array_points = [];	
 				}
 			
 		}else if(type == 3){
@@ -576,63 +647,124 @@ $(function(){
 		 * 图二
 		 */
 		function roadManager_points_assess(){
-			option = {
-				tooltip : {
-					trigger: 'item',
-					formatter:  "道管中心考核扣分占比 <br/>{b} : {c}人 ({d}%)"
-				},
-				noDataLoadingOption :{
-                    text: '暂无数据',
-                    effect:'bubble',
-                    effectOption : {
-                        effect: {
-                            n: 0 //气泡个数为0 
-                        }
-                    },
-                    textStyle: {
-                        fontSize: 20,
-						fontFamily:'cursive',
-                        fontWeight: 'bold'
-                    }
-                },
-				toolbox: {
-					show : true,
-					feature : {
+			// option = {
+			// 	tooltip : {
+			// 		trigger: 'item',
+			// 		formatter:  "道管中心考核扣分占比 <br/>{b} : {c}人 ({d}%)"
+			// 	},
+			// 	noDataLoadingOption :{
+            //         text: '暂无数据',
+            //         effect:'bubble',
+            //         effectOption : {
+            //             effect: {
+            //                 n: 0 //气泡个数为0 
+            //             }
+            //         },
+            //         textStyle: {
+            //             fontSize: 20,
+			// 			fontFamily:'cursive',
+            //             fontWeight: 'bold'
+            //         }
+            //     },
+			// 	toolbox: {
+			// 		show : true,
+			// 		feature : {
 					
-						magicType : {
+			// 			magicType : {
 						
-							type: ['pie', 'funnel'],
-							option: {
-								funnel: {
-									x: '25%',
-									width: '50%',
-									funnelAlign: 'left',
-									max: 1548
+			// 				type: ['pie', 'funnel'],
+			// 				option: {
+			// 					funnel: {
+			// 						x: '25%',
+			// 						width: '50%',
+			// 						funnelAlign: 'left',
+			// 						max: 1548
+			// 					}
+			// 				}
+			// 			},
+			// 		}
+			// 	},
+			// 	calculable : true,
+			// 	series : [
+			// 		{
+			// 			name:'访问来源',
+			// 			type:'pie',
+			// 			radius : '55%',
+			// 			center: ['50%', '50%'],
+			// 			data:array_points,
+			// 			itemStyle:{ 
+			// 			normal:{ 
+			// 				label:{ 
+			// 					show: true, 
+			// 					formatter: '{b} :\n{c}人 ({d}%)'  
+			// 				}, 
+			// 				labelLine :{show:true} 
+			// 				} 
+			// 			} 
+			// 		}
+			// 	]
+			// };
+
+			option = {
+					tooltip : {
+						trigger: 'item',
+						formatter:  "道管中心考核扣分占比 <br/>{b} : {c}人 ({d}%)"
+					},
+					toolbox: {
+						show : true,
+					},
+					calculable : false,
+					series : [
+						{
+							name:'访问来源',
+							type:'pie',
+							selectedMode: 'single',
+							radius : [0, 50],
+							
+							// for funnel
+							x: '20%',
+							width: '40%',
+							funnelAlign: 'right',
+							max: 1548,
+							
+							itemStyle : {
+								normal : {
+									label : {
+										show: false, 
+							  			formatter: '{b} :\n{c}人 ({d}%)'
+									},
+									labelLine : {
+										show : false
+									}
 								}
-							}
+							},
+							data:array_points
 						},
-					}
-				},
-				calculable : true,
-				series : [
-					{
-						name:'访问来源',
-						type:'pie',
-						radius : '55%',
-						center: ['50%', '50%'],
-						data:array_points,
-						itemStyle:{ 
-						normal:{ 
-							label:{ 
-								show: true, 
-								formatter: '{b} :\n{c}人 ({d}%)'  
-							}, 
-							labelLine :{show:true} 
-							} 
-						} 
-					}
-				]
-			};
+						{
+							name:'访问来源',
+							type:'pie',
+							radius : [60, 100],
+							
+							// for funnel
+							x: '60%',
+							width: '35%',
+							funnelAlign: 'left',
+							max: 1048,
+							itemStyle : {
+								normal : {
+									label : {
+										show: true, 
+							  			formatter: '{b} :\n{c}人 ({d}%)'
+									},
+									labelLine : {
+										show : true
+									}
+								}
+							},
+							data:array_points2
+						}
+					]
+				};
                     
 			return option;
 		}

+ 130 - 12
VisualInspection/js/statistics/total_company_statistics.js

@@ -2,6 +2,8 @@ var year = new Date().getFullYear();
 var date = new Date().getDate();
 var array_year_score = new Array();
 var array_points = new Array();
+var array_points2 = new Array();
+
 var array_road = new Array();
 var array_road_score = new Array();
 var array_allStation = new Array();
@@ -50,8 +52,9 @@ $(function(){
 		var select_month = $("#month_date").val();
 		// console.log(select_month);
 		if(flag) init_company_year_assess();
-		// 查询图二
-		init_company_points_assess("statistics/lost/score/rate",select_month+'');
+		// 查询图二 
+	//	init_company_points_assess("statistics/lost/score/rate",select_month+'');
+		init_company_points_assess("statistics/score/info",select_month.split('/')[1] +'');
 		// 查询图三
 		init_road_manager_score_rank_three("statistics/score/center/manage/info",select_month+'');
 		// 查询图四
@@ -78,8 +81,8 @@ $(function(){
 	 */
 	function init_company_points_assess(url,mon){
 		var param = {
-			"mth":mon,
-			"queryType":0
+			"start_date": year+'-'+(mon-1)+'-25 23:00:00',
+			"end_date": year+'-'+ mon +'-25 23:00:00'
 		}
 		initRqueset(url,param,2);
 	}
@@ -178,6 +181,31 @@ $(function(){
     	});
 	}
 
+
+	function pushDate(data,names,appendname){
+		var temp = [0,0,0] ;
+		for(var i=0;i< data.list.length;i++){
+			if(i<7){
+				temp[0] +=  data.list[i][names]  ;
+
+			}else if(i<13){
+				temp[1] +=  data.list[i][names]  ;
+			}else if(i<21){
+				temp[2] +=  data.list[i][names]  ;
+			}
+		}
+
+		if(temp[0] != 0){
+			array_points2.push({"value": temp[0],"name":'连云港道管'+appendname});
+		}
+		if(temp[1] != 0){
+			array_points2.push({"value": temp[1],"name":'盐城道管'+appendname});
+		}
+		if(temp[2] != 0){
+			array_points2.push({"value": temp[2],"name":'南通道管'+appendname});
+		}
+	}
+
 	/**
 	 * 数组数据
 	 * @param {*} data 
@@ -209,12 +237,39 @@ $(function(){
 			else
 			min_year = 	eval("Math.min(" + array_year_score.toString() + ")").toFixed(0)-10;
 		}else if(type == 2){
-			array_points.length=0;
-			    if(data!=''){
-					array_points.push({"value": (data.people_num-(data.score_fifteen+data.score_fifty+data.score_over_fifty)),"name":'满分'});
-					array_points.push({"value": data.score_fifteen,"name":'0-15分'});
-					array_points.push({"value": data.score_fifty,"name":'15-50分'});
-					array_points.push({"value": data.score_over_fifty,"name":'50分以上'});
+			array_points2 = [] ;
+			array_points = [];
+			// console.log(data);
+			    if(data != null){
+					array_points.push({"value": (data.total0),"name":'满分'});
+					array_points.push({"value": data.total15,"name":'0-15分'});
+					array_points.push({"value": data.total50,"name":'15-50分'});
+					array_points.push({"value": data.totalOver50,"name":'50分以上'});
+					var temp = [0,0,0] ;
+				
+					// 满分
+					for(var i=0;i<data.list.length;i++){
+						if(i<7){
+							temp[0] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+
+						}else if(i<13){
+							temp[1] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+						}else if(i<21){
+							temp[2] += data.list[i].checked_people_num - data.list[i].score_fifteen - data.list[i].score_fifty - data.list[i].score_over_fifty ;
+						}
+					}  
+					if(temp[0] != 0){
+						array_points2.push({"value": temp[0],"name":'连云港道管满分'});
+					}
+					if(temp[1] != 0){
+						array_points2.push({"value": temp[1],"name":'盐城道管满分'});
+					}
+					if(temp[2] != 0){
+						array_points2.push({"value": temp[2],"name":'南通道管满分'});
+					}
+					pushDate(data,'score_fifteen','0-15分');
+					pushDate(data,'score_fifty','15-50分');
+					pushDate(data,'score_over_fifty','50分以上');
 				 }else{
 					array_points.length=0;	
 				}
@@ -482,7 +537,7 @@ $(function(){
 		 * 图二
 		 */
 		function company_points_assess_two(){
-			option = {
+			/*option = {
 				tooltip : {
 					trigger: 'item',
 					formatter:  "公司考核扣分占比 <br/>{b} : {c}人 ({d}%)"
@@ -538,7 +593,70 @@ $(function(){
 						} 
 					}
 				]
-			};
+			};*/
+
+					option = {
+					tooltip : {
+						trigger: 'item',
+						formatter:  "公司考核扣分占比 <br/>{b} : {c}人 ({d}%)"
+					},
+				
+					toolbox: {
+						show : true,
+					},
+					calculable : false,
+					series : [
+						{
+							name:'访问来源',
+							type:'pie',
+							selectedMode: 'single',
+							radius : [0, 50],
+							
+							// for funnel
+							x: '20%',
+							width: '40%',
+							funnelAlign: 'right',
+							max: 1548,
+							
+							itemStyle : {
+								normal : {
+									label : {
+										show: false, 
+							  			formatter: '{b} :\n{c}人 ({d}%)'
+									},
+									labelLine : {
+										show : false
+									}
+								}
+							},
+							data:array_points
+						},
+						{
+							name:'访问来源',
+							type:'pie',
+							radius : [80, 120],
+							
+							// for funnel
+							x: '60%',
+							width: '35%',
+							funnelAlign: 'left',
+							max: 1048,
+							itemStyle : {
+								normal : {
+									label : {
+										show: true, 
+							  			formatter: '{b} :\n{c}人 ({d}%)'
+									},
+									labelLine : {
+										show : true
+									}
+								}
+							},
+							data:array_points2
+						}
+					]
+				};
+
                     
 			return option;
 		}

+ 17 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/StatisticsMapper.xml

@@ -213,6 +213,23 @@
     	</if>
      </select>
      
+     <select id="selectfeestationChekcedSocre" parameterType="com.xintong.visualinspection.bean.StatisticsBean" resultType="com.xintong.visualinspection.bean.StatisticsBean">
+     	select tso.parentid , ci.name AS check_item_name ,sum(t.check_item_score) AS all_check_score, t.checked_dept   FROM
+			(  SELECT ci.parent_id, t.* from check_score t INNER JOIN check_task ct ON ct.check_status !=22 	AND monthfunc( ct.start_time ) = '2017/07' AND ct.id = t.task_id
+				LEFT JOIN check_item  ci ON t.check_item_id = ci.id ) t 
+			LEFT JOIN check_item ci ON t.parent_id = ci.id
+			LEFT JOIN t_sys_organ tso ON tso.id = t.checked_dept
+			<if test="queryType!=null and queryType == 0">
+				GROUP BY t.parent_id , tso.parentid
+				order BY t.parent_id , tso.parentid
+			</if>
+			<if test="queryType!=null and queryType == 1">
+				GROUP BY t.parent_id , t.checked_dept
+				ORDER  BY t.parent_id , t.checked_dept
+			</if>
+     </select>
+     
+     
      <select id="selectCheckedItemScoreInfo" parameterType="com.xintong.visualinspection.bean.StatisticsBean" resultType="com.xintong.visualinspection.bean.StatisticsBean">
      	SELECT count(DISTINCT m.task_id) AS checked_num , sum(m.check_item_score) AS all_check_score , m.parent_id,m.check_item_name AS name FROM check_task t INNER JOIN
 		(