From 8745b76acfd45eadd720d7ce6d87c77e6e0682b9 Mon Sep 17 00:00:00 2001
From: mrzhssss <pro6@qq.com>
Date: 星期二, 06 九月 2022 12:46:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/zypms' into zypms

---
 src/main/webapp/static/js/projectShow2.js      |  296 +++++++++++++++++++++++++++++
 src/main/webapp/static/js/projectShow.js       |   14 
 src/main/webapp/static/css/style.css           |   10 
 src/main/webapp/views/index_datashow2.html     |   68 ++++++
 src/main/webapp/views/index_datashow.html      |   33 +-
 src/main/webapp/static/js/tableData2.js        |  166 +++++++++++-----
 src/main/webapp/static/css/projectSchedule.css |    1 
 7 files changed, 507 insertions(+), 81 deletions(-)

diff --git a/src/main/webapp/static/css/projectSchedule.css b/src/main/webapp/static/css/projectSchedule.css
index a4d033f..5000ccc 100644
--- a/src/main/webapp/static/css/projectSchedule.css
+++ b/src/main/webapp/static/css/projectSchedule.css
@@ -5,6 +5,7 @@
 }
 body {
 	height: 100%;
+	position: absolute;
 }
 #container {
 	padding: 10px 10px;
diff --git a/src/main/webapp/static/css/style.css b/src/main/webapp/static/css/style.css
index e77a081..44bea9b 100644
--- a/src/main/webapp/static/css/style.css
+++ b/src/main/webapp/static/css/style.css
@@ -1,16 +1,18 @@
 *{
     margin: 0;
-    overflow: hidden;
+    /*overflow: hidden;*/
 }
 html,body{
     height: 100%;
 }
 /* 鐢诲竷 */
 #root {
-    height: 100%;
+    /*height: 100%;*/
+	min-height:100%;
     width: 100%;
+	margin: 0;
 	background-color: /* #2C3E50 */ #2e4e7e;
-	position: absolute;
+	position: relative;
 }
 #top-tab {
     width: 100%;
@@ -153,7 +155,7 @@
 }
 
 #details {
-	position: relative;
+	position: absolute;
 }
 #details .head {
 	width: 100%;
diff --git a/src/main/webapp/static/js/projectShow.js b/src/main/webapp/static/js/projectShow.js
index 83877a6..7b1392b 100644
--- a/src/main/webapp/static/js/projectShow.js
+++ b/src/main/webapp/static/js/projectShow.js
@@ -2,12 +2,12 @@
 		var index = $(".row").index(this) // 纭畾鍦ㄨ〃鏍间腑鐨勭鍑犺
 		var rowName = $(this).children(".projects").html() // 褰撳墠琛屼腑绫诲悕涓簆rojects鐨勭被涓殑鏂囧瓧
 		var project = data[index] // 鎶奷ata涓殑绗琲ndex涓」鐩� 璧嬪�肩粰project
-		if(project.id==rowName){
+		if(project.projectName==rowName){
 			// 姣旇緝鏃堕棿
 			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
+			var staT = new Date(project.projectStartTime.substring(0,10)) // 椤圭洰寮�濮嬫椂闂�
+			var endT = new Date(project.projectEndTime.substring(0,10)) // 椤圭洰缁撴潫鏃堕棿
+			var nodes = project.projectPlans
 			// 鍒ゆ柇椤圭洰璁″垝鑺傜偣鏃堕棿鏄惁鏈夌┖鍊�
 			for(var i=0;i<nodes.length;i++){
 				if(nodes[i].staT==''||nodes[i].endTime$==''){
@@ -32,7 +32,7 @@
 
 			var bigDays = []
 			for(var i = 0;i<nodes.length;i++){
-				var projectsName = nodes[i].name // 鑺傜偣鍚嶇О                    鏀圭涓�涓姹傜敤
+				var projectsName = nodes[i].flowId$ // 鑺傜偣鍚嶇О                    鏀圭涓�涓姹傜敤
 				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
@@ -69,8 +69,8 @@
 							+'<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>'
+									+'<td style="height: 50px">'+project.projectStartTime.substring(0,10)+'</td>'
+									+'<td style="height: 50px">'+project.projectEndTime.substring(0,10)+'</td>'
 								+'</tr>'
 
 			var tabLeft4 = tabLeft + tabLeft3 +'</tbody>'
diff --git a/src/main/webapp/static/js/projectShow2.js b/src/main/webapp/static/js/projectShow2.js
new file mode 100644
index 0000000..83877a6
--- /dev/null
+++ b/src/main/webapp/static/js/projectShow2.js
@@ -0,0 +1,296 @@
+$(document).on("dblclick",".row",function(){
+		var index = $(".row").index(this) // 纭畾鍦ㄨ〃鏍间腑鐨勭鍑犺
+		var rowName = $(this).children(".projects").html() // 褰撳墠琛屼腑绫诲悕涓簆rojects鐨勭被涓殑鏂囧瓧
+		var project = data[index] // 鎶奷ata涓殑绗琲ndex涓」鐩� 璧嬪�肩粰project
+		if(project.id==rowName){
+			// 姣旇緝鏃堕棿
+			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
+				}
+			}
+			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 tabLeft3 = ''
+			var day = 86400000 // 涓�澶╂槸 86400000姣
+			var days = (endT - staT + day ) / day // 椤圭洰鑺傜偣澶╂暟
+
+			var bigDays = []
+			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(proRET)
+				}
+			}
+			let max = bigDays[0]
+			for(var i = 0;i<bigDays.length;i++){
+				max = max <max[i+1] ? max[i+1] : max
+			}
+			var tab1 =
+				'<thead>'
+					+'<tr id="th-gz">' + '</tr>'
+				+'</thead>'
+				+'<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<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<nodes.length;k++){
+				var getId = "#"+"td-node"+k+"-gz"
+				var getId2 = "#"+"td-node"+k+"-gz-2"
+				nodeId4.push(getId)
+				nodeId4.push(getId2)
+				k++
+			}
+			
+			if(max>endT){
+				 days = (max-staT+day)/day
+				endT=max
+				getDateArr(staT,endT)
+			}else{
+				getDateArr(staT,endT);
+			}
+			let newDataArr = []
+			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
+				}
+				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 nodeId2 = [],nodeId3 = []
+			for(let k = 0;k<nodes.length;k++){
+				var getId2 = "#"+"td-node"+k+"-gz"
+				var getId3 = "#"+"td-node"+k+"-gz-2"
+				nodeId2.push(getId2)
+				nodeId3.push(getId3)
+			}
+			for(var i=0;i<nodeId4.length;i++){
+				$(nodeId4[i]).attr("style","background:#eeeeef")
+			}
+			// for(var j = 0;j < days;j++){
+			// 	$("#tot").find("td").eq(j+3).attr("style","background:#3597D6")
+			// }
+			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:#8bddde")
+				}
+			}
+			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(intDay+j).attr("style","background:#5998f5")
+				}
+					// 瀹為檯寮�濮嬫棩鏈熶笌瀹為檯缁撴潫鏃ユ湡閮藉~鍐�  鎸夊疄闄呮椂闂磋繘娓叉煋
+				if(proRST != "Invalid Date" && proRET !="Invalid Date"){
+					
+					for(var j=0;j<nodeRealDay;j++){
+						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(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>-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:#8bddde")
+						}
+					}
+						// 瀹為檯寮�濮嬫椂闂存湭濉� 瀹為檯缁撴潫鏃堕棿宸插~  瀹為檯寮�濮嬫椂闂存寜璁″垝寮�濮嬫椂闂�
+				}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{ // 瀹為檯缁撴潫鏃ユ湡>璁″垝缁撴潫鏃ユ湡
+						for(var j=0;j<nodeREDay;j++) { // 澶╂暟鏄� 瀹為檯缁撴潫鏃ユ湡-璁″垝寮�濮嬫棩鏈�
+							$(nodeId3[i]).find('td').eq(intDay + j).attr("style", "background:#CC3333")// 瀹為檯寮�濮嬫棩鏈熸槸 瀹為檯缁撴潫鏃ユ湡-璁″垝澶╂暟
+						}
+					}
+					// 瀹為檯寮�濮嬫椂闂存湭濉� 瀹為檯缁撴潫鏃堕棿鏈~
+				}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) // 缁撴潫鏃堕棿
+					let times = option.getTime() // 鑾峰彇褰撳墠鏃堕棿鎴�(姣锛�
+					let ms = (nowDate - option ) / 86400000 // 鐩稿樊鐨勬�诲ぉ鏄殑姣鏁�(澶╂暟)
+					let days = Math.ceil(ms) // 鍚戜笂鍙栨暣鏁�
+					dateArr = [] // 鍒涘缓鏃ユ湡鏁扮粍
+					monthArr = []
+					monthDays=[]
+					let num = 0
+					while (num<=days){
+						let needDate = new Date(times)
+						times += 86400000 // 鍔犱竴澶�
+						let dayDAY = needDate.getDate(); // 鑾峰彇褰撳墠鏃堕棿鐨勬棩鏈�  1鍙� 2鍙� 3鍙� 4鍙� 绛�
+						dayDAY = dayDAY<10 ? '0'+dayDAY : dayDAY
+						dateArr.push(dayDAY)
+						let month = needDate.getMonth()+1
+						month = month<10 ? '0'+month : month
+						let year = needDate.getFullYear()
+						yMonth = year+'-'+month
+						monthArr.push(yMonth)	 
+						num++; // 璁℃鐢�
+					}
+					function unique (monthArr) {
+					  return Array.from(new Set(monthArr))
+					}
+					newMonthArr = unique(monthArr)
+					for(var i=0;i<newMonthArr.length;i++){
+						s = newMonthArr[i].split("-")
+						var d = new Date(s[0],s[1],0);
+						a = d.getDate()
+						monthDays.push(a)
+					}
+			}
+			}
+			})
+
+
+
diff --git a/src/main/webapp/static/js/tableData2.js b/src/main/webapp/static/js/tableData2.js
index 6d789d4..f518940 100644
--- a/src/main/webapp/static/js/tableData2.js
+++ b/src/main/webapp/static/js/tableData2.js
@@ -7,6 +7,7 @@
     getThbodyData()
 }, 5000)
 
+//琛ㄥご灏忚繘搴﹁〃
 var getType = function () {
     $.ajax({
         url: baseurl + '/pms/projectPlan/dataSummary',
@@ -30,61 +31,124 @@
 
 /****************************************************************************************************************************************************************************/
 
-
-var proData = ["椤圭洰鍚嶇О", "椤圭洰绫诲瀷", "鍞墠閲戦鏍哥畻", "寮�濮嬫椂闂�", "缁撴潫鏃堕棿"]
+// 琛ㄥご
+var proData = ["椤圭洰鍚嶇О", "椤圭洰绫诲瀷", "寮�濮嬫椂闂�", "缁撴潫鏃堕棿"]
 var getTheaddData = function () {
-    $.ajax({
-        url: baseurl + '/pms/flowStatus/list/auth',
-        type: 'GET',
-        data: {
-            'is_asrs':0
-        },
-        success: function (res) {
-            console.log(res);
-        }
-    })
-    for (var i = 0; i < proData.length; i++) {
-        var str = "<th class='xiangmu'>" + proData[i] + "</th>"
-        $("#tab-header").append(str)
-    }
+    //$.ajax({
+    //    url: baseurl + '/pms/flowStatus/list/auth',
+    //    type: 'GET',
+    //    data: {},
+    //    success: function (res) {
+    //
+	//	}
+    //})
+    //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)
-    // 			}
-    // 		}
-    // 	},
-    // 	})
+     $.ajax({
+     	url:baseurl+'/pms/projectPlan/flowStatus',
+     	type:'GET',
+     	dataType:'JSON',
+     	data:{},
+     	success:function(res){
+            console.log(res)
+     		if(res.code==200){
+     			data=res.data
+     			var headStr = []
+     			for(var i = 0;i<data.length;i++){
+     			    if (data[i].isAsrs == 0) {
+                        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 resMap = [
+    {
+    endDay:"2023-01-16 00:00:00",
+    id:"cs001",
+    plandeAmt:10000,
+    planinAmt: 50000,
+    presaleAmt: 5000000,
+    realdeAmt: 9000,
+    realinAmt: 40000,
+    startDay:"2022-09-15 00:00:00",
+    type: "妯寮�",
+    nodes:[{name: '涓氬姟涓嬪崟', startTime: '2022-09-10', endTime$: '2022-09-15', realStartTime$: '2022-09-10', realEndTime$: '2022-09-15'},
+        {name: '棰勪粯娆�', startTime: '2022-09-15', endTime$: '2022-09-26', realStartTime$: '2022-09-15', realEndTime$: '2022-09-26'},
+        {name: 'BOM涓婅〃', startTime: '2022-09-20', endTime$: '2022-09-30', realStartTime$: '2022-09-20', realEndTime$: '2022-09-30'},
+        {name: '鐗╂枡璇疯喘', startTime: '2022-09-30', endTime$: '2022-10-10', realStartTime$: '2022-09-30', realEndTime$: '2022-10-10'},
+        {name: '鏂藉伐璁″垝涔�', startTime: '2022-10-05', endTime$: '2022-10-18', realStartTime$: '2022-10-05', realEndTime$: '2022-10-18'},
+        {name: '鐢熶骇璁″垝', startTime: '2022-10-18', endTime$: '2022-11-30', realStartTime$: '2022-10-18', realEndTime$: '2022-11-30'},
+        {name: '鍖呰璁捐', startTime: '2022-10-25', endTime$: '2022-10-30', realStartTime$: '2022-10-25', realEndTime$: '2022-10-30'},
+        {name: '瑁呰溅璁捐', startTime: '2022-10-26', endTime$: '2022-10-30', realStartTime$: '2022-10-26', realEndTime$: '2022-10-30'},
+        {name: '鍙戣揣璁″垝涔�', startTime: '2022-10-27', endTime$: '2022-10-28', realStartTime$: '2022-10-27', realEndTime$: '2022-10-28'},
+        {name: '鐢熶骇鍒朵綔', startTime: '2022-11-01', endTime$: '2022-12-05', realStartTime$: '2022-11-01', realEndTime$: '2022-12-05'},
+        {name: '鍙戣揣', startTime: '2022-12-06', endTime$: '2022-12-10', realStartTime$: '2022-12-06', realEndTime$: '2022-12-10'},
+        {name: '瀹夎闃熺‘璁�', startTime: '2022-12-15', endTime$: '2022-12-20', realStartTime$: '2022-12-15', realEndTime$: '2022-12-20'},
+        {name: '鐗╂祦鍏徃纭', startTime: '2022-12-20', endTime$: '2022-12-30', realStartTime$: '2022-12-20', realEndTime$: '2022-12-30'},
+        {name: '瀹夎', startTime: '2022-12-01', endTime$: '2022-12-15', realStartTime$: '2022-12-01', realEndTime$: '2022-12-15'},
+        {name: '瀹屽伐鍗曠璁�', startTime: '2022-12-16', endTime$: '2022-12-18', realStartTime$: '2022-12-16', realEndTime$: '2022-12-18'},
+        {name: '楠屾敹', startTime: '2023-01-06', endTime$: '2023-01-10', realStartTime$: '2023-01-06', realEndTime$: '2023-01-10'},
+        {name: '鎬荤粨鎶ュ憡', startTime: '2023-01-15', endTime$: '2023-01-16', realStartTime$: '2023-01-15', realEndTime$: '2023-01-16'}
+    ]
+},
+    {
+        endDay:"2022-09-30 00:00:00",
+        id:"cs001",
+        plandeAmt:10000,
+        planinAmt: 50000,
+        presaleAmt: 5000000,
+        realdeAmt: 9000,
+        realinAmt: 40000,
+        startDay:"2022-09-15 00:00:00",
+        type: "妯寮�",
+        nodes:[{name: '涓氬姟涓嬪崟', startTime: '2022-09-10', endTime$: '2022-09-10', realStartTime$: '2022-09-30', realEndTime$: '2022-09-09'},
+            {name: '棰勪粯娆�', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: 'BOM涓婅〃', startTime: '2022-09-24', endTime$: '2022-09-24', realStartTime$: '2022-09-25', realEndTime$: '2022-09-25'},
+            {name: '鐗╂枡璇疯喘', startTime: '2022-09-30', endTime$: '2022-09-30', realStartTime$: '2022-09-29', realEndTime$: '2022-09-29'},
+            {name: '鏂藉伐璁″垝涔�', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: '鐢熶骇璁″垝', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: '鍖呰璁捐', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '瑁呰溅璁捐', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: '鍙戣揣璁″垝涔�', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: '鐢熶骇鍒朵綔', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'},
+            {name: '鍙戣揣', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '瀹夎闃熺‘璁�', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '鐗╂祦鍏徃纭', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '瀹夎', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '瀹屽伐鍗曠璁�', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-06', realEndTime$: '2022-09-06'},
+            {name: '楠屾敹', startTime: '2022-09-06', endTime$: '2022-09-06', realStartTime$: '2022-09-27', realEndTime$: '2022-09-30'},
+            {name: '鎬荤粨鎶ュ憡', startTime: '2022-09-26', endTime$: '2022-09-26', realStartTime$: '2022-09-26', realEndTime$: '2022-09-26'}
+        ]
+    },
+
+];
 var getThbodyData = function () {
     $.ajax({
-        url: baseurl + '/pms/projectPlan/toFront',
+        url: baseurl + '/pms/projectPlan/toFront/common',
         type: 'GET',
         dataType: 'JSON',
         data: {},
         success: function (res) {
             if (res.code == 200) {
-                // console.log(res)
+                 console.log(res)
                 data = res.data
+                //data = resMap
                 // 鍒ゆ柇鏃堕棿鏄惁鏈塶ull  鏈塶ull鐨勬敼涓� ""
                 for (var i = 0; i < data.length; i++) {
-                    var dataNode = data[i].nodes
+                    var dataNode = data[i].projectPlans
                     for (var j = 0; j < dataNode.length; j++) {
                         var dataNull = dataNode[j]
                         for (var k in dataNull) {
@@ -93,18 +157,14 @@
                     }
                     data[i].presaleAmt = data[i].presaleAmt === null ? "" : data[i].presaleAmt;
                     data[i].plandeAmt = data[i].plandeAmt === null ? "" : data[i].plandeAmt;
-                    ;
                     data[i].planinAmt = data[i].planinAmt === null ? "" : data[i].planinAmt;
-                    ;
                     data[i].realdeAmt = data[i].realdeAmt === null ? "" : data[i].realdeAmt;
-                    ;
                     data[i].realinAmt = data[i].realinAmt === null ? "" : data[i].realinAmt;
-                    ;
                 }
                 // 琛ㄨ韩濉厖
                 $('#tab-body').empty()
                 for (var i = 0; i < data.length; i++) {
-                    var node = data[i].nodes
+                    var node = data[i].projectPlans
                     for (var j = 0; j < node.length; j++) {
                         var dataNull = node[j]
                         for (var k in dataNull) {
@@ -120,13 +180,14 @@
                         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>'
+                        + '<th class="projects">' + data[i].projectName + '</th>'
+                        + '<th class="projects">' + data[i].projectType + '</th>'
+                        //+ '<td class="nor-mal">' + data[i].presaleAmt + '</td>'
+                        + '<td class="nor-mal">' + '<p>' + data[i].projectStartTime.substring(0, 10) + '</p>' + '</td>'
+                        + '<td class="nor-mal">' + '<p>' + data[i].projectEndTime.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>'
+                    str9 = ''
                     var str3 = str2 + str + str9 + '</tr>'
                     $('#tab-body').append(str3)
                     var deAmt = data[i].plandeAmt - data[i].realdeAmt
@@ -175,21 +236,16 @@
                                 var x = oDate1.getTime() - oDate2.getTime()
                                 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$,);
                         }
-
                     }
                 }
-
             }
-
         }
     })
 }
diff --git a/src/main/webapp/views/index_datashow.html b/src/main/webapp/views/index_datashow.html
index a891391..d58879a 100644
--- a/src/main/webapp/views/index_datashow.html
+++ b/src/main/webapp/views/index_datashow.html
@@ -16,27 +16,30 @@
     <div id="root">
 		<!-- 鏍囬 -->
 		<div id="top-tab">
-			<h1>椤圭洰杩涘害琛�</h1>
+			<h1>甯歌椤圭洰杩涘害琛�</h1>
 
 			<img src="../static/image/logo-bar.png" alt="logo">
 			<div id="showTime">
 				
 			</div>
 		</div>
-		<table id="proType" cellspacing="0" cellpadding="0">
-			<thead id="type-header"></thead>
-		</table>
-        <table id="main-tab" cellspacing="0" cellpadding="0">
-			<!-- 琛ㄥご -->
-			<thead id="tab-header">
-				
-			</thead>
-			<!-- 琛ㄨ韩浣� -->
-			<tbody id="tab-body"> </tbody>
-			<!-- 娉ㄦ剰浜嬮」 -->
-			<tr><th>娉ㄦ剰浜嬮」</th></tr>
-		   
-        </table>
+		<div class="table-room" >
+			<table id="proType" cellspacing="0" cellpadding="0">
+				<thead id="type-header"></thead>
+			</table>
+			<table id="main-tab" cellspacing="0" cellpadding="0">
+				<!-- 琛ㄥご -->
+				<thead id="tab-header">
+
+				</thead>
+				<!-- 琛ㄨ韩浣� -->
+				<tbody id="tab-body"> </tbody>
+				<!-- 娉ㄦ剰浜嬮」 -->
+				<tr><th>娉ㄦ剰浜嬮」</th></tr>
+
+			</table>
+		</div>
+
     </div>
 	<div id="details">
 		<div class="head">
diff --git a/src/main/webapp/views/index_datashow2.html b/src/main/webapp/views/index_datashow2.html
new file mode 100644
index 0000000..38575aa
--- /dev/null
+++ b/src/main/webapp/views/index_datashow2.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+	<title>椤圭洰杩涘害琛�</title>
+	<link rel="stylesheet" href="../static/css/style.css">
+	<script src="../static/js/config.js"></script>
+	<script src="../static/js/jquery-3.3.1.min.js"></script>
+	<script src="../static/js/clock.js"></script>
+<!--	<script src="../static/js/tableData.js"></script>-->
+	<script src="../static/js/tableData2.js"></script>
+	<script src="../static/js/projectShow2.js"></script>
+	<script src="../static/js/cols.js"></script>
+</head>
+<body>
+    <div id="root">
+		<!-- 鏍囬 -->
+		<div id="top-tab">
+			<h1>椤圭洰杩涘害琛�</h1>
+
+			<img src="../static/image/logo-bar.png" alt="logo">
+			<div id="showTime">
+				
+			</div>
+		</div>
+		<table id="proType" cellspacing="0" cellpadding="0">
+			<thead id="type-header"></thead>
+		</table>
+        <table id="main-tab" cellspacing="0" cellpadding="0">
+			<!-- 琛ㄥご -->
+			<thead id="tab-header">
+				
+			</thead>
+			<!-- 琛ㄨ韩浣� -->
+			<tbody id="tab-body"> </tbody>
+			<!-- 娉ㄦ剰浜嬮」 -->
+			<tr><th>娉ㄦ剰浜嬮」</th></tr>
+		   
+        </table>
+    </div>
+	<div id="details">
+		<div class="head">
+			<h2></h2>
+			<button id="close" type="button" style="float: right;">鍏� 闂�</button>
+		</div>
+		<table id="details-tab-left" cellspacing="0" cellpadding="0"></table>
+		<table id="details-tab" cellspacing="0" cellpadding="0">
+			<thead>
+			</thead>
+			<tbody>
+			</tbody>
+		</table>
+	</div>
+	<div id="tips">
+		<h3>鎻愮ず</h3>
+		<div id="text">褰撳墠椤圭洰璁″垝鏃堕棿涓嶅畬鏁达紱璇疯ˉ鍏呭畬鎴愬悗閲嶈瘯!</div>
+		<button id="closee" onclick="">纭� 璁�</button>
+	</div>
+</body>
+</html>
+<script type="text/javascript">
+	$("#close").on("click",function(){
+		$("#details").attr("style","display:none")
+	})
+	$("#closee").on("click",function(){
+		$("#tips").attr("style","display:none")
+	})
+</script>
\ No newline at end of file

--
Gitblit v1.9.1