From 1c4928947c1c233af5ce91b77d910625e365c9fc Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期一, 14 二月 2022 08:44:42 +0800 Subject: [PATCH] # --- src/main/webapp/static/js/projectShow.js | 585 +++++++++++++++++----------------------------------------- 1 files changed, 174 insertions(+), 411 deletions(-) diff --git a/src/main/webapp/static/js/projectShow.js b/src/main/webapp/static/js/projectShow.js index 30e38e9..83877a6 100644 --- a/src/main/webapp/static/js/projectShow.js +++ b/src/main/webapp/static/js/projectShow.js @@ -3,55 +3,47 @@ var rowName = $(this).children(".projects").html() // 褰撳墠琛屼腑绫诲悕涓簆rojects鐨勭被涓殑鏂囧瓧 var project = data[index] // 鎶奷ata涓殑绗琲ndex涓」鐩� 璧嬪�肩粰project if(project.id==rowName){ - - - // 姣旇緝鏃堕棿 - var currentTime = new Date() // 绯荤粺褰撳墠鏃堕棿 - var startTime = new Date(project.startDay.substring(0,10)) // 椤圭洰寮�濮嬫椂闂� - var endTime = new Date(project.endDay.substring(0,10)) // 椤圭洰缁撴潫鏃堕棿 - var node = project.nodes - for(var i=0;i<node.length;i++){ - if(node[i].startTime==''||node[i].endTime$==''){ + var currT = new Date() // 褰撳墠鏃堕棿 + var staT = new Date(project.startDay.substring(0,10)) // 椤圭洰寮�濮嬫椂闂� + var endT = new Date(project.endDay.substring(0,10)) // 椤圭洰缁撴潫鏃堕棿 + var nodes = project.nodes + // 鍒ゆ柇椤圭洰璁″垝鑺傜偣鏃堕棿鏄惁鏈夌┖鍊� + for(var i=0;i<nodes.length;i++){ + if(nodes[i].staT==''||nodes[i].endTime$==''){ show = false break }else{ show = true } - - } - console.log(show) if(show==true){ $("#details").attr("style","display:block") }else if(show==false){ $("#tips").attr("style","display:block") } - + // 椤圭洰鍚嶇О $("#details h2").html(project.id) // 棰勮鑺傜偣鏃堕棿 var tab = '' - var day = 86400000 - var allDay = (endTime - startTime + day ) / day - // 棰勮鑺傜偣鐨勫ぉ鏁�,瀹為檯鑺傜偣澶╂暟,鍗犲灏戞牸瀛�;棰勮/瀹為檯 鑺傜偣涓庨」鐩紑濮嬫椂闂寸殑鏃堕棿闂撮殧锛堜粠鍝釜鏍煎瓙寮�濮嬫覆鏌擄級 + var tabLeft3 = '' + var day = 86400000 // 涓�澶╂槸 86400000姣 + var days = (endT - staT + day ) / day // 椤圭洰鑺傜偣澶╂暟 + var bigDays = [] - for(var i = 0;i<node.length;i++){ - var nodeName = node[i].name // 鑺傜偣鍚嶇О - - var nodeStartTime = new Date(node[i].startTime.substring(0,10)) // 棰勮寮�濮嬫椂闂� - var nodeEndTime = new Date(node[i].endTime$.substring(0,10)) // 棰勮缁撴潫鏃堕棿 - var nodeRealStartTime =new Date(node[i].realStartTime$.substring(0,10)) // 瀹為檯寮�濮嬫椂闂� - var nodeRealEndTime =new Date(node[i].realEndTime$.substring(0,10)) // 瀹為檯缁撴潫鏃堕棿 - var tab2 = - '<tr id="td-node'+i+'-gz">' - +'<td rowspan="2" class="loadBox">'+nodeName+'</td>' - +'<td rowspan="2" class="loadBox">'+node[i].startTime.substring(0,10)+'</td>' - +'<td rowspan="2" class="loadBox">'+node[i].endTime$.substring(0,10)+'</td>' - +'<tr id="td-node'+i+'-gz-2">'+'</tr>' - tab = tab +tab2 - var overtime = endTime-nodeRealEndTime + for(var i = 0;i<nodes.length;i++){ + var projectsName = nodes[i].name // 鑺傜偣鍚嶇О 鏀圭涓�涓姹傜敤 + var proRET = new Date(nodes[i].realEndTime$.substring(0,10)) // 鑺傜偣瀹為檯缁撴潫鏃堕棿 + var tab2 ='<tr id="td-node'+i+'-gz">'+'<tr id="td-node'+i+'-gz-2">'+'</tr>' + tab = tab +tab2 + var tabLeft2 = '<tr class="tab-body">' + +'<td>'+projectsName+'</td>' + +'<td>'+nodes[i].startTime.substring(0,10)+'</td>' + +'<td>'+nodes[i].endTime$.substring(0,10)+'</td>' + tabLeft3 = tabLeft3 + tabLeft2 + var overtime = endT-proRET if(overtime<0){ - bigDays.push(nodeRealEndTime) + bigDays.push(proRET) } } let max = bigDays[0] @@ -60,32 +52,42 @@ } var tab1 = '<thead>' - +'<tr id="th-gz">' - +'<th class="loadBox">'+'浠诲姟鍚嶇О'+'</th>' - +'<th class="loadBox">'+'寮�濮嬫椂闂�'+'</th>' - +'<th class="loadBox">'+'缁撴潫鏃堕棿'+'</th>' - + '</tr>' + +'<tr id="th-gz">' + '</tr>' +'</thead>' - +'<tbody>' - +'<tr id="tot">' - +'<td rowspan="2" class="loadBox">'+'浠诲姟鎬绘椂闂�'+'</td>' - +'<td rowspan="2" class="loadBox">'+project.startDay.substring(0,10)+'</td>' - +'<td rowspan="2" class="loadBox">'+project.endDay.substring(0,10)+'</td>' - +'</tr>' - +'<tr id="tot-2">'+'</tr>' + +'<tbody id="tabBody">' + +'<tr id="tot">' +'</tr>' + +'<tr id="tot-2">'+'</tr>' var tab3 = tab1+tab+'</tbody>' + /* 鐢樼壒鍥惧乏渚� 椤圭洰鍐呭琛� */ + var tabLeft = '<thead>' // 琛ㄥご + +'<tr class="tab-head">' + +'<th>'+'椤圭洰鍚嶇О'+'</th>' + +'<th>'+'寮�濮嬫椂闂�'+'</th>' + +'<th>'+'缁撴潫鏃堕棿'+'</th>' + +'</tr>' + +'</thead>' + +'<tbody>' // 琛ㄨ韩 锛堥」鐩妭鐐瑰鏈級 + +'<tr class="tab-body">' + +'<td style="height: 50px">'+'椤圭洰鎬绘椂闀�'+'</td>' + +'<td style="height: 50px">'+project.startDay.substring(0,10)+'</td>' + +'<td style="height: 50px">'+project.endDay.substring(0,10)+'</td>' + +'</tr>' + + var tabLeft4 = tabLeft + tabLeft3 +'</tbody>' + $("#details-tab-left").empty() + $("#details-tab-left").append(tabLeft4) $("#details-tab").empty() $("#details-tab").append(tab3); // 濉厖鍗曞厓鏍� var nodeId = ["#tot-2"] var nodeId4 = [] - for(let k = 0;k<node.length;k++){ + for(let k = 0;k<nodes.length;k++){ var getId = "#"+"td-node"+k+"-gz" var getId2 = "#"+"td-node"+k+"-gz-2" nodeId.push(getId) nodeId.push(getId2) } - for(let k = 0;k<node.length;k++){ + for(let k = 0;k<nodes.length;k++){ var getId = "#"+"td-node"+k+"-gz" var getId2 = "#"+"td-node"+k+"-gz-2" nodeId4.push(getId) @@ -93,326 +95,60 @@ k++ } - if(max>endTime){ - allDay = (max-startTime+day)/day - endTime=max - getDateArr(startTime,endTime) + if(max>endT){ + days = (max-staT+day)/day + endT=max + getDateArr(staT,endT) }else{ - getDateArr(startTime,endTime); + getDateArr(staT,endT); } let newDataArr = [] - if(allDay <= 40){ - let iday = allDay - if(monthDays.length<2){ - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - - strr = stt - $("#th-gz").append(strr) - }else{ - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+stc - $("#th-gz").append(strr) - - for(let i=0;i<iday;i++){ - str = '<td class="loadBox-2">'+dateArr[i]+'</td>' - $("#tot").append(str); - // $(".loadBox").attr('style','width:50px') - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } + var strr ='' + // 骞翠唤 + if(monthDays.length<2){ // 涓�涓湀 + var gz=monthDays[0]-staT.getDate()+1 // 褰撳墠鏈堜唤鍓╀綑澶╂暟 + stt = '<th class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</th>' // 鏈夊灏戝ぉ灏辨í璺ㄥ灏戜釜鏍煎瓙 + $("#th-gz").append(stt) + }else if (monthDays.length<3){ // 涓や釜鏈� + var gz=monthDays[0]-staT.getDate()+1// 褰撳墠鏈堜唤鍓╀綑澶╂暟 + stt = '<th class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</th>' // 鏈夊灏戝ぉ灏辨í璺ㄥ灏戜釜鏍煎瓙 + var gz2 = monthDays[1]-(monthDays[1]-endT.getDate()) // 鍓╀綑鐨勫ぉ鏁�=褰撴湀澶╂暟-锛堝綋鏈堝ぉ鏁�-缁撴潫鏃ユ湡锛� + stt2 = '<th class="loadBox" colspan="'+gz2+'">'+newMonthArr[1]+'</th>' + strr =stt +stt2 + $("#th-gz").append(strr) + }else { // 涓変釜鏈堝強浠ヤ笂 + var gz=monthDays[0]-staT.getDate()+1// 褰撳墠鏈堜唤鍓╀綑澶╂暟 + stt = '<th class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</th>' // 鏈夊灏戝ぉ灏辨í璺ㄥ灏戜釜鏍煎瓙 + var gz2 = monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endT.getDate()) // 鍓╀綑鐨勫ぉ鏁�=褰撴湀澶╂暟-锛堝綋鏈堝ぉ鏁�-缁撴潫鏃ユ湡锛� + stt2 = '<th class="loadBox" colspan="'+gz2+'">'+newMonthArr[newMonthArr.length-1]+'</th>' + // 鍘婚櫎绗竴涓湀 鍜屾渶鍚庝竴涓湀 + monthDays.shift() + monthDays.pop() + newMonthArr.shift() + newMonthArr.pop() + var std = '' + for (var j=0;j<monthDays.length;j++){ + stt3 = '<th class="loadBox" colspan="'+monthDays[j]+'">'+newMonthArr[j]+'</th>' + std = std + stt3 } - - }else if(allDay>40 && allDay<=80){ - let iday = Math.ceil(allDay / 2 ) - for(var m=0;m<monthDays.length-1;m++){ - var gzd=monthDays[m] - std = '<td class="loadBox" colspan="'+gzd+'">'+newMonthArr[m]+'</td>' + strr = stt + std +stt2 + $("#th-gz").append(strr) + } + // 椤圭洰鏃堕棿鍗曞厓鏍� + for(let i=0;i<days;i++){ + str = '<th class="loadBox-2">'+dateArr[i]+'</th>' + $("#tot").append(str); + // $(".loadBox").attr('style','width:50px') + } + // 鑺傜偣鏃堕棿鍗曞厓鏍� + for (let j=0;j<days;j++){ + tds = '<td class="gz-color'+j+' time-color">'+'</td>' + for(let k in nodeId){ + $(nodeId[k]).append(tds) } - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+std+stc - $("#th-gz").append(strr) - for(let k=0;k<dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k++ - } - for(let i=0;i<iday;i++){ - str = '<td class="loadBox-2" colspan="2">'+newDataArr[i]+'</td>' - $("#tot").append(str); - // $(".loadBox").attr('style','width:50px') - } - allDays = allDay%2 - if(allDays==1){ - allDay = allDay+1 - }else { - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>80 && allDay<=120){ - let iday = Math.ceil(allDay / 3 ) - var num = 1 - var ste = null - for(var m=0;m<monthDays.length-2;m++){ - var gzd=monthDays[m+1] - - std = '<td class="loadBox" colspan="'+gzd+'">'+newMonthArr[num]+'</td>' - ste=ste+std - num++ - } - - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+ste+stc - $("#th-gz").append(strr) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+2 - } - for(let i=0;i<iday;i++){ - // 鍥哄畾琛� - str = '<td class="loadBox-2" colspan="3">'+newDataArr[i]+'</td>' - $("#tot").append(str); - // $(".loadBox").attr('style','width:10px;padding:0px') - } - allDays = allDay%3 - if(allDays==1){ - allDay = allDay+2 - }else if(allDays==2){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>120 && allDay<=160){ - let iday = Math.ceil(allDay / 4 ) - var num = 1 - var ste = null - for(var m=0;m<monthDays.length-2;m++){ - var gzd=monthDays[m+1] - std = '<td class="loadBox" colspan="'+gzd+'">'+newMonthArr[num]+'</td>' - ste=ste+std - num++ - } - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+ste+stc - $("#th-gz").append(strr) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+3 - } - for(let i=0;i<iday;i++){ - str = '<td class="loadBox-2" colspan="4">'+newDataArr[i]+'</td>' - $("#tot").append(str); - } - allDays = allDay%4 - if(allDays==1){ - allDay = allDay+3 - }else if(allDays==2){ - allDay = allDay+2 - }else if(allDays==3){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>160 && allDay<=200){ - let iday = Math.ceil(allDay / 5 ) - var num = 1 - var ste = null - for(var m=0;m<monthDays.length-2;m++){ - var gzd=monthDays[m+1] - - std = '<td class="loadBox" colspan="'+gzd+'">'+newMonthArr[num]+'</td>' - ste=ste+std - num++ - } - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+ste+stc - $("#th-gz").append(strr) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+4 - } - for(let i=0;i<iday;i++){ - // 鍥哄畾琛� - str = '<td class="loadBox-2" colspan="5">'+newDataArr[i]+'</td>' - $("#tot").append(str); - } - allDays = allDay%5 - if(allDays==1){ - allDay = allDay+4 - }else if(allDays==2){ - allDay = allDay+3 - }else if(allDays==3){ - allDay = allDay+2 - }else if(allDays==4){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>200 && allDay<=240){ - let iday = Math.ceil(allDay / 6 ) - var num = 1 - var ste = null - for(var m=0;m<monthDays.length-2;m++){ - var gzd=monthDays[m+1] - std = '<td class="loadBox" colspan="'+gzd+'">'+newMonthArr[num]+'</td>' - ste=ste+std - num++ - } - var gz=monthDays[0]-startTime.getDate()+1 - stt = '<td class="loadBox" colspan="'+gz+'">'+newMonthArr[0]+'</td>' - var gze=monthDays[monthDays.length-1]-(monthDays[monthDays.length-1]-endTime.getDate()) - stc = '<td class="loadBox" colspan="'+gze+'">'+newMonthArr[newMonthArr.length-1]+'</td>' - strr = stt+ste+stc - $("#th-gz").append(strr) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+5 - } - for(let i=0;i<iday;i++){ - // 鍥哄畾琛� - str = '<td class="loadBox-2" colspan="6">'+newDataArr[i]+'</td>' - $("#tot").append(str); - } - allDays = allDay%6 - if(allDays==1){ - allDay = allDay+5 - }else if(allDays==2){ - allDay = allDay+4 - }else if(allDays==3){ - allDay = allDay+3 - }else if(allDays==4){ - allDay = allDay+2 - }else if(allDays==5){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>240){ - let iday = Math.ceil(allDay / 7 ) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+6 - } - for(let i=0;i<iday;i++){ - // 鍥哄畾琛� - str = '<td class="loadBox" colspan="7">'+newDataArr[i]+'</td>' - $("#th-gz").append(str); - } - allDays = allDay%7 - if(allDays==1){ - allDay = allDay+6 - }else if(allDays==2){ - allDay = allDay+5 - }else if(allDays==3){ - allDay = allDay+4 - }else if(allDays==4){ - allDay = allDay+3 - }else if(allDays==5){ - allDay = allDay+2 - }else if(allDays==6){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - }else if(allDay>280){ - let iday = Math.ceil(allDay / 8 ) - for(let k=0;k<=dateArr.length;k++){ - var newDays = dateArr[k] - newDataArr.push(newDays) - k=k+7 - } - for(let i=0;i<iday;i++){ - // 鍥哄畾琛� - str = '<td class="loadBox-2" colspan="8">'+newDataArr[i]+'</td>' - $("#th-gz").append(str); - } - allDays = allDay%8 - if(allDays==1){ - allDay = allDay+7 - }else if(allDays==2){ - allDay = allDay+6 - }else if(allDays==3){ - allDay = allDay+5 - }else if(allDays==4){ - allDay = allDay+4 - }else if(allDays==5){ - allDay = allDay+3 - }else if(allDays==6){ - allDay = allDay+2 - }else if(allDays==7){ - allDay = allDay+1 - }else{ - allDay = allDay - } - for (let j=0;j<allDay;j++){ - tds = '<td class="gz-color">'+'</td>' - for(let k in nodeId){ - $(nodeId[k]).append(tds) - } - } - } - // 123 + } var nodeId2 = [],nodeId3 = [] - for(let k = 0;k<node.length;k++){ + for(let k = 0;k<nodes.length;k++){ var getId2 = "#"+"td-node"+k+"-gz" var getId3 = "#"+"td-node"+k+"-gz-2" nodeId2.push(getId2) @@ -421,79 +157,104 @@ for(var i=0;i<nodeId4.length;i++){ $(nodeId4[i]).attr("style","background:#eeeeef") } - // for(var j = 0;j < allDay;j++){ + // for(var j = 0;j < days;j++){ // $("#tot").find("td").eq(j+3).attr("style","background:#3597D6") // } - var runDay = Math.ceil((currentTime - startTime)/ day) + var runDay = Math.ceil((currT - staT)/ day) if(runDay>0){ for(var j = 0;j < runDay;j++){ - $("#tot-2").find("td").eq(j).attr("style","background:#49C7D3") + $("#tot-2").find("td").eq(j).attr("style","background:#8bddde") } } - for(var i = 0;i<node.length;i++){ - var nodeName = node[i].name // 鑺傜偣鍚嶇О - var nodeStartTime = new Date(node[i].startTime.substring(0,10)) // 棰勮寮�濮嬫椂闂� - var nodeEndTime = new Date(node[i].endTime$.substring(0,10)) // 棰勮缁撴潫鏃堕棿 - var nodeRealStartTime =new Date(node[i].realStartTime$.substring(0,10)) // 瀹為檯寮�濮嬫椂闂� - var nodeRealEndTime =new Date(node[i].realEndTime$.substring(0,10)) // 瀹為檯缁撴潫鏃堕棿 - var nodeDay = (nodeEndTime-nodeStartTime+day)/day // 棰勮寮�濮�-棰勮缁撴潫鏃堕棿娈� - var nodeRSDay = (nodeEndTime-nodeRealStartTime+day)/day // 瀹為檯寮�濮�-棰勮缁撴潫鏃堕棿娈� - var nodeREDay = (nodeRealEndTime-nodeStartTime+day)/day // 棰勮寮�濮�-瀹為檯缁撴潫鏃堕棿娈� - var nodeRealDay = (nodeRealEndTime-nodeRealStartTime+day)/day //瀹為檯鏃堕棿娈� - var intDay = (nodeStartTime-startTime)/day // 棰勮寮�濮嬫椂闂翠笌椤圭洰寮�濮嬫椂闂寸殑闂撮殧 - var intRealDay = (nodeRealStartTime-startTime)/day // 瀹為檯寮�濮嬩笌椤圭洰寮�濮嬫椂闂寸殑闂撮殧 - var nodeRunDay = Math.ceil((currentTime-nodeStartTime)/ day) - var nodeRealRunDay = Math.ceil((currentTime-nodeRealStartTime)/ day) - var nodeRun = Math.ceil((currentTime-nodeEndTime-day)/ day) - var intRunDay = nodeRealEndTime-(nodeRealEndTime-(nodeEndTime-nodeStartTime))/day + for(var i = 0;i<nodes.length;i++){ + var proST = new Date(nodes[i].startTime.substring(0,10)) // 璁″垝寮�濮嬫棩鏈� + var proET = new Date(nodes[i].endTime$.substring(0,10)) // 璁″垝缁撴潫鏃ユ湡 + var proET2 = new Date(proET.getTime()-day*2) // 璁″垝缁撴潫鏃ユ湡-2澶� + var proRST =new Date(nodes[i].realStartTime$.substring(0,10)) // 瀹為檯寮�濮嬫棩鏈� + var proRET =new Date(nodes[i].realEndTime$.substring(0,10)) // 瀹為檯缁撴潫鏃ユ湡 + var nodeDay = (proET-proST+day)/day // 璁″垝宸ヤ綔澶╂暟 + var nodeRSDay = (proET-proRST+day)/day // 鑺傜偣瀹為檯宸ヤ綔澶╂暟 + var nodeREDay = (proRET-proST+day)/day // 瀹為檯缁撴潫鍑忚鍒掑紑濮嬫椂闂� + var nodeRealDay = (proRET-proRST+day)/day //瀹為檯鏃堕棿娈� + var intDay = (proST-staT)/day // 棰勮寮�濮嬫椂闂翠笌椤圭洰寮�濮嬫椂闂寸殑闂撮殧 + var intRealDay = (proRST-staT)/day // 瀹為檯寮�濮嬩笌椤圭洰寮�濮嬫椂闂寸殑闂撮殧 + var intRealEndDay = (proRET-staT)/day // 瀹為檯缁撴潫涓庨」鐩紑濮嬬殑闂撮殧 + var nodeRunDay = Math.ceil((currT-proST)/ day) + var nodeRealRunDay = Math.ceil((currT-proRST)/ day) + var nodeRun = Math.ceil((currT-proET-day)/ day) + var notRealStartDay = proRET-(proET-proST) // 鎺ㄧ畻鐨勫疄闄呭紑濮嬫棩鏈� + var intNotRealStartTime = (new Date(notRealStartDay)-staT)/day // 鎺ㄧ畻鐨勫紑濮嬫棩鏈熶笌椤圭洰寮�濮嬫棩鏈熺殑鏃堕棿娈� + + + // 涓庡綋鍓嶆椂闂寸殑鏃堕棿宸� for(var j=0;j<nodeDay;j++){ - $(nodeId2[i]).find('td').eq(3+intDay+j).attr("style","background:#3597D6") + $(nodeId2[i]).find('td').eq(intDay+j).attr("style","background:#5998f5") } - // 瀹為檯寮�濮嬫椂闂翠笌缁撴潫鏃堕棿閮藉~鍐� 鎸夊疄闄呮椂闂磋繘娓叉煋 - if(nodeRealStartTime != "Invalid Date" && nodeRealEndTime !="Invalid Date"){ + // 瀹為檯寮�濮嬫棩鏈熶笌瀹為檯缁撴潫鏃ユ湡閮藉~鍐� 鎸夊疄闄呮椂闂磋繘娓叉煋 + if(proRST != "Invalid Date" && proRET !="Invalid Date"){ + for(var j=0;j<nodeRealDay;j++){ - $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#49C7D3") + if(proRET<=proET2){ // 瀹為檯缁撴潫鏃ユ湡<=璁″垝缁撴潫鏃ユ湡 + $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#00cc88") + }else if(proRET>proET2 && proRET<=proET){ // 瀹為檯缁撴潫鏃ユ湡>璁″垝缁撴潫鏃ユ湡 + $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#00cc88") + }else { // 瀹為檯缁撴潫鏃ユ湡>璁″垝缁撴潫鏃ユ湡+2澶� + $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#e63939") + } } - // 瀹為檯寮�濮嬫椂闂村凡濉� 瀹為檯缁撴潫鏃堕棿鏈~ 瀹為檯缁撴潫鏃堕棿鎸夐璁$粨鏉熸椂闂村~ - }else if(nodeRealStartTime != "Invalid Date" && nodeRealEndTime =="Invalid Date"){ + // 瀹為檯寮�濮嬫椂闂村凡濉� 瀹為檯缁撴潫鏃堕棿鏈~ (瀹為檯缁撴潫鏃堕棿鎸夐璁$粨鏉熸椂闂村~)鏀� 褰撳墠鏃堕棿涓庡疄闄呭紑濮嬫椂闂寸殑闂撮殧 + }else if(proRST != "Invalid Date" && proRET =="Invalid Date"){ for(var j=0;j<nodeRealRunDay;j++){ if(nodeRun>0){ $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#CC3333") - }else if(nodeRun>-2 && nodeRun<=0){ - $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#CC9933") + }else if(nodeRun>-3 && nodeRun<=0){ + $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#ccc739") }else{ - $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#49C7D3") + $(nodeId3[i]).find('td').eq(intRealDay+j).attr("style","background:#8bddde") } } - // 瀹為檯寮�濮嬫椂闂存湭濉� 瀹為檯缁撴潫鏃堕棿宸插~ 瀹為檯寮�濮嬫椂闂存寜棰勮寮�濮嬫椂闂村~ - }else if(nodeRealStartTime == "Invalid Date" && nodeRealEndTime !="Invalid Date"){ - if(nodeEndTime<nodeRealEndTime){ - for(var j=0;j<nodeREDay;j++){ - $(nodeId3[i]).find('td').eq(intDay+j).attr("style","background:#49C7D3") + // 瀹為檯寮�濮嬫椂闂存湭濉� 瀹為檯缁撴潫鏃堕棿宸插~ 瀹為檯寮�濮嬫椂闂存寜璁″垝寮�濮嬫椂闂� + }else if(proRST == "Invalid Date" && proRET !="Invalid Date"){ + if(proRET<=proST){ // 瀹為檯缁撴潫鏃ユ湡<=璁″垝寮�濮嬫棩鏈� 鏆傛椂涓嶅~鍏� + // for(var j=0;j<nodeDay;j++){ // 澶╂暟鏄妭鐐硅鍒掑ぉ鏁� + // $(nodeId3[i]).find('td').eq(intNotRealStartTime+j).attr("style","background:#49C7D3") // 瀹為檯寮�濮嬫棩鏈熸槸 瀹為檯缁撴潫鏃ユ湡-璁″垝澶╂暟 + // } + }else if(proRET<=proET){ //瀹為檯缁撴潫鏃ユ湡<=璁″垝缁撴潫鏃ユ湡 + for(var j=0;j<nodeREDay;j++) { // 澶╂暟鏄� 瀹為檯缁撴潫鏃ユ湡-璁″垝寮�濮嬫棩鏈� + $(nodeId3[i]).find('td').eq(intDay + j).attr("style", "background:#00cc88")// 瀹為檯寮�濮嬫棩鏈熸槸 瀹為檯缁撴潫鏃ユ湡-璁″垝澶╂暟 } - }else if(nodeEndTime>=nodeRealEndTime && nodeRealEndTime>=nodeStartTime){ - for(var j=0;j<nodeREDay;j++){ - $(nodeId3[i]).find('td').eq(intDay+j).attr("style","background:#49C7D3") - } - }else{ - if(intRunDay<0){ - intRunDay = 0 - for(var j=0;j<nodeDay;j++){ - $(nodeId3[i]).find('td').eq(intRunDay+j).attr("style","background:#49C7D3") - } - } - for(var j=0;j<nodeDay;j++){ - $(nodeId3[i]).find('td').eq(intRunDay+j).attr("style","background:#49C7D3") + }else{ // 瀹為檯缁撴潫鏃ユ湡>璁″垝缁撴潫鏃ユ湡 + for(var j=0;j<nodeREDay;j++) { // 澶╂暟鏄� 瀹為檯缁撴潫鏃ユ湡-璁″垝寮�濮嬫棩鏈� + $(nodeId3[i]).find('td').eq(intDay + j).attr("style", "background:#CC3333")// 瀹為檯寮�濮嬫棩鏈熸槸 瀹為檯缁撴潫鏃ユ湡-璁″垝澶╂暟 } } // 瀹為檯寮�濮嬫椂闂存湭濉� 瀹為檯缁撴潫鏃堕棿鏈~ - }else if(nodeRealStartTime == "Invalid Date" && nodeRealEndTime =="Invalid Date"){ - for(var j=0;j<nodeDay;j++){ - $(nodeId3[i]).find('td').eq(intDay+j).attr("style","background:#49C7D3") - } + }else if(proRST == "Invalid Date" && proRET =="Invalid Date"){ + } } + // 榧犳爣缁忚繃 + $(document).on('mouseover','.time-color',function () { + // console.log($(this).attr('class')) + var cls = $(this).attr('class').split(' ')[0] + var cll = '.'+cls + $(cll).addClass('over-color') + }) + // 榧犳爣绂诲紑 + $(document).on('mouseout','.time-color',function () { + // console.log($(this).attr('class')) + var cls = $(this).attr('class').split(' ')[0] + var cll = '.'+cls + $(cll).removeClass('over-color') + }) + // 婊氳疆 + + + + + + function getDateArr(start,end) { let option = new Date(start) // 寮�濮嬫椂闂� let nowDate = new Date(end) // 缁撴潫鏃堕棿 @@ -530,4 +291,6 @@ } } }) - \ No newline at end of file + + + -- Gitblit v1.9.1