Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
PERFORMA_REPLICA
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Muhammad Usman
PERFORMA_REPLICA
Commits
566bac43
Commit
566bac43
authored
May 26, 2017
by
Nilu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
test analysis output
parent
028f1b0d
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
52 additions
and
12 deletions
+52
-12
TestAnalysisFP.java
cmsWebApp/src/performa/form/TestAnalysisFP.java
+9
-6
AnalysisEngine.java
cmsWebApp/src/performa/utils/AnalysisEngine.java
+43
-6
No files found.
cmsWebApp/src/performa/form/TestAnalysisFP.java
View file @
566bac43
...
@@ -36,9 +36,9 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -36,9 +36,9 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
try
try
{
{
loadData
(
testInput
,
process
.
getTransaction
());
SingleValueTableModel
model
=
loadData
(
testInput
,
process
.
getTransaction
());
ExcelExporter
.
ExportAppender
excelRenderer
=
getExportAppender
(
testInput
.
getCSV
()
);
ExcelExporter
.
ExportAppender
excelRenderer
=
getExportAppender
(
model
);
excelRenderer
.
export
(
bos
);
excelRenderer
.
export
(
bos
);
bytes
=
bos
.
toByteArray
();
bytes
=
bos
.
toByteArray
();
}
}
...
@@ -55,7 +55,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -55,7 +55,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
};
};
}
}
private
static
ExcelExporter
.
ExportAppender
getExportAppender
(
BinaryContent
file
)
throws
IOException
private
static
ExcelExporter
.
ExportAppender
getExportAppender
(
SingleValueTableModel
model
)
throws
IOException
{
{
Properties
props
=
new
Properties
();
Properties
props
=
new
Properties
();
props
.
load
(
TestAnalysisFP
.
class
.
getClassLoader
().
getResourceAsStream
(
"excel-styles.properties"
));
props
.
load
(
TestAnalysisFP
.
class
.
getClassLoader
().
getResourceAsStream
(
"excel-styles.properties"
));
...
@@ -67,7 +67,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -67,7 +67,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
ExcelExporter
.
ExportAppender
exportAppender
=
new
ExcelExporter
(
props
).
getAppender
();
ExcelExporter
.
ExportAppender
exportAppender
=
new
ExcelExporter
(
props
).
getAppender
();
exportAppender
.
appendTable
(
"New Sheet"
,
1
,
getExcelContent
(
file
)
);
exportAppender
.
appendTable
(
"New Sheet"
,
0
,
model
);
return
exportAppender
;
return
exportAppender
;
}
}
...
@@ -81,8 +81,9 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -81,8 +81,9 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
}
}
public
void
loadData
(
TestInput
testInput
,
ObjectTransaction
objTran
)
public
SingleValueTableModel
loadData
(
TestInput
testInput
,
ObjectTransaction
objTran
)
{
{
SingleValueTableModel
model
=
null
;
BufferedReader
bReader
=
null
;
BufferedReader
bReader
=
null
;
String
line
=
""
;
String
line
=
""
;
String
csvSeparator
=
","
;
String
csvSeparator
=
","
;
...
@@ -128,7 +129,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -128,7 +129,7 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
}
}
}
}
AnalysisEngine
.
analyseAnswers
(
answers
.
toArray
(
new
Answer
[
0
]),
testInput
.
getLevel
());
model
=
AnalysisEngine
.
analyseAnswers
(
answers
.
toArray
(
new
Answer
[
0
]),
testInput
.
getLevel
());
}
}
catch
(
FileNotFoundException
ex
)
catch
(
FileNotFoundException
ex
)
...
@@ -161,6 +162,8 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
...
@@ -161,6 +162,8 @@ public class TestAnalysisFP extends ORMProcessFormProcessor
throw
new
NestedException
(
ex
);
throw
new
NestedException
(
ex
);
}
}
}
}
return
model
;
}
}
...
...
cmsWebApp/src/performa/utils/AnalysisEngine.java
View file @
566bac43
...
@@ -11,11 +11,15 @@ import oneit.objstore.ObjectTransaction;
...
@@ -11,11 +11,15 @@ import oneit.objstore.ObjectTransaction;
import
oneit.objstore.rdbms.filters.EqualsFilter
;
import
oneit.objstore.rdbms.filters.EqualsFilter
;
import
oneit.objstore.rdbms.filters.GreaterThanEqualFilter
;
import
oneit.objstore.rdbms.filters.GreaterThanEqualFilter
;
import
oneit.objstore.rdbms.filters.LessThanEqualFilter
;
import
oneit.objstore.rdbms.filters.LessThanEqualFilter
;
import
oneit.utils.MultiHashtable
;
import
oneit.utils.table.SingleValueTableModel
;
import
performa.orm.Answer
;
import
performa.orm.Answer
;
import
performa.orm.Candidate
;
import
performa.orm.Factor
;
import
performa.orm.Factor
;
import
performa.orm.FactorQuestionLink
;
import
performa.orm.FactorQuestionLink
;
import
performa.orm.FactorScoreResult
;
import
performa.orm.FactorScoreResult
;
import
performa.orm.Level
;
import
performa.orm.Level
;
import
performa.orm.types.QuestionType
;
/**
/**
*
*
...
@@ -24,13 +28,26 @@ import performa.orm.Level;
...
@@ -24,13 +28,26 @@ import performa.orm.Level;
public
class
AnalysisEngine
public
class
AnalysisEngine
{
{
public
static
void
analyseAnswers
(
Answer
[]
answers
,
Level
level
)
public
static
SingleValueTableModel
analyseAnswers
(
Answer
[]
answers
,
Level
level
)
{
{
SingleValueTableModel
model
=
new
SingleValueTableModel
();
ObjectTransaction
objTran
=
level
.
getTransaction
();
ObjectTransaction
objTran
=
level
.
getTransaction
();
MultiHashtable
<
Candidate
,
Answer
>
answersByCandidate
=
new
MultiHashtable
<>();
answersByCandidate
.
groupValues
(
answers
,
Answer
.
pipesAnswer
().
toCandidate
());
int
index
=
0
;
for
(
Candidate
candidate
:
answersByCandidate
.
keySet
())
{
int
rowNumber
=
0
;
int
colNumber
=
(
index
*
3
)
+
1
;
Map
<
Factor
,
Integer
>
factorScoreMap
=
new
HashMap
<>();
Map
<
Factor
,
Integer
>
factorScoreMap
=
new
HashMap
<>();
for
(
Answer
answer
:
answers
)
model
.
addCell
(
rowNumber
++,
colNumber
,
new
SingleValueTableModel
.
CellModel
(
candidate
.
getFirstName
(),
""
));
for
(
Answer
answer
:
answersByCandidate
.
getValuesForKey
(
candidate
))
{
{
FactorQuestionLink
[]
links
=
FactorQuestionLink
.
SearchByAll
()
FactorQuestionLink
[]
links
=
FactorQuestionLink
.
SearchByAll
()
.
andQuestion
(
new
EqualsFilter
<>(
answer
.
getQuestion
()))
.
andQuestion
(
new
EqualsFilter
<>(
answer
.
getQuestion
()))
...
@@ -47,14 +64,19 @@ public class AnalysisEngine
...
@@ -47,14 +64,19 @@ public class AnalysisEngine
factorScore
+=
factorScoreMap
.
get
(
factor
);
factorScore
+=
factorScoreMap
.
get
(
factor
);
}
}
if
(
link
.
getReverseScore
().
equals
(
"Yes"
))
if
(
link
.
getReverseScore
())
{
if
(
answer
.
getQuestion
().
getSection
().
getQuestionType
()
==
QuestionType
.
IPSATIVE
)
{
{
// ipsative is stored in quest_hdr. bo not created yet
factorScore
+=
(
10
-
answer
.
getAnswerNo
());
factorScore
+=
(
10
-
answer
.
getAnswerNo
());
}
}
else
else
{
{
factorScore
+=
(
8
-
answer
.
getAnswerNo
());
}
}
else
{
factorScore
+=
answer
.
getAnswerNo
();
factorScore
+=
answer
.
getAnswerNo
();
}
}
...
@@ -67,6 +89,11 @@ public class AnalysisEngine
...
@@ -67,6 +89,11 @@ public class AnalysisEngine
Factor
factor
=
entrySet
.
getKey
();
Factor
factor
=
entrySet
.
getKey
();
Integer
factorScore
=
entrySet
.
getValue
();
Integer
factorScore
=
entrySet
.
getValue
();
if
(
index
==
0
)
{
model
.
addCell
(
rowNumber
,
0
,
new
SingleValueTableModel
.
CellModel
(
factor
.
getDescription
(),
""
));
}
FactorScoreResult
result
=
FactorScoreResult
.
SearchByFactorScore
()
FactorScoreResult
result
=
FactorScoreResult
.
SearchByFactorScore
()
.
andFactor
(
new
EqualsFilter
<>(
factor
))
.
andFactor
(
new
EqualsFilter
<>(
factor
))
.
andLevel
(
new
EqualsFilter
<>(
level
))
.
andLevel
(
new
EqualsFilter
<>(
level
))
...
@@ -76,9 +103,18 @@ public class AnalysisEngine
...
@@ -76,9 +103,18 @@ public class AnalysisEngine
int
score
=
result
!=
null
?
result
.
getColorCode
().
getWeightage
()
:
0
;
int
score
=
result
!=
null
?
result
.
getColorCode
().
getWeightage
()
:
0
;
System
.
out
.
println
(
"score :: "
+
score
);
// TODO: calculate normalised score based on importance
// TODO: calculate normalised score based on importance
model
.
addCell
(
rowNumber
,
colNumber
,
new
SingleValueTableModel
.
CellModel
(
String
.
valueOf
(
score
),
""
));
model
.
addCell
(
rowNumber
,
colNumber
+
1
,
new
SingleValueTableModel
.
CellModel
(
result
!=
null
?
result
.
getColorCode
().
getDescription
()
:
""
,
""
));
model
.
addCell
(
rowNumber
++,
colNumber
+
2
,
new
SingleValueTableModel
.
CellModel
(
result
!=
null
?
result
.
getNarrative
().
getGraphicNotes
():
""
,
""
));
}
index
++;
}
}
return
model
;
}
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment