//iqc待检看板
var interval_do = null;// 页面刷新定时器
clearInterval(interval_do);
var MyMarhq = '';// 滚动定时器
clearInterval(MyMarhq);
$(function() {
console.log('111111111111111111111111111');
doData()
interval_do = setInterval(getKanbanData, 100 * 1000); // 启动,执行默认方法
})
function doData() {
if (KANBAN_DATA) {
console.log('111111111111111111111111111');
tableBox()
setAera()
}
}
function tableBox() {
setInfo()// 信息
setTaskTable()// 生产任务信息栏
// setProdTable()// 生产确认信息
setSalaryTable()// 异常呼叫
}
function setAera() {
var data1 = [];
var data2 = [];
console.log(KANBAN_DATA)
if (KANBAN_DATA.data.DATA_2.length > 0) {
var list = KANBAN_DATA.data.DATA_2
for (var i = 0; i < list.length; i++) {
var arr = list[i]
if (arr.FTYPE == "1") {
data1.push(arr)
}
}
capacityEcharts(data1)
}
if (KANBAN_DATA.data.DATA_5.length > 0) {
var list = KANBAN_DATA.data.DATA_5;
for (var i = 0; i < list.length; i++) {
var arr = list[i]
data2.push(arr)
}
unQualEcharts(data2, 'bar')
}
}
function setSalaryTable() {
console.log('11111');
var Items = KANBAN_DATA.data.DATA_6
if(isNull(Items)==true)
{console.log('22222');}
$('.tbl-body tbody').empty();
$('.tbl-header tbody').empty();
var str = '';
var style = '';
if (Items.length <= 4) {// 不滚动
$.each(Items, function(i, item) {
if (i == Items.length - 1) {// 最后一行增加下划线
style = "style='border-bottom: 2px solid #333399;'";
}
str = '
' +
'' + isNull(item.PROC_NO) + ' | ' +
'' + isNull(item.ERRCODE) + ' | ' +
'' + isNull(item.EXC_BY) + ' | ' +
'' + isNull(item.AD_TIME) + ' | ' +
'' + isNull(item.IN_TIEM) + ' | ' +
'' + isNull(item.TIME_QTY) + ' | ' +
'' + isNull(item.FSTATUS) + ' | ' + '
'
$('.tbl-body tbody').append(str);
$('.tbl-header tbody').append(str);
});
} else {// 有滚动效果
$.each(Items, function(i, item) {
str = '' +
'' + isNull(item.PROC_NO) + ' | ' +
'' + isNull(item.ERRCODE) + ' | ' +
'' + isNull(item.EXC_BY) + ' | ' +
'' + isNull(item.AD_TIME) + ' | ' +
'' + isNull(item.IN_TIEM) + ' | ' +
'' + isNull(item.TIME_QTY) + ' | ' +
'' + isNull(item.FSTATUS) + ' | ' + '
'
$('.tbl-body tbody').append(str);
$('.tbl-header tbody').append(str);
});
}
if (MyMarhq != null) {// 判断计时器是否为空-关闭
clearInterval(MyMarhq);
MyMarhq = null;
}
if (Items.length > 4) {
$('.tbl-body tbody').html($('.tbl-body tbody').html() + $('.tbl-body tbody').html());
$('.tbl-body').css('top', '0');
var tblTop = 0;
var speedhq = 50; // 数值越大越慢
var outerHeight = $('.tbl-body tbody').find("tr").outerHeight();
function Marqueehq() {
if (tblTop <= -outerHeight * Items.length) {
tblTop = 0;
} else {
tblTop -= 1;
}
$('.tbl-body').css('top', tblTop + 'px');
}
MyMarhq = setInterval(Marqueehq, speedhq);
// 鼠标移上去取消事件
$(".tbl-header tbody").hover(function() {
clearInterval(MyMarhq);
}, function() {
clearInterval(MyMarhq);
MyMarhq = setInterval(Marqueehq, speedhq);
})
}
}
function setProdTable() {
var Items = KANBAN_DATA.data.DATA_3
$('.tbl-body-bot tbody').empty();
var str = '';
var color = ''
$.each(Items, function(i, item) {
if (item.FSTATUS == "1") {
color = ""
} else if (item.FSTATUS == "0") {
color = ""
} else {
color = ""
}
str = '' + '' + isNull(item.XM) + ' | ' + '' + color + ' | ' + '' + isNull(item.CRESUL) + ' | ' + '
'
$('.tbl-body-bot tbody').append(str);
});
}
function setTaskTable() {
console.log('11111');
var Items = KANBAN_DATA.data.DATA_1
$('.tbl-body-task tbody').empty();
var str = '';
$.each(Items, function(i, item) {
str = '' + '' + isNull(item.T_STATUS) + ' | ' +
'' + isNull(item.TASK_NO) + ' | '
+ '' + isNull(item.BOARD_NAME) + ' | '
+ ''
+ isNull(item.SCHEME_QTY) + ' | '
+ '' + isNull(item.BL_QTY) + ' | '
+ ''
+ isNull(item.PLAN_BEGIN_TIME) + ' | '
+ ''+ isNull(item.REAL_BEGIN_TIME)+ ' | '
+ '' + isNull(item.NG_QTY) + ' | ' +
'' + isNull(item.OUT_QTY)
+ ' | ' + '' + isNull(item.LV_QTY) + ' | '
+ '' + isNull(item.COMP_QTY) + ' | ' + '
'
$('.tbl-body-task tbody').append(str);
});
}
function setInfo() {
var data5 = [];
if (KANBAN_DATA.data.DATA_0) {
var list = KANBAN_DATA.data.DATA_0
$("#attend").text(list[0].LINE_NAME )// 出勤人数
$("#linerName").text("组长:" + list[0].FUSERNAME)// 组长名称
$("#check_count").text("检验批次:" + list[0].LOT_QTY)// 组长名称
$("#ok_count").text("合格批次:" + list[0].OK_QTY)// 组长名称
for (var i=0; i 0) {
var list = KANBAN_DATA.data.DATA_3;
for (var i = 0; i < list.length; i++) {
var arr = list[i]
data5.push(arr)
}
dashboard(data5, 'dashboard')
}
} else {
var list = KANBAN_DATA.data.DATA_0
for (var i=0; i 0 || (ImgObj.width > 0 && ImgObj.height > 0)) {
return true;
} else {
return false;
}
}
function getLinerPic(usercode) {
$.ajax({
type : "GET",
url : context + "kanban/getUserImage",
data : {
usrcode : usercode
},
dataType : "json",
success : function(res) {
if (res[0]) {
$("#liner_pic").attr('src', "../downImages/" + usercode + ".png");
} else {
console.log("图片加载失败!")
}
}
});
}
function dashboard(valueList, dashboard) {
var time = []
var exterior = []
var functions = []
if (valueList.length > 0) {
for (var i = 0; i < valueList.length; i++) {
time.push(valueList[i].X_VAL);
exterior.push(parseInt(valueList[i].Y_VAL));
functions.push(parseInt(valueList[i].U_VAL));
}
}
option = {
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: {
textStyle : {
fontSize : 14,// 字体大小
color : '#ffffff'// 字体颜色
},
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
yAxis: {
type: 'value',
axisLabel : {
show : true,
interval : 0,
textStyle : {
color : '#ffffff',
fontSize : 14,
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
},
xAxis: {
type: 'category',
data: time,
axisLabel : {
show : true,
interval : 0,
textStyle : {
color : '#ffffff',
fontSize : 14,
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
},
series: [
// {
// name: '外观不良',
// type: 'bar',
// stack: 'total',
// label: {
// show: true,
// textStyle : {
// color : '#0000ff',
// fontSize : 20,
// }
// },
// emphasis: {
// focus: 'series'
// },
// data: exterior,
// itemStyle: {
// color: '#ffd700'
// }
// },
{
name: '功能不良',
type: 'bar',
stack: 'total',
label: {
show: true,
textStyle : {
color : '#0000ff',
fontSize : 20,
}
},
emphasis: {
focus: 'series'
},
data: functions,
itemStyle: {
color: '#fd666d'
}
}
]
};
// 创建echarts对象在哪个节点上
var myCharts1 = echarts.init(document.getElementById(dashboard));
// 将选项对象赋值给echarts对象。
myCharts1.setOption(option, true);
// option = {
// series : [ {
// type : 'gauge',
// axisLine : {
// lineStyle : {
// width : 15,
// color : [ [ 0.3, '#fd666d' ], [ 0.7, '#FFD700' ], [ 1, '#00FF7F' ] ]
// }
// },
// pointer : {
// itemStyle : {
// color : 'auto'
// }
// },
// axisTick : {
// distance : -20,
// length : 6,
// lineStyle : {
// color : '#fff',
// width : 2
// }
// },
// splitLine : {
// distance : -20,
// length : 20,
// lineStyle : {
// color : '#fff',
// width : 5
// }
// },
// axisLabel : {
// color : 'auto',
// distance : 10,
// fontSize : 15
// },
// detail : {
// valueAnimation : true,
// formatter : '{value}% ',
// color : 'auto'
// },
// data : [ {
// value : okRate==null?0:okRate
// } ]
// } ]
// };
// // 创建echarts对象在哪个节点上
// var myCharts1 = echarts.init(document.getElementById('dashboard'));
// // 将选项对象赋值给echarts对象。
// myCharts1.setOption(option, true);
}
function unQualEcharts(valueList, bar) {
var time = []
var exterior = []
var functions = []
if (valueList.length > 0) {
for (var i = 0; i < valueList.length; i++) {
time.push(valueList[i].X_VAL);
exterior.push(parseInt(valueList[i].Y_VAL));
functions.push(parseInt(valueList[i].U_VAL));
}
}
option = {
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: {
textStyle : {
fontSize : 14,// 字体大小
color : '#ffffff'// 字体颜色
},
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
yAxis: {
type: 'value',
axisLabel : {
show : true,
interval : 0,
textStyle : {
color : '#ffffff',
fontSize : 14,
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
},
xAxis: {
type: 'category',
data: time,
axisLabel : {
show : true,
interval : 0,
textStyle : {
color : '#ffffff',
fontSize : 14,
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
},
series: [
// {
// name: '外观不良',
// type: 'bar',
// stack: 'total',
// label: {
// show: true,
// textStyle : {
// color : '#0000ff',
// fontSize : 20,
// }
// },
// emphasis: {
// focus: 'series'
// },
// data: exterior,
// itemStyle: {
// color: '#ffd700'
// }
// },
{
name: '功能不良',
type: 'bar',
stack: 'total',
label: {
show: true,
textStyle : {
color : '#0000ff',
fontSize : 20,
}
},
emphasis: {
focus: 'series'
},
data: functions,
itemStyle: {
color: '#fd666d'
}
}
]
};
// 创建echarts对象在哪个节点上
var myCharts1 = echarts.init(document.getElementById(bar));
// 将选项对象赋值给echarts对象。
myCharts1.setOption(option, true);
}
function capacityEcharts(echartData) {
var xData = [];
var yData = [];
var average = 0;
if (echartData.length > 0) {
var list = echartData
average = list[0].U_VAL
for (var i = 0; i < list.length; i++) {
xData.push(list[i].X_VAL)
yData.push(list[i].Y_VAL)
}
}
option = {
tooltip : {
trigger : 'axis',
axisPointer : {
type : 'cross',
crossStyle : {
color : '#999'
}
}
},
grid : {
x : 60,// 左边距
y : 55,// 上边距
x2 : 50,// 右边距
y2 : 50,// 下边距
borderWidth : 10
},
legend : {
data : [ "产出数量" ],
// orient: 'vertical',
x : 'center', // 可设定图例在左、右、居中
top : 0,
textStyle : {
fontSize : 14,// 字体大小
color : '#ffffff'// 字体颜色
},
},
color : [ '#00FF66' ],
xAxis : {
type : 'category',
boundaryGap : false,
data : xData,
axisPointer : {
type : 'shadow'
},
axisLabel : {
show : true,
interval : 0,
textStyle : {
color : '#ffffff',
fontSize : 14,
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
},
yAxis : {
type : 'value',
splitLine : {
show : false
},
axisLabel : {
// formatter : '{value} ',
textStyle : {
color : '#ffffff',
fontSize : 14,// 字体大小
}
},
axisLine : {
lineStyle : {
color : '#FFFFFF'
}
},
max:function (value) {
if(value.max>average){
return value.max;
}else{
return average;
}
}
},
series : [ {
name : '产出数量',
data : yData,
type : 'line',
yAxisIndex : 0,
areaStyle : {},
label : {
show : true,
position : [ 5, -20 ],
textStyle : {
fontSize : 14,// 字体大小
}
},
markLine : {
symbol : "none",
data : [ {
silent : true, // 鼠标悬停事件 true没有,false有
label : {
// formatter : '标产',
show : true,
},
lineStyle : { // 警戒线的样式 ,虚实 颜色
type : "solid",
color : "#FFFF66",
},
yAxis : average
// 警戒线的标注值,可以有多个yAxis,多条警示线
} ]
}
} ]
};
// 创建echarts对象在哪个节点上
var myCharts1 = echarts.init(document.getElementById('capacity'));
// 将选项对象赋值给echarts对象。
myCharts1.setOption(option, true);
}
function getKanbanData() {
$.ajax({
type : "GET",
url : context + "kanban/getLineHeadList",
data : {
floor : FLOOR
},
dataType : "json",
success : function(res) {
if (res.result) {
KANBAN_DATA = res
doData()
} else {
// clearInterval(interval_do);//错误-关闭定时器
}
}
});
}
function isNull(str) {
if (str == null) {
return ""
} else {
return str
}
}