| | |
| | | setTimeout(function(){ |
| | | getTheaddData() |
| | | getThbodyData() |
| | | },0) |
| | | setInterval(function(){ |
| | | setTimeout(function(){ |
| | | getTheaddData() |
| | | getThbodyData() |
| | | getType() |
| | | },0) |
| | | setInterval(function(){ |
| | | getThbodyData() |
| | | },5000) |
| | | |
| | | getThbodyData() |
| | | |
| | | },50000) |
| | | |
| | | var proData = ["项目名称","开始时间","结束时间",] |
| | | var getTheaddData = function(){ |
| | | var getType = function () { |
| | | $.ajax({ |
| | | url:baseUrl + '/projectPlan/flowStatus', |
| | | url:baseurl+'/pms/projectPlan/dataSummary', |
| | | type:'GET', |
| | | dataType:'JSON', |
| | | data:{}, |
| | | success:function(res){ |
| | | if(res.code==200){ |
| | | data=res.data |
| | | var headStr = [] |
| | | for(var i = 0;i<data.length;i++){ |
| | | headStr.push(data[i].name) |
| | | } |
| | | proData = proData.concat(headStr) |
| | | // 表头 |
| | | for(var i = 0;i<proData.length;i++){ |
| | | var str = "<th class='xiangmu'>"+proData[i]+"</th>" |
| | | $("#tab-header").append(str) |
| | | } |
| | | if (res.code ===200 ) { |
| | | var str = '<tr>' |
| | | +'<th>' + '项目总数' + '</th>' + '<th>'+ res.data.totalQuantity +'</th>' |
| | | +'<th>' + '集成项目' + '</th>' + '<th>'+ res.data.intoSum +'</th>' |
| | | +'<th>' + '非集成项目数' + '</th>' + '<th>'+ res.data.wrongInto +'</th>' |
| | | +'<th>' + '已验收项目数' + '</th>' + '<th>'+ res.data.inspected +'</th>' |
| | | +'<th>' + '未验收项目数' + '</th>' + '<th>'+ res.data.wrongInspected +'</th>' |
| | | +'<th>' + '已完工未验收数' + '</th>' + '<th>'+ res.data.finished +'</th>' |
| | | $("#type-header").append(str) |
| | | } |
| | | }, |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | /****************************************************************************************************************************************************************************/ |
| | | |
| | | |
| | | var proData = ["项目名称","项目类型","售前金额核算","开始时间","结束时间", |
| | | "合约签订","图面会签","BOM设计/二级BOM下发", |
| | | "材料采购","生产制作","内部安装调整(研发物料)","进场安装","程序调试","系统联调","上线运行","项目验收","运费","安装费"] |
| | | var getTheaddData = function(){ |
| | | for (var i = 0;i < proData.length; i++) { |
| | | var str = "<th class='xiangmu'>"+proData[i]+"</th>" |
| | | $("#tab-header").append(str) |
| | | } |
| | | |
| | | // $.ajax({ |
| | | // url:baseurl+'/pms/projectPlan/flowStatus', |
| | | // type:'GET', |
| | | // dataType:'JSON', |
| | | // data:{}, |
| | | // success:function(res){ |
| | | // if(res.code==200){ |
| | | // data=res.data |
| | | // var headStr = [] |
| | | // for(var i = 0;i<data.length;i++){ |
| | | // headStr.push(data[i].name) |
| | | // } |
| | | // proData = proData.concat(headStr) |
| | | // // 表头 |
| | | // for(var i = 0;i<proData.length;i++){ |
| | | // var str = "<th class='xiangmu'>"+proData[i]+"</th>" |
| | | // $("#tab-header").append(str) |
| | | // } |
| | | // } |
| | | // }, |
| | | // }) |
| | | } |
| | | |
| | | |
| | | /*****************************************************************************************************************************************************************************/ |
| | | var getThbodyData = function(){ |
| | | $.ajax({ |
| | | url:baseUrl+'/projectPlan/toFront', |
| | | url:baseurl+'/pms/projectPlan/toFront', |
| | | type:'GET', |
| | | dataType:'JSON', |
| | | data:{}, |
| | | success:function(res){ |
| | | // console.log(JSON.stringify(res.data)); |
| | | if(res.code==200){ |
| | | // console.log(res) |
| | | data=res.data |
| | | // 判断时间是否有null 有null的改为 "" |
| | | for(var i = 0;i<data.length;i++){ |
| | |
| | | } |
| | | // 表身填充 |
| | | $('#tab-body').empty() |
| | | $.each(data,function(i,data){ |
| | | str = '<tr class="row">' |
| | | +'<th class="projects">'+data.id+'</th>' |
| | | +'<td class="nor-mal">'+data.startDay.substring(0,10)+'</td>' |
| | | +'<td class="nor-mal">'+data.endDay.substring(0,10)+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[0].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[0].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[1].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[1].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[2].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[2].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[3].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[3].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[4].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[4].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[5].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[5].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[6].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[6].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[7].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[7].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[8].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[8].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[9].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[9].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[10].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[10].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="normal">'+'<p>'+data.nodes[11].endTime$.substring(0,10)+'</p>'+'<p>'+data.nodes[11].realEndTime$.substring(0,10)+'</p>'+'</td>' |
| | | +'</tr>' |
| | | $('#tab-body').append(str) |
| | | }) |
| | | for(var i = 0;i<data.length;i++){ |
| | | var node = data[i].nodes |
| | | for(var j = 0;j<node.length;j++){ |
| | | var dataNull = node[j] |
| | | for(var k in dataNull){ |
| | | dataNull[k] = dataNull[k] === null ? "" : dataNull[k] |
| | | } |
| | | } |
| | | str = '' |
| | | for(var j=0;j<node.length;j++){ |
| | | var nodeName = node[j].flowId$ // 节点名称 |
| | | var nodeEndTime = node[j].endTime$.substring(0,10) |
| | | var nodeRealStartTime = node[j].realEndTime$.substring(0,10) |
| | | str1 = '<td class="normal">'+'<p>'+nodeEndTime+'</p>'+'<p>'+nodeRealStartTime+'</p>'+'</td>' |
| | | str=str+str1 |
| | | } |
| | | var str2 = '<tr id="row'+i+'" class="row">' |
| | | +'<th class="projects">'+data[i].id+'</th>' |
| | | +'<th class="projects">'+data[i].type+'</th>' |
| | | +'<td class="nor-mal">'+data[i].presaleAmt+'</td>' |
| | | +'<td class="nor-mal">'+'<p>'+data[i].startDay.substring(0,10)+'</p>'+'</td>' |
| | | +'<td class="nor-mal">'+'<p>'+data[i].endDay.substring(0,10)+'</p>'+'</td>' |
| | | var str9 = '<td class="normal">'+'<p>'+data[i].plandeAmt+'</p>'+'<p>'+data[i].realdeAmt+'</p>'+'</td>' |
| | | + '<td class="normal">'+'<p>'+data[i].planinAmt+'</p>'+'<p>'+data[i].realinAmt+'</p>'+'</td>' |
| | | var str3 = str2 +str + str9 +'</tr>' |
| | | $('#tab-body').append(str3) |
| | | var deAmt = data[i].plandeAmt - data[i].realdeAmt |
| | | if (deAmt < 0 ) { |
| | | $("#tab-body").find('tr').eq(i).find("td").eq(14).attr("style","background:#CC3333"); |
| | | } else { |
| | | $("#tab-body").find('tr').eq(i).find("td").eq(14).attr("style","background:#009966"); |
| | | } |
| | | var inAmt = data[i].planinAmt - data[i].realinAmt |
| | | if (inAmt < 0 ) { |
| | | $("#tab-body").find('tr').eq(i).find("td").eq(15).attr("style","background:#CC3333 "); |
| | | } else { |
| | | $("#tab-body").find('tr').eq(i).find("td").eq(15).attr("style","background:#009966"); |
| | | } |
| | | } |
| | | var dataLen = data.length |
| | | for(var t = 0;t < dataLen; t++){ |
| | | var nodes = data[t].nodes |
| | |
| | | var realEndTime$ = data[t].nodes[k].realEndTime$.substring(0,10) |
| | | // 项目节点计划结束时间 |
| | | var endTime$ = data[t].nodes[k].endTime$.substring(0,10) |
| | | |
| | | var myDate = new Date() |
| | | var nowDay = myDate.getFullYear()+"-"+(myDate.getMonth()+1)+"-"+myDate.getDate() |
| | | var eDay = new Date(endTime$) |
| | | // 判断realEndTime$.substring(0,10) 是否为空 |
| | | |
| | | if(realEndTime$ === ""){ |
| | | // 计划日期与系统日期比较 |
| | | var ExDay = eDay.getTime()-myDate.getTime() |
| | | |
| | | if(ExDay>-86400000 && ExDay<172800000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+2).attr("style","background:#CC9933"); |
| | | |
| | | }else if(ExDay<-86400000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+2).attr("style","background:#CC3333"); |
| | | |
| | | }else if(ExDay>172800000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+2).attr("style","background:#2e4e7e") |
| | | } |
| | | var ExDay = eDay.getTime()-myDate.getTime() |
| | | |
| | | if(ExDay>-86400000 && ExDay<172800000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+3).attr("style","background:#CC9933"); |
| | | |
| | | }else if(ExDay<-86400000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+3).attr("style","background:#CC3333"); |
| | | |
| | | }else if(ExDay>172800000){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+3).attr("style","background:#2e4e7e") |
| | | } |
| | | }else{ |
| | | function tab(date1,date2){ |
| | | var oDate1 = new Date(date1); |
| | | var oDate2 = new Date(date2); |
| | | var oDate1 = new Date(date1); |
| | | var oDate2 = new Date(date2); |
| | | var x = oDate1.getTime()-oDate2.getTime() |
| | | if(x>=0){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+2).attr("style","background:#009966") |
| | | |
| | | } else { |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+2).attr("style","background:#CC3333"); |
| | | |
| | | } |
| | | if(x>=0){ |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+3).attr("style","background:#009966") |
| | | |
| | | } else { |
| | | $("#tab-body").find('tr').eq(t).find("td").eq(k+3).attr("style","background:#CC3333"); |
| | | |
| | | } |
| | | } |
| | | tab(endTime$,realEndTime$); |
| | | tab(endTime$,realEndTime$,); |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | |
| | | |
| | | /*****************************************************************************************************************************************************************************/ |
| | | |
| | | |
| | | |