Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
device-back
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
device-back
Commits
75778001
提交
75778001
authored
6月 17, 2021
作者:
133
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[线上培训] 代码提交
上级
f81ce61e
隐藏空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
473 行增加
和
21 行删除
+473
-21
StatusEnum.java
...misc/src/main/java/com/tykj/dev/misc/base/StatusEnum.java
+1
-1
TestPaperController.java
...tykj/dev/device/train/controller/TestPaperController.java
+55
-4
TrainJobController.java
.../tykj/dev/device/train/controller/TrainJobController.java
+60
-12
TestPaperDao.java
...main/java/com/tykj/dev/device/train/dao/TestPaperDao.java
+6
-0
TrainThemeDao.java
...ain/java/com/tykj/dev/device/train/dao/TrainThemeDao.java
+2
-0
TestPaper.java
...main/java/com/tykj/dev/device/train/entity/TestPaper.java
+16
-1
TrainTheme.java
...ain/java/com/tykj/dev/device/train/entity/TrainTheme.java
+11
-1
TrainUser.java
...main/java/com/tykj/dev/device/train/entity/TrainUser.java
+3
-0
ByTrainingPeople.java
...com/tykj/dev/device/train/entity/vo/ByTrainingPeople.java
+8
-0
TestPaperListVo.java
.../com/tykj/dev/device/train/entity/vo/TestPaperListVo.java
+56
-0
TestPaperManagementListVo.java
...dev/device/train/entity/vo/TestPaperManagementListVo.java
+26
-0
TrainThemeVo.java
...ava/com/tykj/dev/device/train/entity/vo/TrainThemeVo.java
+7
-0
WaitExaminesVo.java
...a/com/tykj/dev/device/train/entity/vo/WaitExaminesVo.java
+140
-0
TestPaperService.java
...a/com/tykj/dev/device/train/service/TestPaperService.java
+15
-0
TrainThemeService.java
.../com/tykj/dev/device/train/service/TrainThemeService.java
+5
-0
TestPaperServiceImpl.java
...j/dev/device/train/service/impl/TestPaperServiceImpl.java
+45
-1
TrainThemeServiceImpl.java
.../dev/device/train/service/impl/TrainThemeServiceImpl.java
+17
-1
没有找到文件。
dev-misc/src/main/java/com/tykj/dev/misc/base/StatusEnum.java
浏览文件 @
75778001
...
...
@@ -126,7 +126,7 @@ public enum StatusEnum {
TRAIN1006
(
1006
,
"市培训申请发证审核"
),
TRAIN1007
(
1007
,
"
省培训发证审核
"
),
TRAIN1007
(
1007
,
"
培训等待发证
"
),
TRAIN1008
(
1008
,
"成绩录入"
),
...
...
dev-train/src/main/java/com/tykj/dev/device/train/controller/TestPaperController.java
浏览文件 @
75778001
...
...
@@ -2,14 +2,18 @@ package com.tykj.dev.device.train.controller;
import
com.tykj.dev.config.swagger.AutoDocument
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
com.tykj.dev.device.train.entity.TrainTheme
;
import
com.tykj.dev.device.train.service.TestPaperService
;
import
com.tykj.dev.device.train.service.TrainThemeService
;
import
com.tykj.dev.device.user.subject.entity.SecurityUser
;
import
com.tykj.dev.misc.utils.JacksonUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.security.core.annotation.AuthenticationPrincipal
;
import
org.springframework.web.bind.annotation.*
;
import
springfox.documentation.annotations.ApiIgnore
;
/**
* @author zjm
...
...
@@ -25,6 +29,9 @@ import org.springframework.web.bind.annotation.RestController;
public
class
TestPaperController
{
@Autowired
TestPaperService
testPaperService
;
@Autowired
TrainThemeService
trainThemeService
;
/**
* 生成试卷
*/
...
...
@@ -33,4 +40,48 @@ public class TestPaperController {
return
ResponseEntity
.
ok
(
testPaperService
.
generateTestPaper
(
generateTestPaper
));
}
/**
* 查询试卷
*/
@GetMapping
(
"/select/{status}"
)
@ApiOperation
(
value
=
"查询试卷(status 为0 待批阅 1 为已批阅)"
,
notes
=
"查询试卷"
)
public
ResponseEntity
trainThemeVoResponseEntity
(
@ApiIgnore
@AuthenticationPrincipal
SecurityUser
securityUser
,
@PathVariable
Integer
status
)
{
return
ResponseEntity
.
ok
(
testPaperService
.
TEST_PAPER_MANAGEMENT_LIST_VOS
(
securityUser
.
getCurrentUserInfo
().
getUnitsId
(),
status
));
}
/**
* 批阅试卷上边框集合接口
*/
@GetMapping
(
"/testPaperListVo/{trainId}"
)
@ApiOperation
(
value
=
"批阅试卷上边框集合接口"
,
notes
=
"批阅试卷上边框集合接口"
)
public
ResponseEntity
trainThemeVoResponseEntity
(
@PathVariable
Integer
trainId
)
{
return
ResponseEntity
.
ok
(
testPaperService
.
findAllByTrainId
(
trainId
));
}
/**
* 根据试卷id查询试卷详情
*/
@GetMapping
(
"/testPaper/{id}"
)
@ApiOperation
(
value
=
"根据试卷id查询试卷详情"
,
notes
=
"根据试卷id查询试卷详情"
)
public
ResponseEntity
testPaperById
(
@PathVariable
Integer
id
)
{
return
ResponseEntity
.
ok
(
testPaperService
.
findByIdProble
(
id
));
}
/**
* 根据id查询试卷的模版
*/
@GetMapping
(
"/generateTestPaper/{trainId}"
)
@ApiOperation
(
value
=
"根据id查询试卷的模版"
,
notes
=
"根据id查询试卷的模版"
)
public
ResponseEntity
generateTestPaperById
(
@PathVariable
Integer
trainId
)
{
TrainTheme
trainTheme
=
trainThemeService
.
findById
(
trainId
);
trainTheme
.
setGenerateTestPaper
(
JacksonUtil
.
readValue
(
trainTheme
.
getGenerateTestPaperString
(),
GenerateTestPaper
.
class
));
return
ResponseEntity
.
ok
(
trainTheme
);
}
}
dev-train/src/main/java/com/tykj/dev/device/train/controller/TrainJobController.java
浏览文件 @
75778001
...
...
@@ -9,6 +9,7 @@ import com.tykj.dev.device.task.service.TaskLogService;
import
com.tykj.dev.device.task.service.TaskService
;
import
com.tykj.dev.device.task.subject.bto.TaskBto
;
import
com.tykj.dev.device.task.subject.bto.TaskLogBto
;
import
com.tykj.dev.device.task.subject.domin.Task
;
import
com.tykj.dev.device.train.dao.OnlineTainUserTimeDao
;
import
com.tykj.dev.device.train.dao.TestPaperDao
;
import
com.tykj.dev.device.train.dao.TrainUnitDao
;
...
...
@@ -180,7 +181,11 @@ public class TrainJobController {
List
<
Integer
>
integers
=
new
ArrayList
<>();
integers
.
add
(
securityUser
.
getCurrentUserInfo
().
getUserId
());
TaskBto
task
=
taskService
.
start
(
new
TaskBto
(
StatusEnum
.
TRAIN1000
.
id
,
trainTheme
.
getName
(),
null
,
null
,
trainTheme
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
,
securityUser
.
getCurrentUserInfo
().
getUnitsId
(),
0
,
null
,
integers
));
TaskBto
taskVo
=
new
TaskBto
(
StatusEnum
.
TRAIN1000
.
id
,
trainTheme
.
getName
(),
null
,
null
,
trainTheme
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
,
securityUser
.
getCurrentUserInfo
().
getUnitsId
(),
0
,
null
,
integers
);
if
(
trainThemeAddVo
.
getTrainType
()
==
0
)
{
taskVo
.
setCustomInfo
(
"online"
);
}
TaskBto
task
=
taskService
.
start
(
taskVo
);
trainTheme
.
setTrainStatus
(
StatusEnum
.
TRAIN1000
.
id
);
trainThemeAddVo
.
getUnitsIds
().
forEach
(
...
...
@@ -333,6 +338,30 @@ public class TrainJobController {
return
ResponseEntity
.
ok
(
trainThemeService
.
save
(
trainTheme
));
}
//等待批阅接口 判断人员是否全部提交试卷
@GetMapping
(
"/waitExamines/{trainId}/{taskId}"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ApiOperation
(
value
=
"等待批阅接口 判断人员是否全部提交试卷"
,
notes
=
"等待批阅接口 判断人员是否全部提交试卷"
)
public
ResponseEntity
inTraining
(
@PathVariable
Integer
trainId
,
@PathVariable
Integer
taskId
)
{
TrainTheme
trainTheme
=
trainThemeService
.
findById
(
trainId
);
//5 培训中
TaskBto
taskBto
=
taskService
.
get
(
taskId
);
WaitExaminesVo
waitExaminesVo
=
trainTheme
.
toWaitExaminesVo
();
waitExaminesVo
.
setTrainDataFileList
(
FilesUtil
.
stringFileToList
(
trainTheme
.
getTrainDataFiles
()));
waitExaminesVo
.
setCoursewareFileList
(
JacksonUtil
.
readValue
(
trainTheme
.
getCoursewareFiles
(),
new
TypeReference
<
List
<
CoursewareFile
>>()
{
}));
waitExaminesVo
.
setGenerateTestPaper
(
JacksonUtil
.
readValue
(
trainTheme
.
getGenerateTestPaperString
(),
GenerateTestPaper
.
class
));
List
<
TrainUser
>
userList
=
trainUserDao
.
findAllByTrainId
(
trainId
).
stream
().
filter
(
trainUser
->
trainUser
.
getIsSignUp
()==
1
).
collect
(
Collectors
.
toList
());
if
(
userList
.
stream
().
allMatch
(
trainUser
->
trainUser
.
getOnlineStatus
()==
2
))
{
waitExaminesVo
.
setIsNot
(
1
);
taskService
.
moveToSpecial
(
taskBto
,
StatusEnum
.
TRAIN1015
);
trainTheme
.
setIsNotExamines
(
1
);
}
waitExaminesVo
.
setTrainUsers
(
userList
);
trainTheme
.
setTrainStatus
(
StatusEnum
.
TRAIN1015
.
id
);
trainThemeService
.
save
(
trainTheme
);
return
ResponseEntity
.
ok
(
waitExaminesVo
);
}
/**
...
...
@@ -364,10 +393,10 @@ public class TrainJobController {
boolean
falg
=
onlineTainUserTime
.
getSubjectVoList
().
stream
().
allMatch
(
subjectVo
->
subjectVo
.
getIsEnd
()==
1
);
if
(
falg
){
onlineTainUserTime
.
setIsNotCanExam
(
1
);
TaskBto
taskBto
=
taskService
.
get
(
onlineTainUserTime
.
getTaskId
());
TaskBto
taskBto
=
taskService
.
get
(
onlineTainUserTime
.
getTaskId
());
taskService
.
moveToSpecial
(
taskBto
,
StatusEnum
.
TRAIN1014
);
}
onlineTainUserTime
=
onlineTainUserTimeDao
.
save
(
onlineTainUserTime
);
onlineTainUserTime
=
onlineTainUserTimeDao
.
save
(
onlineTainUserTime
);
return
ResponseEntity
.
ok
(
onlineTainUserTime
);
}
...
...
@@ -392,6 +421,9 @@ public class TrainJobController {
testPaper
.
setMultipleChoiceProblem
(
JacksonUtil
.
toJSon
(
testPaper
.
getMultipleChoiceProblemList
()));
testPaper
.
setShortAnswerProblem
(
JacksonUtil
.
toJSon
(
testPaper
.
getShortAnswerProblemList
()));
automaticReadingTestPaper
(
testPaper
);
TrainUser
trainUser
=
trainUserDao
.
findByUserIdAndTrainId
(
testPaper
.
getUserId
(),
testPaper
.
getTrainId
());
trainUser
.
setOnlineStatus
(
2
);
trainUserDao
.
save
(
trainUser
);
TaskBto
taskBto
=
taskService
.
get
(
testPaper
.
getTaskId
());
taskService
.
moveToSpecial
(
taskBto
,
StatusEnum
.
TRAIN1012
,-
1
);
testPaper
=
testPaperDao
.
save
(
testPaper
);
...
...
@@ -407,6 +439,7 @@ public class TrainJobController {
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResponseEntity
readOverTestPaper
(
@RequestBody
ReadOverTestPaper
readOverTestPaper
){
AtomicReference
<
Float
>
shortAnswerScore
=
new
AtomicReference
<>();
shortAnswerScore
.
set
(
0
f
);
readOverTestPaper
.
getProblemVos
().
forEach
(
problemVo
->
shortAnswerScore
.
set
(
shortAnswerScore
.
get
()
+
problemVo
.
getScore
())
);
...
...
@@ -414,10 +447,20 @@ public class TrainJobController {
testPaper
.
setShortAnswerScore
(
shortAnswerScore
.
get
());
testPaper
.
setShortAnswerProblem
(
JacksonUtil
.
toJSon
(
readOverTestPaper
.
getProblemVos
()));
testPaper
.
setCountScore
(
testPaper
.
getChooseScore
()+
testPaper
.
getJudgeScore
()+
testPaper
.
getMultipleScore
()+
testPaper
.
getShortAnswerScore
());
testPaper
.
setStatus
(
1
);
TrainUser
trainUser
=
trainUserDao
.
findByUserIdAndTrainId
(
testPaper
.
getUserId
(),
testPaper
.
getTrainId
());
trainUser
.
setScore
(
testPaper
.
getCountScore
().
toString
());
trainUser
.
setOnlineStatus
(
3
);
trainUserDao
.
save
(
trainUser
);
testPaper
=
testPaperDao
.
save
(
testPaper
);
List
<
TestPaper
>
testPapers
=
testPaperService
.
findByTrainIdAndStatus
(
testPaper
.
getTrainId
(),
0
);
if
(
testPapers
==
null
||
testPapers
.
size
()==
0
){
TaskBto
taskBto
=
trainTaskService
.
selectFatherIsNullAndBillidAndBillType
(
testPaper
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
);
taskService
.
moveToSpecial
(
taskBto
,
StatusEnum
.
TRAIN1007
);
TrainTheme
trainTheme
=
trainThemeService
.
findById
(
testPaper
.
getTrainId
());
trainTheme
.
setIsNotExamines
(
2
);
trainThemeService
.
save
(
trainTheme
);
}
return
ResponseEntity
.
ok
(
testPaper
);
}
...
...
@@ -491,7 +534,10 @@ public class TrainJobController {
trainTheme
.
setTrainPapersFiles
(
FilesUtil
.
stringFileToList
(
gradeEntryVo
.
getTrainPapersFileList
()));
TaskBto
taskBto
=
trainTaskService
.
selectFatherIsNullAndBillidAndBillType
(
trainTheme
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
);
//判断
TaskDisposeUtil
.
isNotSubmit
(
taskBto
.
getBillStatus
(),
StatusEnum
.
TRAIN1004
);
List
<
StatusEnum
>
statusEnums
=
new
ArrayList
<>();
statusEnums
.
add
(
StatusEnum
.
TRAIN1004
);
statusEnums
.
add
(
StatusEnum
.
TRAIN1007
);
TaskDisposeUtil
.
isNotSubmit
(
taskBto
.
getBillStatus
(),
statusEnums
);
taskBto
.
setOwnUnit
(
1
);
taskService
.
moveToSpecial
(
taskBto
,
StatusEnum
.
TRAIN1006
,
0
);
...
...
@@ -503,7 +549,7 @@ public class TrainJobController {
trainUser
.
setEvaluation
(
gradeEntry
.
getEvaluation
());
trainUser
.
setCertificate
(
gradeEntry
.
getCertificate
());
// trainUserDao.save(trainUser);
saveTrainUser
(
trainUser
);
saveTrainUser
(
trainUser
);
}
);
trainTheme
.
setTrainStatus
(
StatusEnum
.
TRAIN1006
.
id
);
...
...
@@ -519,6 +565,15 @@ public class TrainJobController {
@PostMapping
(
"/auditResult"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResponseEntity
gradeeEntry
(
@ApiIgnore
@AuthenticationPrincipal
SecurityUser
securityUser
,
@RequestBody
GradeEntryVo
gradeEntryVo
)
{
TrainTheme
trainTheme
=
trainThemeService
.
findById
(
gradeEntryVo
.
getTrainThemeId
());
//给培训报名的人员都发起一个通知,查看自己都证书
TaskBto
taskBto
=
trainTaskService
.
selectFatherIsNullAndBillidAndBillType
(
trainTheme
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
);
List
<
StatusEnum
>
statusEnums
=
new
ArrayList
<>();
statusEnums
.
add
(
StatusEnum
.
TRAIN1006
);
statusEnums
.
add
(
StatusEnum
.
TRAIN1004
);
statusEnums
.
add
(
StatusEnum
.
TRAIN1007
);
TaskDisposeUtil
.
isNotSubmit
(
taskBto
.
getBillStatus
(),
statusEnums
);
//向专管员证书表中添加数据
CompletableFuture
.
runAsync
(()->
{
log
.
info
(
"[培训] 异步添加人员,证书以及人员日志"
);
...
...
@@ -536,14 +591,7 @@ public class TrainJobController {
);
}
});
TrainTheme
trainTheme
=
trainThemeService
.
findById
(
gradeEntryVo
.
getTrainThemeId
());
//给培训报名的人员都发起一个通知,查看自己都证书
TaskBto
taskBto
=
trainTaskService
.
selectFatherIsNullAndBillidAndBillType
(
trainTheme
.
getTrainId
(),
BusinessEnum
.
TRAIN
.
id
);
List
<
StatusEnum
>
statusEnums
=
new
ArrayList
<>();
statusEnums
.
add
(
StatusEnum
.
TRAIN1006
);
statusEnums
.
add
(
StatusEnum
.
TRAIN1004
);
TaskDisposeUtil
.
isNotSubmit
(
taskBto
.
getBillStatus
(),
statusEnums
);
trainTheme
.
setTrainPapersFiles
(
FilesUtil
.
stringFileToList
(
gradeEntryVo
.
getTrainPapersFileList
()));
trainTheme
.
setTrainDataFiles
(
FilesUtil
.
stringFileToList
(
gradeEntryVo
.
getTrainDataFileList
()));
taskService
.
moveToEnd
(
taskBto
);
...
...
dev-train/src/main/java/com/tykj/dev/device/train/dao/TestPaperDao.java
浏览文件 @
75778001
...
...
@@ -5,6 +5,12 @@ import com.tykj.dev.device.train.entity.TrainTheme;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
java.util.List
;
public
interface
TestPaperDao
extends
JpaRepository
<
TestPaper
,
Integer
>,
JpaSpecificationExecutor
<
TestPaper
>
{
TestPaper
findByTrainIdAndUserId
(
Integer
trainId
,
Integer
userId
);
List
<
TestPaper
>
findAllByTrainIdAndStatus
(
Integer
trainId
,
Integer
status
);
List
<
TestPaper
>
findAllByTrainId
(
Integer
trainId
);
}
dev-train/src/main/java/com/tykj/dev/device/train/dao/TrainThemeDao.java
浏览文件 @
75778001
...
...
@@ -16,4 +16,6 @@ import java.util.List;
public
interface
TrainThemeDao
extends
JpaRepository
<
TrainTheme
,
Integer
>,
JpaSpecificationExecutor
<
TrainTheme
>
{
List
<
TrainTheme
>
findAllByTrainStatus
(
Integer
status
);
List
<
TrainTheme
>
findAllByUnitsIdAndIsNotExamines
(
Integer
unitId
,
Integer
isNotExamines
);
}
dev-train/src/main/java/com/tykj/dev/device/train/entity/TestPaper.java
浏览文件 @
75778001
package
com
.
tykj
.
dev
.
device
.
train
.
entity
;
import
com.tykj.dev.device.train.entity.vo.ProblemVo
;
import
com.tykj.dev.device.train.entity.vo.TestPaperListVo
;
import
com.tykj.dev.device.train.entity.vo.TrainAuditVo
;
import
com.tykj.dev.misc.base.BaseEntity
;
import
com.tykj.dev.misc.base.BeanHelper
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.modelmapper.ModelMapper
;
import
org.springframework.data.jpa.domain.support.AuditingEntityListener
;
import
javax.persistence.Column
;
...
...
@@ -30,7 +34,7 @@ import java.util.List;
@Entity
public
class
TestPaper
extends
BaseEntity
{
/**
/**
* 阅卷人
*/
@ApiModelProperty
(
value
=
"阅卷人(不)"
,
example
=
"bmxx"
,
name
=
"taskId"
)
...
...
@@ -42,6 +46,12 @@ public class TestPaper extends BaseEntity {
@ApiModelProperty
(
value
=
"总分(不)"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
Float
countScore
;
// /**
// * 总分得分
// */
// @ApiModelProperty(value = "总分(不)", example = "bmxx", name = "taskId")
// private Float countUserScore;
/**
* 试卷所属用户id
*/
...
...
@@ -118,4 +128,9 @@ public class TestPaper extends BaseEntity {
private
GenerateTestPaper
generateTestPaper
;
public
TestPaperListVo
toTestPaperListVo
()
{
ModelMapper
mapper
=
BeanHelper
.
getUserMapper
();
return
mapper
.
map
(
this
,
TestPaperListVo
.
class
);
}
}
dev-train/src/main/java/com/tykj/dev/device/train/entity/TrainTheme.java
浏览文件 @
75778001
...
...
@@ -170,7 +170,7 @@ public class TrainTheme {
private
LocalDateTime
updateTime
;
/**
* 培训类别
* 培训类别
0.线上 1.线下
*/
@ApiModelProperty
(
value
=
"培训类别"
,
name
=
"trainType"
)
private
Integer
trainType
;
...
...
@@ -180,6 +180,10 @@ public class TrainTheme {
*/
private
Integer
examinationTL
;
/**
* 线上培训使用字段 是否批阅完成
*/
private
Integer
isNotExamines
=
0
;
@Column
(
name
=
"generate_test_paper_string"
,
columnDefinition
=
"TEXT"
)
private
String
generateTestPaperString
;
...
...
@@ -231,6 +235,12 @@ public class TrainTheme {
return
mapper
.
map
(
this
,
TrainTrainingVo
.
class
);
}
public
WaitExaminesVo
toWaitExaminesVo
()
{
ModelMapper
mapper
=
BeanHelper
.
getUserMapper
();
return
mapper
.
map
(
this
,
WaitExaminesVo
.
class
);
}
public
TrainAuditVo
toTrainAuditVo
()
{
ModelMapper
mapper
=
BeanHelper
.
getUserMapper
();
return
mapper
.
map
(
this
,
TrainAuditVo
.
class
);
...
...
dev-train/src/main/java/com/tykj/dev/device/train/entity/TrainUser.java
浏览文件 @
75778001
...
...
@@ -155,6 +155,9 @@ public class TrainUser {
@ApiModelProperty
(
value
=
"是否必须报名 1.必须 2.不必须"
,
name
=
"certificate"
)
private
Integer
isNotJoinUserId
;
@ApiModelProperty
(
value
=
"线上人员状态 1.未提交 2.已提交 3.已批阅"
,
name
=
"certificate"
)
private
Integer
onlineStatus
=
1
;
@ApiModelProperty
(
value
=
"区块链RID"
,
name
=
"recordId"
)
private
String
recordId
;
...
...
dev-train/src/main/java/com/tykj/dev/device/train/entity/vo/ByTrainingPeople.java
浏览文件 @
75778001
...
...
@@ -2,6 +2,7 @@ package com.tykj.dev.device.train.entity.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.tykj.dev.device.file.entity.FileRet
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
com.tykj.dev.device.train.entity.TrainUser
;
import
com.tykj.dev.device.user.subject.entity.Mgrcert
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -12,6 +13,7 @@ import lombok.NoArgsConstructor;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
import
javax.persistence.Transient
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -130,4 +132,10 @@ public class ByTrainingPeople {
@ApiModelProperty
(
value
=
"本单位需要参加培训的人员"
,
name
=
"trainUserList"
)
List
<
TrainUser
>
trainUserList
;
@ApiModelProperty
(
value
=
"课件集合"
)
private
List
<
CoursewareFile
>
coursewareFileList
;
@Transient
private
GenerateTestPaper
generateTestPaper
;
}
dev-train/src/main/java/com/tykj/dev/device/train/entity/vo/TestPaperListVo.java
0 → 100644
浏览文件 @
75778001
package
com
.
tykj
.
dev
.
device
.
train
.
entity
.
vo
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.Column
;
/**
* @author zjm
* @version 1.0.0
* @ClassName TestPaperListVo.java
* @Description 批阅页面上方滚动条
* @createTime 2021年06月15日 17:22:00
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"批阅对象的集合"
,
description
=
"批阅对象的集合"
)
public
class
TestPaperListVo
{
private
Integer
id
;
/**
* 总分
*/
@ApiModelProperty
(
value
=
"总分(不)"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
Float
countScore
;
/**
* 试卷所属用户id
*/
@ApiModelProperty
(
value
=
"用户id"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
Integer
userId
;
/**
* 试卷所属用户名称
*/
@ApiModelProperty
(
value
=
"用户名称"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"培训id"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
Integer
trainId
;
@ApiModelProperty
(
value
=
"任务id"
,
example
=
"bmxx"
,
name
=
"taskId"
)
private
Integer
taskId
;
/**
* 0。待批阅 1。批阅完成
*/
private
Integer
status
=
0
;
}
dev-train/src/main/java/com/tykj/dev/device/train/entity/vo/TestPaperManagementListVo.java
0 → 100644
浏览文件 @
75778001
package
com
.
tykj
.
dev
.
device
.
train
.
entity
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @author zjm
* @version 1.0.0
* @ClassName TestPaperManagementListVo.java
* @Description TODO
* @createTime 2021年06月15日 14:44:00
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"课题对象vo"
,
description
=
"课题对象vo"
)
public
class
TestPaperManagementListVo
{
private
Integer
trainId
;
private
String
name
;
private
Integer
count
;
}
dev-train/src/main/java/com/tykj/dev/device/train/entity/vo/TrainThemeVo.java
浏览文件 @
75778001
...
...
@@ -50,6 +50,13 @@ public class TrainThemeVo {
@ApiModelProperty
(
value
=
"主办单位名称"
)
private
String
unitsName
;
/**
* 培训类别 0.线上 1.线下
*/
@ApiModelProperty
(
value
=
"培训类别"
,
name
=
"trainType"
)
private
Integer
trainType
;
private
Integer
taskId
;
public
TrainThemeVo
(
Integer
trainId
,
String
name
,
Date
trainTime
,
String
originatorName
,
Integer
trainStatus
,
String
unitsName
)
{
...
...
dev-train/src/main/java/com/tykj/dev/device/train/entity/vo/WaitExaminesVo.java
0 → 100644
浏览文件 @
75778001
package
com
.
tykj
.
dev
.
device
.
train
.
entity
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.tykj.dev.device.file.entity.FileRet
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
com.tykj.dev.device.train.entity.TrainUser
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
import
javax.persistence.Transient
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author zjm
* @version 1.0.0
* @ClassName WaitExaminesVo.java
* @Description TODO
* @createTime 2021年06月15日 16:10:00
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
(
value
=
"培训中人员数据查询"
,
description
=
"培训中人员数据查询"
)
public
class
WaitExaminesVo
{
/**
* 培训id
*/
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
@ApiModelProperty
(
value
=
"培训id"
)
private
Integer
trainId
;
/**
* 培训主题
*/
@ApiModelProperty
(
value
=
"培训主题"
)
private
String
name
;
/**
* 报名截止时间
*/
@ApiModelProperty
(
value
=
"报名截止时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
trainTime
;
/**
* 发起人 originator
*/
@ApiModelProperty
(
value
=
"发起人"
)
private
String
originatorName
;
/**
* 发起人 originator
*/
@ApiModelProperty
(
value
=
"发起人id"
)
private
Integer
originatorId
;
/**
* 主办单位
*/
@ApiModelProperty
(
value
=
"主办单位名称"
)
private
String
unitsName
;
/**
* 主办单位
*/
@ApiModelProperty
(
value
=
"主办单位"
)
private
Integer
unitsId
;
/**
* 培训开始时间
*/
@ApiModelProperty
(
value
=
"培训开始时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
startTime
;
/**
* 培训结束时间
*/
@ApiModelProperty
(
value
=
"培训结束时间"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
endTime
;
/**
* 培训地点
*/
@ApiModelProperty
(
value
=
"培训地点"
)
private
String
trainLocation
;
/**
* 主讲人
*/
@ApiModelProperty
(
value
=
"主讲人"
)
private
String
speakerUserId
;
@ApiModelProperty
(
value
=
"培训资料集合"
)
private
List
<
FileRet
>
trainDataFileList
;
/**
* 培训简介
*/
@ApiModelProperty
(
value
=
"trainSynopsis"
)
private
String
trainSynopsis
;
/**
* 以报名人员
*/
@ApiModelProperty
(
value
=
"trainUsers"
)
private
List
<
TrainUser
>
trainUsers
;
/**
* 培训类别
*/
@ApiModelProperty
(
value
=
"培训类别"
,
name
=
"trainType"
)
private
Integer
trainType
;
/**
* 考试时间限制
*/
@ApiModelProperty
(
value
=
"考试时间限制"
)
private
Integer
examinationTL
;
@ApiModelProperty
(
value
=
"课件集合"
)
private
List
<
CoursewareFile
>
coursewareFileList
;
private
GenerateTestPaper
generateTestPaper
;
private
Integer
isNot
=
0
;
}
dev-train/src/main/java/com/tykj/dev/device/train/service/TestPaperService.java
浏览文件 @
75778001
...
...
@@ -2,6 +2,8 @@ package com.tykj.dev.device.train.service;
import
com.tykj.dev.device.train.entity.TestPaper
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
com.tykj.dev.device.train.entity.vo.TestPaperListVo
;
import
com.tykj.dev.device.train.entity.vo.TestPaperManagementListVo
;
import
java.util.List
;
...
...
@@ -23,6 +25,13 @@ public interface TestPaperService {
*/
TestPaper
findByUserIdAndTrainId
(
Integer
userId
,
Integer
trainId
);
/**
* 根据培训id以及状态查询试卷
*/
List
<
TestPaper
>
findByTrainIdAndStatus
(
Integer
trainId
,
Integer
status
);
/**
* 查询所有试卷
*/
...
...
@@ -38,5 +47,11 @@ public interface TestPaperService {
*/
TestPaper
generateTestPaper
(
GenerateTestPaper
generateTestPaper
);
List
<
TestPaperManagementListVo
>
TEST_PAPER_MANAGEMENT_LIST_VOS
(
Integer
unitId
,
Integer
status
);
List
<
TestPaperListVo
>
findAllByTrainId
(
Integer
trainId
);
// Page<TestPaper> pageTestPaperSelect(TestPaperPageVo TestPaperPageVo);
}
dev-train/src/main/java/com/tykj/dev/device/train/service/TrainThemeService.java
浏览文件 @
75778001
...
...
@@ -43,4 +43,9 @@ public interface TrainThemeService {
TrainTheme
findBytaskId
(
Integer
taskId
);
List
<
TrainUser
>
findAllTrainUserByTrainId
(
Integer
trainId
);
List
<
TrainTheme
>
findByUnitIdAndisNotExamines
(
Integer
isNotExamines
,
Integer
unitId
);
WaitExaminesVo
findWaitExaminesVo
(
Integer
trainId
);
}
dev-train/src/main/java/com/tykj/dev/device/train/service/impl/TestPaperServiceImpl.java
浏览文件 @
75778001
...
...
@@ -7,7 +7,11 @@ import com.tykj.dev.device.train.dao.TestPaperDao;
import
com.tykj.dev.device.train.entity.TestPaper
;
import
com.tykj.dev.device.train.entity.GenerateTestPaper
;
import
com.tykj.dev.device.train.entity.vo.ProblemVo
;
import
com.tykj.dev.device.train.entity.vo.TestPaperListVo
;
import
com.tykj.dev.device.train.entity.vo.TestPaperManagementListVo
;
import
com.tykj.dev.device.train.service.TestPaperService
;
import
com.tykj.dev.device.train.service.TrainTaskService
;
import
com.tykj.dev.device.train.service.TrainThemeService
;
import
com.tykj.dev.misc.base.BeanHelper
;
import
com.tykj.dev.misc.exception.ApiException
;
import
com.tykj.dev.misc.utils.JacksonUtil
;
...
...
@@ -20,6 +24,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.Random
;
import
java.util.stream.Collectors
;
/**
* @author zjm
...
...
@@ -33,9 +38,15 @@ public class TestPaperServiceImpl implements TestPaperService {
@Autowired
TestPaperDao
testPaperDao
;
@Autowired
TestPaperService
testPaperService
;
@Autowired
ProblemService
problemService
;
@Autowired
TrainThemeService
trainThemeService
;
@Override
public
TestPaper
saveProble
(
TestPaper
testPaper
)
{
return
testPaperDao
.
save
(
testPaper
);
...
...
@@ -74,6 +85,11 @@ public class TestPaperServiceImpl implements TestPaperService {
return
testPaper
;
}
@Override
public
List
<
TestPaper
>
findByTrainIdAndStatus
(
Integer
trainId
,
Integer
status
)
{
return
testPaperDao
.
findAllByTrainIdAndStatus
(
trainId
,
status
);
}
@Override
public
List
<
TestPaper
>
findAll
()
{
...
...
@@ -133,7 +149,6 @@ public class TestPaperServiceImpl implements TestPaperService {
testPaper
.
setShortAnswerProblemList
(
shortAnswerProblemList
);
testPaper
.
setMultipleChoiceProblemList
(
multipleChoiceProblemList
);
testPaper
.
setJudgeProblemList
(
judgeProblemList
);
testPaper
.
setChooseProblem
(
JacksonUtil
.
toJSon
(
testPaper
.
getChooseProblemList
()));
testPaper
.
setJudgeProblem
(
JacksonUtil
.
toJSon
(
testPaper
.
getJudgeProblemList
()));
testPaper
.
setMultipleChoiceProblem
(
JacksonUtil
.
toJSon
(
testPaper
.
getMultipleChoiceProblemList
()));
...
...
@@ -141,6 +156,35 @@ public class TestPaperServiceImpl implements TestPaperService {
return
testPaper
;
}
@Override
public
List
<
TestPaperManagementListVo
>
TEST_PAPER_MANAGEMENT_LIST_VOS
(
Integer
unitId
,
Integer
status
)
{
Integer
trainStatus
;
Integer
testPaperStatus
;
if
(
status
==
0
){
trainStatus
=
1
;
testPaperStatus
=
0
;
}
else
{
trainStatus
=
2
;
testPaperStatus
=
1
;
}
List
<
TestPaperManagementListVo
>
testPaperManagementListVos
=
new
ArrayList
<>();
trainThemeService
.
findByUnitIdAndisNotExamines
(
trainStatus
,
unitId
).
forEach
(
trainTheme
->
{
TestPaperManagementListVo
testPaperManagementListVo
=
new
TestPaperManagementListVo
();
testPaperManagementListVo
.
setTrainId
(
trainTheme
.
getTrainId
());
testPaperManagementListVo
.
setName
(
trainTheme
.
getName
());
testPaperManagementListVo
.
setCount
(
this
.
findByTrainIdAndStatus
(
trainTheme
.
getTrainId
(),
testPaperStatus
).
size
());
testPaperManagementListVos
.
add
(
testPaperManagementListVo
);
}
);
return
testPaperManagementListVos
;
}
@Override
public
List
<
TestPaperListVo
>
findAllByTrainId
(
Integer
trainId
)
{
return
testPaperDao
.
findAllByTrainId
(
trainId
).
stream
().
map
(
TestPaper:
:
toTestPaperListVo
).
collect
(
Collectors
.
toList
());
}
public
List
<
ProblemVo
>
getSubStringByRadom
(
List
<
Problem
>
list
,
int
count
){
List
backList
=
null
;
backList
=
new
ArrayList
<
ProblemVo
>();
...
...
dev-train/src/main/java/com/tykj/dev/device/train/service/impl/TrainThemeServiceImpl.java
浏览文件 @
75778001
...
...
@@ -143,13 +143,14 @@ public class TrainThemeServiceImpl implements TrainThemeService {
trainUsers
.
forEach
(
trainUser1
->
trainUser1
.
setMgrcert
(
mgrcertService
.
findByUserId
(
trainUser1
.
getUserId
()))
);
byTrainingPeople
.
setCoursewareFileList
(
JacksonUtil
.
readValue
(
trainTheme
.
getCoursewareFiles
(),
new
TypeReference
<
List
<
CoursewareFile
>>()
{}));
byTrainingPeople
.
setGenerateTestPaper
(
JacksonUtil
.
readValue
(
trainTheme
.
getGenerateTestPaperString
(),
GenerateTestPaper
.
class
));
byTrainingPeople
.
setTrainDataFileList
(
FilesUtil
.
stringFileToList
(
trainTheme
.
getTrainDataFiles
()));
byTrainingPeople
.
setTrainUserList
(
trainUsers
);
return
byTrainingPeople
;
}
@Override
public
TrainRegistrationVo
findRegistrationVo
(
Integer
trainThemeId
)
{
TrainTheme
trainTheme
=
trainThemeDao
.
findById
(
trainThemeId
).
get
();
...
...
@@ -296,6 +297,21 @@ public class TrainThemeServiceImpl implements TrainThemeService {
return
trainUserDao
.
findAllByTrainId
(
trainId
).
stream
().
filter
(
trainUser
->
trainUser
.
getIsSignUp
()==
1
).
collect
(
Collectors
.
toList
());
}
@Override
public
List
<
TrainTheme
>
findByUnitIdAndisNotExamines
(
Integer
isNotExamines
,
Integer
unitId
)
{
return
trainThemeDao
.
findAllByUnitsIdAndIsNotExamines
(
unitId
,
isNotExamines
);
}
@Override
public
WaitExaminesVo
findWaitExaminesVo
(
Integer
trainId
)
{
TrainTheme
trainTheme
=
trainThemeDao
.
findById
(
trainId
).
get
();
WaitExaminesVo
trainTrainingVo
=
trainTheme
.
toWaitExaminesVo
();
trainTrainingVo
.
setCoursewareFileList
(
JacksonUtil
.
readValue
(
trainTheme
.
getCoursewareFiles
(),
new
TypeReference
<
List
<
CoursewareFile
>>()
{
}));
trainTrainingVo
.
setGenerateTestPaper
(
JacksonUtil
.
readValue
(
trainTheme
.
getGenerateTestPaperString
(),
GenerateTestPaper
.
class
));
return
trainTrainingVo
;
}
private
Page
<
TrainTheme
>
getContacts
(
ConditionsTrainVo
conditionsTrainVo
,
Pageable
pageable
)
{
PredicateBuilder
<
TrainTheme
>
predicateBuilder
=
Specifications
.
and
();
if
(
conditionsTrainVo
.
getEndTime
()
!=
null
&&
conditionsTrainVo
.
getStartTime
()
!=
null
)
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论