use of com.netsteadfast.greenstep.po.hbm.BbMeasureData in project bamboobsc by billchen198318.
the class AggregationMethod method averageDistinct.
public float averageDistinct(KpiVO kpi) throws Exception {
List<BbMeasureData> measureDatas = kpi.getMeasureDatas();
List<Float> scores = new ArrayList<Float>();
// init zero
float score = 0.0f;
int size = 0;
for (BbMeasureData measureData : measureDatas) {
BscMeasureData data = new BscMeasureData();
data.setActual(measureData.getActual());
data.setTarget(measureData.getTarget());
try {
Object value = BscFormulaUtils.parse(kpi.getFormula(), data);
if (value == null) {
continue;
}
if (!NumberUtils.isNumber(String.valueOf(value))) {
continue;
}
float nowScore = NumberUtils.toFloat(String.valueOf(value), 0.0f);
if (!scores.contains(nowScore)) {
scores.add(nowScore);
score += nowScore;
size++;
}
} catch (Exception e) {
e.printStackTrace();
}
}
if (score != 0.0f && size > 0) {
score = score / size;
}
return score;
}
use of com.netsteadfast.greenstep.po.hbm.BbMeasureData in project bamboobsc by billchen198318.
the class AggregationMethod method sum.
public float sum(KpiVO kpi) throws Exception {
List<BbMeasureData> measureDatas = kpi.getMeasureDatas();
// init
float score = 0.0f;
//int size = 0;
for (BbMeasureData measureData : measureDatas) {
BscMeasureData data = new BscMeasureData();
data.setActual(measureData.getActual());
data.setTarget(measureData.getTarget());
try {
Object value = BscFormulaUtils.parse(kpi.getFormula(), data);
if (value == null) {
continue;
}
if (!NumberUtils.isNumber(String.valueOf(value))) {
continue;
}
score += NumberUtils.toFloat(String.valueOf(value), 0.0f);
//size++;
} catch (Exception e) {
e.printStackTrace();
}
}
return score;
}
use of com.netsteadfast.greenstep.po.hbm.BbMeasureData in project bamboobsc by billchen198318.
the class AggregationMethod method average.
public float average(KpiVO kpi) throws Exception {
List<BbMeasureData> measureDatas = kpi.getMeasureDatas();
// init zero
float score = 0.0f;
int size = 0;
for (BbMeasureData measureData : measureDatas) {
BscMeasureData data = new BscMeasureData();
data.setActual(measureData.getActual());
data.setTarget(measureData.getTarget());
try {
Object value = BscFormulaUtils.parse(kpi.getFormula(), data);
if (value == null) {
continue;
}
if (!NumberUtils.isNumber(String.valueOf(value))) {
continue;
}
score += NumberUtils.toFloat(String.valueOf(value), 0.0f);
size++;
} catch (Exception e) {
e.printStackTrace();
}
}
if (score != 0.0f && size > 0) {
score = score / size;
}
return score;
}
use of com.netsteadfast.greenstep.po.hbm.BbMeasureData in project bamboobsc by billchen198318.
the class AggregationMethod method countDateRange.
public void countDateRange(KpiVO kpi, String frequency) throws Exception {
BscReportSupportUtils.loadExpression();
for (DateRangeScoreVO dateScore : kpi.getDateRangeScores()) {
float score = 0.0f;
int size = 0;
for (BbMeasureData measureData : kpi.getMeasureDatas()) {
String date = dateScore.getDate().replaceAll("/", "");
if (!this.isDateRange(date, frequency, measureData)) {
continue;
}
size++;
}
score = Float.valueOf(size);
dateScore.setScore(score);
dateScore.setFontColor(BscScoreColorUtils.getFontColor(score));
dateScore.setBgColor(BscScoreColorUtils.getBackgroundColor(score));
dateScore.setImgIcon(BscReportSupportUtils.getHtmlIcon(kpi, score));
}
}
use of com.netsteadfast.greenstep.po.hbm.BbMeasureData in project bamboobsc by billchen198318.
the class AggregationMethod method sumDistinctDateRange.
public void sumDistinctDateRange(KpiVO kpi, String frequency) throws Exception {
BscReportSupportUtils.loadExpression();
for (DateRangeScoreVO dateScore : kpi.getDateRangeScores()) {
List<Float> scores = new ArrayList<Float>();
float score = 0.0f;
//int size = 0;
for (BbMeasureData measureData : kpi.getMeasureDatas()) {
String date = dateScore.getDate().replaceAll("/", "");
if (!this.isDateRange(date, frequency, measureData)) {
continue;
}
BscMeasureData data = new BscMeasureData();
data.setActual(measureData.getActual());
data.setTarget(measureData.getTarget());
try {
Object value = BscFormulaUtils.parse(kpi.getFormula(), data);
if (value == null) {
continue;
}
if (!NumberUtils.isNumber(String.valueOf(value))) {
continue;
}
float nowScore = NumberUtils.toFloat(String.valueOf(value), 0.0f);
if (!scores.contains(nowScore)) {
scores.add(nowScore);
//size++;
score += nowScore;
}
} catch (Exception e) {
e.printStackTrace();
}
}
dateScore.setScore(score);
dateScore.setFontColor(BscScoreColorUtils.getFontColor(score));
dateScore.setBgColor(BscScoreColorUtils.getBackgroundColor(score));
dateScore.setImgIcon(BscReportSupportUtils.getHtmlIcon(kpi, score));
}
}
Aggregations