| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383 |
- var year = new Date().getFullYear();
- var months = ['1','2','3','4','5','6','7','8','9','10','11','12'];
- var monthsCH = ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'];
- var array_year_score = new Array();
- var array_check_type = new Array();
- var user_id = 2424; // 用户假数据
- var score_statistics;
- var check_type;
- var cur_status;
- var hide = false;
- // 默认初始化日期一个月
- $(".div-start input").val(new Date().getFullYear()+"-"+new Date().getMonth()+"-"+new Date().getDate());
- $(".div-end input").val(new Date().getFullYear()+"-"+(new Date().getMonth()+1)+"-"+new Date().getDate());
- var start_date = $(".div-start input").val()+" 23:00:00";
- var end_date = $(".div-end input").val()+" 23:00:00";
- /**
- * 预加载方法
- */
- $(function(){
- //*************************************数据表格******************************************
- function initAppealPage(start_date,end_date,user_id) {
- initQueryParams();
- queryAppeal(start_date,end_date,user_id);
- }
- function initQueryParams() {
- //获取页面参数
- var page_params = $.zui.store.get("page_params");
- if(page_params && page_params.status) {
- cur_status = page_params.status;
- }
- }
- function queryAppeal(start_date,end_date,user_id){
- var data = {
- "start_date":start_date,
- "end_date":end_date,
- "user_id":user_id,
- "queryType":0
- }
- if(hasRole(ROLE_STATION_ADMIN) || hasRole(ROLE_STATION) || hasRole(ROLE_JICHA) || roleContains('STATION')) {
- hide = true;
- }
-
- var cols = [
- {width: 50, text: '序号', flex: true, colClass: 'text-center',field:'num'},
- {width: 100, text: '时间段', flex: true,colClass: 'text-center',field:'check_task_time_name' },
- {width: 60, text: '扣分数', flex: true, colClass: 'text-center',field:'score'},
- {width: 100, text: '考核项', flex: true, colClass: 'text-center',sort: 'down',field:'name'},
- {width: 100, text: '扣分凭证', type: 'imagedd', flex: true, hide:hide,field:'pics'},
- ];
- if(cur_status==12 || cur_status==13){
- data.check_status_arr = [12,13];
- }
- $('.datatable').mytable({'cols':cols,
- 'url':"/statistics/one/checkedItem/detail/info",
- 'param':data}
- );
- }
-
- //*************************************画图******************************************
- // 加载图配置
- echart();
- $(".query button").click(function(){
- var user_id = $("#select-personal").val();
- var start_date = $(".div-start input").val()+" 23:00:00";
- var end_date = $(".div-end input").val()+" 23:00:00";
- var startStr = start_date.replace(/-/g, '/');
- var endStr = end_date.replace(/-/g, '/');
- var start = new Date(startStr);
- var end = new Date(endStr);
- if(start>end){
- tip("开始时间不能比结束时间大");
- return;
- }
- if($("#select-personal").text()==''){
- tip("请选择收费站");
- return;
- }
- // 查询图一
- init_personal_score_statistics("statistics/one/person/year/info",user_id);
- // 查询图二
- init_personal_check_type("statistics/one/person/checkedItem/info",user_id,start_date,end_date);
- // 表格
- initAppealPage(start_date,end_date,user_id);
- // 加载图配置
- echart();
- });
- /**
- * 初始化图一
- * @param {*} url
- * @param {*} dept_id
- */
- function init_personal_score_statistics(url,user_id){
- var param = {
- "start_date":(year-1)+"-12-25 23:00:00",
- "end_date":year+"-12-25 23:00:00",
- "user_id":user_id
- }
- initRqueset(url,param,1);
- }
-
- /**
- * 初始化图二
- * @param {*} url
- * @param {*} dept_id
- */
- function init_personal_check_type(url,user_id,start_date,end_date){
- var param = {
- "start_date":start_date,
- "end_date":end_date,
- "user_id":user_id,
- }
- initRqueset(url,param,2);
- }
-
-
- /**
- * 请求
- * @param {*} url
- * @param {*} param
- * @param {*} type
- */
- function initRqueset(url,param,type){
- post_common_service( url,param,function(data){
- data_array(data,type);
- if(type == 1){
- // 画图
- score_statistics.setOption(personal_score_statistics());
- }else if(type == 2){
- // 画图
- check_type.setOption(personal_check_type());
- }
- },function(error){
- return "" ;
- });
- }
- /**
- * 数组数据
- * @param {*} data
- * @param {*} type
- */
- function data_array(data,type){
- if(type == 1){
- array_year_score.length = 0;
- months.length = 0;
- if(data.length!=0){
- if(data.length<12){
- for(var i=0;i<12-data.length;i++){
- array_year_score.push(0)
- }
- }
- for(var i=0;i<data.length;i++){
- if(months.indexOf(parseInt(data[i].mth.substr(5)))){
- // 指定位置插入值
- array_year_score.splice(parseInt(data[i].mth.substr(5))-1,0,
- (1000-(filter(data[i].all_check_score,data[i].checked_num,0))));
- }
- }
- }else{
- array_year_score.length = 0;
- months.length = 0;
- }
- }else if(type == 2){
- array_check_type.length=0;
- if(data.length != 0){
- for(var i=0;i<data.length;i++){
- array_check_type.push({"value": data[i].all_check_score,"name":data[i].name});
- }
- }else{
- array_check_type.length=0;
- }
- }
- }
- $("#select-personal").click(function(){
- if($("#select-personal").text()==''){
- tip("请选择收费站");
- return;
- }
- });
- // 收费站下拉框
- setFeSelect("#select-dept");
- /**
- * 部门人员下拉框
- */
- function setSecond(){
- var select_road = $("#select-dept").val();
- var sec = document.getElementById('select-personal');
- var tempStr = ''
- var param = {
- "organid":select_road
- }
- post_common_service("user/getFsUserList",param,function(data){
- if(data.length!=0){
- for(var i=0;i<data.length;i++){
- for(var j=33;j<=53;j++){
- if(select_road==j){
- tempStr += "<option value="+data[i].id+">"+data[i].truename+"</option>";
- }
- }
- sec.innerHTML=tempStr;
- }
- }else{
- sec.innerHTML='';
- }
- var start_date = $(".div-start input").val()+" 23:00:00";
- var end_date = $(".div-end input").val()+" 23:00:00";
- var user_id = $("#select-personal").val();
- // 页面初始化
- initAppealPage(start_date,end_date,user_id);
- init_personal_score_statistics("statistics/one/person/year/info",user_id);
- init_personal_check_type("statistics/one/person/checkedItem/info",user_id,start_date,end_date);
- },function(error){
- return "" ;
- });
- }
- $("#select-dept").change(function(){
- setSecond();
- });
-
- /**
- * 除数为0处理
- * @param {*} num
- * @param {*} num1
- * @param {*} num2
- * @param {*} num4
- */
- function filter(num,num1,num2){
- if(num1 == 0){
- return num2;
- }else{
- return (num/num1).toFixed(2);
- }
- }
- function echart(){
- // 路径配置
- require.config({
- paths: {
- echarts: '/js/lib/echarts/build/dist'
- }
- });
- // 使用
- require(
- [
- 'echarts',
- 'echarts/theme/macarons',
- 'echarts/chart/line',
- 'echarts/chart/pie'
- ],
- function (ec,theme) {
- // 基于准备好的dom,初始化echarts图表
- score_statistics = ec.init(document.getElementById('personal-score-statistics'),theme);
- check_type = ec.init(document.getElementById('personal-check-type'),theme);
- }
- );
- }
- /**
- * 图一
- */
- function personal_score_statistics(){
- option = {
- color : [ '#00ced1' ],
- tooltip : {
- trigger: 'axis'
- },
- grid:{
- width:"80%"
- },
- legend: {
- data:['平均分']
- },
- toolbox: {
- show : true,
- },
- calculable : true,
- xAxis : [
- {
- type : 'category',
- boundaryGap : false,
- data : monthsCH
- }
- ],
- yAxis : [
- {
- type : 'value',
- min : 700 ,
- max : 1000,
- axisLabel : {
- formatter: '{value}'
- }
- }
- ],
- series : [
- {
- name:'平均分',
- type:'line',
- data: array_year_score,
- markPoint : {
- data : [
- {type : 'max', name: '最大值'},
- {type : 'min', name: '最小值'}
- ]
- },
- markLine : {
- data : [
- {type : 'average', name: '平均值'}
- ]
- }
- },
-
- ]
- };
- return option;
- }
-
- /**
- * 图二
- */
- function personal_check_type(){
- option = {
- tooltip : {
- trigger: 'item',
- formatter: "个人服务检查问题占比 <br/>{b} : {c}分 ({d}%)"
- },
- toolbox: {
- show : true,
- feature : {
-
- magicType : {
-
- type: ['pie', 'funnel'],
- option: {
- funnel: {
- x: '25%',
- width: '50%',
- funnelAlign: 'left',
- max: 1548
- }
- }
- },
- }
- },
- calculable : true,
- series : [
- {
- name:'访问来源',
- type:'pie',
- radius : '65%',
- center: ['50%', '50%'],
- data:array_check_type,
- itemStyle:{
- normal:{
- label:{
- show: true,
- formatter: '{b} : {c}分 ({d}%)'
- },
- labelLine :{show:true}
- }
- }
- }
- ]
- };
- return option;
- }
- });
|