Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
exam_master
Project
Project
Details
Activity
Releases
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
ai-tech
exam_master
Commits
0c106b03
Commit
0c106b03
authored
Jul 01, 2024
by
陈立彬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新已考接口完善
parent
95d5baa2
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
48 additions
and
0 deletions
+48
-0
ExamController.java
src/main/java/cn/aibreeze/exam/api/ExamController.java
+17
-0
SessionExamResult.java
src/main/java/cn/aibreeze/exam/dto/SessionExamResult.java
+4
-0
SingleQaResult.java
src/main/java/cn/aibreeze/exam/dto/SingleQaResult.java
+25
-0
ElehKnowledgeMapper.java
...ain/java/cn/aibreeze/exam/mapper/ElehKnowledgeMapper.java
+2
-0
No files found.
src/main/java/cn/aibreeze/exam/api/ExamController.java
View file @
0c106b03
...
@@ -12,6 +12,7 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -12,6 +12,7 @@ import com.alibaba.fastjson.JSONObject;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
io.micrometer.common.util.StringUtils
;
import
io.micrometer.common.util.StringUtils
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.apache.commons.compress.utils.Lists
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
...
@@ -20,6 +21,7 @@ import java.util.Date;
...
@@ -20,6 +21,7 @@ import java.util.Date;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Objects
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
@RestController
@RestController
...
@@ -138,6 +140,7 @@ public class ExamController {
...
@@ -138,6 +140,7 @@ public class ExamController {
Double
avgScore
=
0
D
;
Double
avgScore
=
0
D
;
Double
totalScore
=
0
D
;
Double
totalScore
=
0
D
;
int
examNum
=
0
;
int
examNum
=
0
;
List
<
SingleQaResult
>
qaResultList
=
Lists
.
newArrayList
();
LambdaQueryWrapper
<
ElehSessionQaRecordDo
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
ElehSessionQaRecordDo
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
ElehSessionQaRecordDo:
:
getTenant
,
tenant
);
queryWrapper
.
eq
(
ElehSessionQaRecordDo:
:
getTenant
,
tenant
);
...
@@ -148,11 +151,25 @@ public class ExamController {
...
@@ -148,11 +151,25 @@ public class ExamController {
totalScore
=
qaRecordDos
.
stream
().
mapToDouble
(
ElehSessionQaRecordDo:
:
getScore
).
sum
();
totalScore
=
qaRecordDos
.
stream
().
mapToDouble
(
ElehSessionQaRecordDo:
:
getScore
).
sum
();
examNum
=
qaRecordDos
.
size
();
examNum
=
qaRecordDos
.
size
();
avgScore
=
totalScore
/
examNum
;
avgScore
=
totalScore
/
examNum
;
// 数据转换
qaResultList
=
qaRecordDos
.
stream
().
map
(
v
->
{
ElehKnowledgeDo
knowledgeDo
=
knowledgeMapper
.
selectQuestion
(
v
.
getTenant
(),
v
.
getQuestionId
());
SingleQaResult
qa
=
new
SingleQaResult
();
qa
.
setQuestion
(
knowledgeDo
.
getQuestion
());
qa
.
setAnswer
(
knowledgeDo
.
getAnswer
());
qa
.
setUserAnswer
(
v
.
getAnswer
());
qa
.
setScore
(
v
.
getScore
());
qa
.
setScoreCriteria
(
v
.
getScoreCriteria
());
return
qa
;
}).
collect
(
Collectors
.
toList
());
}
}
SessionExamResult
result
=
new
SessionExamResult
();
SessionExamResult
result
=
new
SessionExamResult
();
result
.
setAvgScore
(
avgScore
);
result
.
setAvgScore
(
avgScore
);
result
.
setTotalScore
(
totalScore
);
result
.
setTotalScore
(
totalScore
);
result
.
setExamNum
(
examNum
);
result
.
setExamNum
(
examNum
);
result
.
setQaResultList
(
qaResultList
);
return
ApiResponse
.
ok
(
result
);
return
ApiResponse
.
ok
(
result
);
}
}
...
...
src/main/java/cn/aibreeze/exam/dto/SessionExamResult.java
View file @
0c106b03
...
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
...
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.List
;
@Data
@Data
public
class
SessionExamResult
implements
Serializable
{
public
class
SessionExamResult
implements
Serializable
{
...
@@ -16,4 +17,7 @@ public class SessionExamResult implements Serializable {
...
@@ -16,4 +17,7 @@ public class SessionExamResult implements Serializable {
@JsonProperty
(
"exam_num"
)
@JsonProperty
(
"exam_num"
)
private
int
examNum
;
private
int
examNum
;
@JsonProperty
(
"qa_result_list"
)
private
List
<
SingleQaResult
>
qaResultList
;
}
}
src/main/java/cn/aibreeze/exam/dto/SingleQaResult.java
0 → 100644
View file @
0c106b03
package
cn
.
aibreeze
.
exam
.
dto
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
SingleQaResult
implements
Serializable
{
@JsonProperty
(
"question"
)
private
String
question
;
@JsonProperty
(
"answer"
)
private
String
answer
;
@JsonProperty
(
"user_answer"
)
private
String
userAnswer
;
@JsonProperty
(
"score"
)
private
Double
score
;
@JsonProperty
(
"score_criteria"
)
private
String
scoreCriteria
;
}
src/main/java/cn/aibreeze/exam/mapper/ElehKnowledgeMapper.java
View file @
0c106b03
...
@@ -12,4 +12,6 @@ public interface ElehKnowledgeMapper extends BaseMapper<ElehKnowledgeDo> {
...
@@ -12,4 +12,6 @@ public interface ElehKnowledgeMapper extends BaseMapper<ElehKnowledgeDo> {
@Select
(
value
=
"select * from eleh_knowledge where tenant = #{tenant} and tag_id = #{tagId} and id > #{questionId} order by id ASC limit 1"
)
@Select
(
value
=
"select * from eleh_knowledge where tenant = #{tenant} and tag_id = #{tagId} and id > #{questionId} order by id ASC limit 1"
)
ElehKnowledgeDo
selectQuestion
(
@Param
(
"tenant"
)
Integer
tenant
,
@Param
(
"tagId"
)
Long
tagId
,
@Param
(
"questionId"
)
Long
questionId
);
ElehKnowledgeDo
selectQuestion
(
@Param
(
"tenant"
)
Integer
tenant
,
@Param
(
"tagId"
)
Long
tagId
,
@Param
(
"questionId"
)
Long
questionId
);
@Select
(
value
=
"select * from eleh_knowledge where tenant = #{tenant} and id = #{questionId}"
)
ElehKnowledgeDo
selectQuestion
(
@Param
(
"tenant"
)
Integer
tenant
,
@Param
(
"questionId"
)
Long
questionId
);
}
}
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