<div class="row"> <div class="col-md-12"> <div id="container"></div> </div> </div>
<script src="~/Scripts/Highcharts-6.0.7/code/highcharts.js"></script> <script language="JavaScript"> var pageIndex = 1; var pageSize = 7; var industrys = []; //所有行业 var notcounts = []; //待上报 var notauditcounts = []; //待审核 var sooncount = []; //即将到期 var overduecount = [];//已过期 function LoadData() { var params = {}; var url = "/api/industry/GetAllList"; //接口地址 ajaxGet(url, params, function (rs) { if (!rs.status) { layer.msg("请求出错,请稍后重试" + rs.errmsg, { icon: 2, time: 1000 }); return; } for (var i = 0; i < rs.data.length; i++) { industrys.push(rs.data[i].name); //根据行业id查询该行业待上报、待审核、即将过期、已过期的数量 var params = { company_type: rs.data[i].name }; var url = "/api/report/GetHomeCount"; ajaxPost(url, params, function (data) { if (!data.data == null) { layer.msg("无数据" + data.errmsg, { icon: 2, time: 1000 }); return; } else { notcounts.push(data.data.notcount); notauditcounts.push(data.data.notauditcount); sooncount.push(data.data.sooncount); overduecount.push(data.data.overduecount); var chart = { type: 'column' }; var title = { text: '行业信息统计' }; var xAxis = { categories: industrys, crosshair: true }; var yAxis = { min: 0, max: 100, title: { text: '单位/个' } }; var tooltip = { headerFormat: '<span style="font-size:10px">{point.key}</span><table>', pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}:</td>' + '<td style="padding:0"><b>{point.y}</b>/个</td></tr>', footerFormat: '<tr><td colspan="2"><span style="font-size:12px">单击柱看详情</span></td></tr></table>', shared: true, useHTML: true }; var plotOptions = { series: { cursor: 'pointer', events: { click: function (e) { //待上报 GetnotcountList(pageIndex, pageSize, e.point.category); //待审核 getreportlist(pageIndex, pageSize, e.point.category); //即将过期 GetsooncountList(pageIndex, pageSize, e.point.category); //已过期 GetoverduecountList(pageIndex, pageSize, e.point.category); $('#four_table').show(); } }, }, column: { pointPadding: 0.2, borderWidth: 0, //柱子边框宽度 pointWidth: 40 //柱子宽度 } }; var credits = { enabled: false }; var series = [{ color: '#00C0EF', name: '待上报', data: notcounts }, { color: '#00A65A', name: '待审核', data: notauditcounts }, { color: '#F39C12', name: '即将过期', data: sooncount }, { color: '#DD4B39', name: '已过期', data: overduecount }]; var json = {}; json.chart = chart; json.title = title; json.tooltip = tooltip; json.xAxis = xAxis; json.yAxis = yAxis; json.series = series; json.plotOptions = plotOptions; json.credits = credits; $('#container').highcharts(json); } }); } }); } $(function () { @{ string zt = Session["user_role_name"].ToString(); if(zt.Contains("普通用户")) { ViewData["Isvissable"] = "No"; } if (zt.Contains("系统用户")) { ViewData["Isvissable"] = "Yes"; } } var Isvissable = "@ViewData["Isvissable"]"; if (Isvissable == "No") { $("#topp").remove(); } LoadData(); GetAllNum(); }); //获得各类数据的数量(未上报 过期等) function GetAllNum() { var params = {}; var url = "/api/report/GetHomeCount"; ajaxPost(url, params, function (data) { if (!data.data == null) { layer.msg("无数据" + data.errmsg, { icon: 2, time: 1000 }); return; } $('#notcount').text(data.data.notcount); $('#notauditcount').text(data.data.notauditcount); $('#sooncount').text(data.data.sooncount); $('#overduecount').text(data.data.overduecount); }); } //未上报企业信息 function GetnotcountList(pageIndex, pageSize, company_type) { var colums = [ { data: 'name' }, { data: 'address' }, { data: 'industry_name' }, { data: 'org_level_name' }]; createTable("notcount_table", colums, function (data, callback, settings) { var pc = 0; pageIndex = (data.start / pageSize) + 1; var params = { //这是自定义参数 pageIndex: pageIndex, pageSize: pageSize, OrderField: "id asc", company_type: company_type }; var url = "/api/company/GetNotList"; //接口地址 ajaxPost(url, params, function (rs) { var fData = { draw: 0, recordsTotal: 0, recordsFiltered: 0, data: [] }; if (!rs.status) { layer.msg("请求出错,请稍后重试" + rs.errmsg, { icon: 2, time: 1000 }); callback(fData); return; } if (rs.data == null) { callback(fData); return; } var gearDatas = []; for (var i = 0; i < rs.data.length; i++) { var datwwa = new NotcountData(rs.data[i].industry_name, rs.data[i].org_level_name, rs.data[i].name, rs.data[i].address, rs.data[i].id) gearDatas.push(datwwa); } pc = rs.total; fData.data = gearDatas; fData.recordsTotal = pc; fData.recordsFiltered = pc; callback(fData); }); }); } function NotcountData(industry_name, org_level_name, name, address, id) { this.id = id; this.industry_name = industry_name; this.org_level_name = org_level_name; this.name = name; this.address = address; this.id = id; } //已过期 function GetoverduecountList(pageIndex, pageSize, company_type) { var colums = [{ data: 'company_name' }, { data: 'company_type' }, { data: 'create_date' }, { data: 'update_date' }, { data: 'audit_date' }, { data: 'audit_statusStr' }, { data: 'remark' }]; createTable("overduecount_table", colums, function (data, callback, settings) { var pc = 0; pageIndex = (data.start / pageSize) + 1; var params = { //这是自定义参数 pageIndex: pageIndex, pageSize: pageSize, OrderField: "id asc", company_type: company_type }; var url = "/api/report/GetOverdueList"; //接口地址 ajaxPost(url, params, function (rs) { var fData = { draw: 0, recordsTotal: 0, recordsFiltered: 0, data: [] }; if (!rs.status) { layer.msg("请求出错,请稍后重试" + rs.errmsg, { icon: 2, time: 1000 }); callback(fData); return; } if (rs.data == null) { callback(fData); return; } var gearDatas = []; for (var i = 0; i < rs.data.length; i++) { var datwwa = new SooncountData(rs.data[i].company_name, rs.data[i].company_type, rs.data[i].create_date, rs.data[i].update_date, rs.data[i].audit_date, rs.data[i].audit_statusStr, rs.data[i].remark, rs.data[i].id) gearDatas.push(datwwa); } pc = rs.total; fData.data = gearDatas; fData.recordsTotal = pc; fData.recordsFiltered = pc; callback(fData); }); }); } function OverduecountData(industry_name, org_level_name, name, address, id) { this.id = id; this.industry_name = industry_name; this.org_level_name = org_level_name; this.name = name; this.address = address; this.id = id; } //即将过期 function GetsooncountList(pageIndex, pageSize, company_type) { var colums = [{ data: 'company_name' }, { data: 'company_type' }, { data: 'create_date' }, { data: 'update_date' }, { data: 'audit_date' }, { data: 'audit_statusStr' }, { data: 'remark' }]; createTable("sooncount_table", colums, function (data, callback, settings) { var pc = 0; pageIndex = (data.start / pageSize) + 1; var params = { //这是自定义参数 pageIndex: pageIndex, pageSize: pageSize, OrderField: "id asc", company_type: company_type }; var url = "/api/report/GetOtherList"; //接口地址 ajaxPost(url, params, function (rs) { var fData = { draw: 0, recordsTotal: 0, recordsFiltered: 0, data: [] }; if (!rs.status) { layer.msg("请求出错,请稍后重试" + rs.errmsg, { icon: 2, time: 1000 }); callback(fData); return; } if (rs.data == null) { callback(fData); return; } var gearDatas = []; for (var i = 0; i < rs.data.length; i++) { var datwwa = new SooncountData(rs.data[i].company_name, rs.data[i].company_type, rs.data[i].create_date, rs.data[i].update_date, rs.data[i].audit_date, rs.data[i].audit_statusStr, rs.data[i].remark, rs.data[i].id) gearDatas.push(datwwa); } pc = rs.total; fData.data = gearDatas; fData.recordsTotal = pc; fData.recordsFiltered = pc; callback(fData); }); }); } function SooncountData(company_name, company_type, create_date, update_date, audit_date, audit_statusStr, remark, id) { this.id = id; this.company_type = company_type; this.company_name = company_name; this.create_date = create_date; this.update_date = update_date; this.audit_date = audit_date; this.audit_statusStr = audit_statusStr; this.remark = remark; this.operate = function () { return "<button onclick='reportAddOrEdit(" + this.id + ")' class='btn btn-success btn-xs fa fa-pencil-square-o '></button>"; } } // 待审核 function getreportlist(pageIndex, pageSize, company_type) { var colums = [{ data: 'company_name' }, { data: 'company_type' }, { data: 'create_date' }, { data: 'update_date' }, { data: 'remark' }]; createTable("notauditcount_table", colums, function (data, callback, settings) { var pc = 0; pageIndex = (data.start / pageSize) + 1; var params = { //这是自定义参数 pageIndex: pageIndex, pageSize: pageSize, OrderField: "id asc", company_type: company_type, audit_status: 0 //是否合格 0:未审核 1:审核通过 2:审核未通过 -1:全部 }; var url = "/api/report/GetList"; //接口地址 ajaxPost(url, params, function (rs) { var fData = { draw: 0, recordsTotal: 0, recordsFiltered: 0, data: [] }; if (!rs.status) { layer.msg("请求出错,请稍后重试" + rs.errmsg, { icon: 2, time: 1000 }); callback(fData); return; } if (rs.data == null) { callback(fData); return; } var gearDatas = []; for (var i = 0; i < rs.data.length; i++) { var datwwa = new BZGLData(rs.data[i].company_name, rs.data[i].company_type, rs.data[i].create_date, rs.data[i].update_date, rs.data[i].audit_date, rs.data[i].audit_statusStr, rs.data[i].remark, rs.data[i].id) gearDatas.push(datwwa); } pc = rs.total; fData.data = gearDatas; fData.recordsTotal = pc; fData.recordsFiltered = pc; callback(fData); }); }); } function BZGLData(company_name, company_type, create_date, update_date, audit_date, audit_statusStr, remark, id) { this.id = id; this.company_type = company_type; this.company_name = company_name; this.create_date = create_date; this.update_date = update_date; this.audit_date = audit_date; this.audit_statusStr = function () { var zt = ""; if (audit_statusStr == "审核通过") { zt = '<span class="grid-report-item green ">' + audit_statusStr + '</span>'; } if (audit_statusStr == "未审核") { zt = '<span class="grid-report-item blue ">' + audit_statusStr + '</span>'; } if (audit_statusStr == "审核不通过") { zt = '<span class="grid-report-item yellow ">' + audit_statusStr + '</span>'; } return zt; }; this.remark = remark; this.operate = function () { return "<button onclick='reportEdtil(" + this.id + ")' class='btn btn-success btn-xs fa fa-eye '></button>"; } } function createTable(id, colums, tCallback) { $("#" + id).DataTable({ "ajax": function (data, callback, settings) { tCallback(data, callback, settings); }, "serverSide": true, "pagingType": "full_numbers", "pageLength": 7, "processing": true, "destroy": true, 'columns': colums, 'paging': true, 'lengthChange': false, 'searching': false, 'ordering': false, 'autoWidth': false, "language": { "sProcessing": "处理中...", "sLengthMenu": "显示 _MENU_ 项结果", "sZeroRecords": "没有匹配结果", "sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项", "sInfoEmpty": "显示第 0 至 0 项结果,共 0 项", "sInfoFiltered": "(由 _MAX_ 项结果过滤)", "sInfoPostFix": "", "sSearch": "搜索:", "sUrl": "", "sEmptyTable": "表中数据为空", "sLoadingRecords": "载入中...", "sInfoThousands": ",", "oPaginate": { "sFirst": "首页", "sPrevious": "上页", "sNext": "下页", "sLast": "末页" }, "oAria": { "sSortAscending": ": 以升序排列此列", "sSortDescending": ": 以降序排列此列" } } }); }; </script>
效果图: