Index: arms/html/analysisResource/content-container.html =================================================================== diff -u -r830165a7232f8ff412762c59aa30c74498313c8e -ra1a2392c0bd811971cdeda48acb29145c2c56abc --- arms/html/analysisResource/content-container.html (.../content-container.html) (revision 830165a7232f8ff412762c59aa30c74498313c8e) +++ arms/html/analysisResource/content-container.html (.../content-container.html) (revision a1a2392c0bd811971cdeda48acb29145c2c56abc) @@ -111,8 +111,8 @@ -
-
+
+
종합 진행 현황
@@ -121,7 +121,7 @@
-
+

@@ -134,18 +134,16 @@
-
-
+
-
- - 작업 중 요구사항 + 작업 중
-
|
+
|
-
-
+
-
- - 작업 대상 요구사항 + └ 작업 대상 ┘
@@ -154,40 +152,40 @@ style="padding-bottom: 10px; border: 0">
- 작업 중 요구사항()의 연결이슈 평균: -
+ 요구사항() 연결이슈 평균: -

- 총 요구사항 (미할당)
- 개 (-)

+ 총 요구사항
(미할당)
- 개 (-)

- 총 연결이슈 (미할당)
- 개 (-)

+ 총 연결이슈
(미할당)
- 개 (-)

-
+
-
+
일정(Time) 현황
+
-
-
-
+
-
【 일정 】
-
|
+
|
-
-
+
-
【 경과 】
@@ -208,7 +206,7 @@
-
-
+
-
투입 작업자 수 Index: arms/js/analysis/resource/chart/basicRadar.js =================================================================== diff -u -r3c402275f940e1e3b23886bf24d751dbcf2c3198 -ra1a2392c0bd811971cdeda48acb29145c2c56abc --- arms/js/analysis/resource/chart/basicRadar.js (.../basicRadar.js) (revision 3c402275f940e1e3b23886bf24d751dbcf2c3198) +++ arms/js/analysis/resource/chart/basicRadar.js (.../basicRadar.js) (revision a1a2392c0bd811971cdeda48acb29145c2c56abc) @@ -114,12 +114,12 @@ name: { textStyle: { color: 'white', // 데이터 전체의 이름 폰트 색상 설정 - fontSize: 11 // 데이터 전체의 이름 폰트 크기 설정 + fontSize: 12 // 데이터 전체의 이름 폰트 크기 설정 } }, nameGap: 30, - center: ["50%","65%"], - radius: "60%", + center: ["52%","63%"], + radius: "55%", axisLine: { lineStyle: { color: 'rgba(244, 244, 244, 0.5)' @@ -177,4 +177,126 @@ }; option && myChart.setOption(option,true); +} + +function drawBasicRadarForDashBoard(target,objectiveArr,currentProgressArr) { + let chartDom = document.getElementById(target); + let myChart = echarts.init(chartDom); + let option; + let scheduleMax ="-"; + let titleText = ""; + let titleColor = "white"; + let progress = ""; + if(objectiveArr.length !== 0) { + if (objectiveArr[1] !== "" || objectiveArr[1] !== 0) { + progress = (currentProgressArr[1]*100/objectiveArr[1]).toFixed(1); + titleText+= "진행률: " + progress + "%, "; + } + let dateDiff = Math.abs(objectiveArr[2] - currentProgressArr[2]).toFixed(0); + + if (objectiveArr[2] >= currentProgressArr[2]) { + scheduleMax = objectiveArr[2]; + titleText += "일정: " + dateDiff +"일 남음"; + titleColor = 'rgb(164,198,255)'; + } else { + scheduleMax = currentProgressArr[2]; + titleText += "일정: " + dateDiff +"일 초과"; + titleColor = 'rgb(219,42,52)'; + } + } + + let titleOption = {text: titleText, top: 25, + textStyle: { + color: titleColor, + fontSize: 13 + } + }; + + option = { + title: titleOption, + /*tooltip: { + trigger: 'axis' + },*/ + /*legend: { + data: ['제품(서비스) 설정기준','현재 진행상황'], // + left: "left", + textStyle: { + color: 'white', // 이름의 텍스트 색상 설정 + fontStyle: 'normal', // 이름의 텍스트 스타일 설정 (예: italic, normal) + fontSize: 11 // 이름의 텍스트 크기 설정 + } + },*/ + radar: { + // shape: 'circle', + indicator: [ + { name: '작업자수: ' + objectiveArr[0]+'명', max: objectiveArr[0] }, + { name: '요구사항: ' + objectiveArr[1]+'개', max: objectiveArr[1] }, + { name: '일정: ' + objectiveArr[2]+'일', max: scheduleMax } + ], + name: { + textStyle: { + color: 'white', // 데이터 전체의 이름 폰트 색상 설정 + fontSize: 12 // 데이터 전체의 이름 폰트 크기 설정 + } + }, + nameGap: 25, + center: ["50%","50%"], + radius: "50%", + axisLine: { + lineStyle: { + color: 'rgba(244, 244, 244, 0.5)' + } + }, + splitLine: { + lineStyle: { + color: 'gray' + } + } + }, + series: [ + { + name: 'Budget vs spending', + type: 'radar', + tooltip: { + trigger: 'item' + }, + areaStyle: {}, + data: [ + { + value: objectiveArr, + name: '제품(서비스) 설정기준', + symbol:'triangle', + symbolSize: 10, + areaStyle: { + opacity: 0.3 + } + }, + { + value: currentProgressArr, + name: '현재 진행상황', + symbol:'roundRect', // circle, rect, roundRect, triangle, diamond, pin, arrow + symbolSize: 10, + label: { + show: true, + textStyle: { + color: 'rgb(162,198,255)', + fontsize: 12, + backgroundColor: 'rgba(51,51,51,0.8)', + padding: [3, 5], + borderRadius: 3, + }, + formatter: function (params) { + return params.value; + } + }, + areaStyle: { + opacity: 0.6 + } + } + ] + } + ] + }; + + option && myChart.setOption(option,true); } \ No newline at end of file