|
@@ -825,7 +825,6 @@ public class CreatePdfUtil {
|
|
*
|
|
*
|
|
* @param studentContent 题卡html内容
|
|
* @param studentContent 题卡html内容
|
|
* @param examStudent 考生对象
|
|
* @param examStudent 考生对象
|
|
- * @param tempPaperType
|
|
|
|
* @param examDetail 考场对象
|
|
* @param examDetail 考场对象
|
|
* @param examDetailCourse 考场课程对象
|
|
* @param examDetailCourse 考场课程对象
|
|
* @param userId 当前用户ID
|
|
* @param userId 当前用户ID
|
|
@@ -854,19 +853,10 @@ public class CreatePdfUtil {
|
|
studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", examStudent != null && examStudent.getPaperType() != null ? examStudent.getPaperType() : StringUtils.isNotBlank(paperType) ? paperType : "");
|
|
studentHtml = studentHtml.replaceAll("\\$\\{paperTypeName\\}", examStudent != null && examStudent.getPaperType() != null ? examStudent.getPaperType() : StringUtils.isNotBlank(paperType) ? paperType : "");
|
|
|
|
|
|
// 根据题卡规则必选字段,替换相应值,没有则“”
|
|
// 根据题卡规则必选字段,替换相应值,没有则“”
|
|
- List<StudentExtendDto> studentExtendDtos = createExtendObject(examStudent, basicCardRule);
|
|
|
|
|
|
+ List<StudentExtendDto> studentExtendDtos = createExtendObject(examDetail, examStudent, basicCardRule);
|
|
for (StudentExtendDto extendDto : studentExtendDtos) {
|
|
for (StudentExtendDto extendDto : studentExtendDtos) {
|
|
studentHtml = studentHtml.replaceAll("\\$\\{" + extendDto.getFieldName() + "\\}", String.valueOf(extendDto.getValue()));
|
|
studentHtml = studentHtml.replaceAll("\\$\\{" + extendDto.getFieldName() + "\\}", String.valueOf(extendDto.getValue()));
|
|
}
|
|
}
|
|
-
|
|
|
|
- // 时间需要特殊处理
|
|
|
|
- Map<String, Object> map = ConvertUtil.analyzeDateAndTime(examDetail.getExamStartTime(), examDetail.getExamEndTime());
|
|
|
|
- String examDate = Objects.nonNull(map.get("date")) ? (String) map.get("date") : "";
|
|
|
|
- String examTime = Objects.nonNull(map.get("time")) ? (String) map.get("time") : "";
|
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{examDate\\}", examDate);
|
|
|
|
- studentHtml = studentHtml.replaceAll("\\$\\{examTime\\}", examTime);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
// 以下值通过createExtendObject动态设置了,暂时屏蔽(2022-03-11 by xf)
|
|
// 以下值通过createExtendObject动态设置了,暂时屏蔽(2022-03-11 by xf)
|
|
/*
|
|
/*
|
|
studentHtml = studentHtml.replaceAll("\\$\\{ticketNumber\\}", examStudent.getTicketNumber());
|
|
studentHtml = studentHtml.replaceAll("\\$\\{ticketNumber\\}", examStudent.getTicketNumber());
|
|
@@ -890,10 +880,11 @@ public class CreatePdfUtil {
|
|
/**
|
|
/**
|
|
* 题卡规则字段
|
|
* 题卡规则字段
|
|
*
|
|
*
|
|
|
|
+ * @param examDetail
|
|
* @param examStudent 考生对象
|
|
* @param examStudent 考生对象
|
|
* @param basicCardRule 题卡规则对象
|
|
* @param basicCardRule 题卡规则对象
|
|
*/
|
|
*/
|
|
- private List<StudentExtendDto> createExtendObject(ExamStudent examStudent, BasicCardRule basicCardRule) {
|
|
|
|
|
|
+ private List<StudentExtendDto> createExtendObject(ExamDetail examDetail, ExamStudent examStudent, BasicCardRule basicCardRule) {
|
|
ExamStudentPdfInfoDto examStudentPdfInfoDto = examStudent == null ? null : examStudentService.getByStudentId(examStudent.getId());
|
|
ExamStudentPdfInfoDto examStudentPdfInfoDto = examStudent == null ? null : examStudentService.getByStudentId(examStudent.getId());
|
|
List<JSONObject> requiredFieldsJson = JSONArray.parseArray(basicCardRule.getRequiredFields(), JSONObject.class);
|
|
List<JSONObject> requiredFieldsJson = JSONArray.parseArray(basicCardRule.getRequiredFields(), JSONObject.class);
|
|
List<StudentExtendDto> studentExtendDtos = new ArrayList<>();
|
|
List<StudentExtendDto> studentExtendDtos = new ArrayList<>();
|
|
@@ -913,15 +904,25 @@ public class CreatePdfUtil {
|
|
if (examStudentPdfInfoDto != null && StringUtils.isNotBlank(examStudentPdfInfoDto.getExtendFields())) {
|
|
if (examStudentPdfInfoDto != null && StringUtils.isNotBlank(examStudentPdfInfoDto.getExtendFields())) {
|
|
studentExtendMap = JSONArray.parseArray(examStudentPdfInfoDto.getExtendFields(), JSONObject.class).stream().collect(Collectors.toMap(k -> String.valueOf(k.get("code")), v -> v.get("value")));
|
|
studentExtendMap = JSONArray.parseArray(examStudentPdfInfoDto.getExtendFields(), JSONObject.class).stream().collect(Collectors.toMap(k -> String.valueOf(k.get("code")), v -> v.get("value")));
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ Map<String, Object> map = ConvertUtil.analyzeDateAndTime(examDetail.getExamStartTime(), examDetail.getExamEndTime());
|
|
|
|
+
|
|
for (JSONObject jsonObject : extendFieldsJson) {
|
|
for (JSONObject jsonObject : extendFieldsJson) {
|
|
boolean enable = Boolean.parseBoolean(jsonObject.get("enable").toString());
|
|
boolean enable = Boolean.parseBoolean(jsonObject.get("enable").toString());
|
|
-// if (!enable) {
|
|
|
|
-// continue;
|
|
|
|
-// }
|
|
|
|
StudentExtendDto studentExtendDto = new StudentExtendDto();
|
|
StudentExtendDto studentExtendDto = new StudentExtendDto();
|
|
String code = String.valueOf(jsonObject.get("code"));
|
|
String code = String.valueOf(jsonObject.get("code"));
|
|
|
|
+
|
|
|
|
+
|
|
studentExtendDto.setFieldName(code);
|
|
studentExtendDto.setFieldName(code);
|
|
Object value = examStudentPdfInfoDto == null ? null : ReflectUtil.getFieldValue(examStudentPdfInfoDto, code);
|
|
Object value = examStudentPdfInfoDto == null ? null : ReflectUtil.getFieldValue(examStudentPdfInfoDto, code);
|
|
|
|
+ // 时间需要特殊处理
|
|
|
|
+ if("examDate".equals(code)){
|
|
|
|
+ value = Objects.nonNull(map.get("date")) ? (String) map.get("date") : "";
|
|
|
|
+ }
|
|
|
|
+ if("examTime".equals(code)){
|
|
|
|
+ value = Objects.nonNull(map.get("time")) ? (String) map.get("time") : "";
|
|
|
|
+ }
|
|
if (value == null) {
|
|
if (value == null) {
|
|
value = studentExtendMap == null ? null : studentExtendMap.get(code);
|
|
value = studentExtendMap == null ? null : studentExtendMap.get(code);
|
|
}
|
|
}
|