|
@@ -1,5 +1,6 @@
|
|
|
package com.qmth.distributed.print.business.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
@@ -7,6 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.qmth.distributed.print.business.bean.dto.CardCustDto;
|
|
|
import com.qmth.distributed.print.business.bean.dto.CardDetailDto;
|
|
|
import com.qmth.distributed.print.business.bean.dto.SyncExamCardDto;
|
|
|
+import com.qmth.distributed.print.business.bean.marking.ConvertJpgStorage;
|
|
|
import com.qmth.distributed.print.business.bean.params.ExamCardParams;
|
|
|
import com.qmth.distributed.print.business.bean.params.GenericExamCardParams;
|
|
|
import com.qmth.distributed.print.business.entity.*;
|
|
@@ -16,6 +18,7 @@ import com.qmth.distributed.print.business.enums.MakeMethodEnum;
|
|
|
import com.qmth.distributed.print.business.enums.TemplateTypeEnum;
|
|
|
import com.qmth.distributed.print.business.mapper.ExamCardMapper;
|
|
|
import com.qmth.distributed.print.business.service.*;
|
|
|
+import com.qmth.distributed.print.business.util.HtmlToJpgUtil;
|
|
|
import com.qmth.teachcloud.common.bean.params.ArraysParams;
|
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
import com.qmth.teachcloud.common.entity.BasicAttachment;
|
|
@@ -24,6 +27,7 @@ import com.qmth.teachcloud.common.entity.SysOrg;
|
|
|
import com.qmth.teachcloud.common.entity.SysUser;
|
|
|
import com.qmth.teachcloud.common.enums.CardCreateMethodEnum;
|
|
|
import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
|
+import com.qmth.teachcloud.common.enums.PageSizeEnum;
|
|
|
import com.qmth.teachcloud.common.service.BasicAttachmentService;
|
|
|
import com.qmth.teachcloud.common.service.BasicCourseService;
|
|
|
import com.qmth.teachcloud.common.service.TeachcloudCommonService;
|
|
@@ -74,9 +78,12 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
@Resource
|
|
|
BasicTemplateOrgService basicTemplateOrgService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ HtmlToJpgUtil htmlToJpgUtil;
|
|
|
+
|
|
|
@Transactional
|
|
|
@Override
|
|
|
- public String saveExamCard(ExamCardParams examCardParams) {
|
|
|
+ public String saveExamCard(ExamCardParams examCardParams) throws Exception {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
SysUser user = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
|
@@ -112,6 +119,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
examCardDetail.setCardId(examCard.getId());
|
|
|
examCardDetail.setContent(examCardParams.getContent());
|
|
|
examCardDetail.setHtmlContent(examCardParams.getHtmlContent());
|
|
|
+ examCardDetail.setJpgAttachmentInfo(JSON.toJSONString(htmlToJpgUtil.convertHtmlToJpgByCard(examCard.getTitle(),examCardParams.getHtmlContent(),PageSizeEnum.A3)));
|
|
|
examCardDetail.setAttachmentId(examCardParams.getAttachmentId());
|
|
|
examCardDetail.insertInfo(user.getId());
|
|
|
examCardDetailService.save(examCardDetail);
|
|
@@ -137,6 +145,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
}
|
|
|
examCardDetail.setContent(examCardParams.getContent());
|
|
|
examCardDetail.setHtmlContent(examCardParams.getHtmlContent());
|
|
|
+ examCardDetail.setJpgAttachmentInfo(JSON.toJSONString(htmlToJpgUtil.convertHtmlToJpgByCard(examCard.getTitle(),examCardParams.getHtmlContent(),PageSizeEnum.A3)));
|
|
|
examCardDetail.setAttachmentId(examCardParams.getAttachmentId());
|
|
|
examCardDetail.updateInfo(user.getId());
|
|
|
examCardDetailService.updateById(examCardDetail);
|
|
@@ -297,7 +306,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
|
|
|
@Transactional
|
|
|
@Override
|
|
|
- public Long saveGeneric(GenericExamCardParams params) {
|
|
|
+ public Long saveGeneric(GenericExamCardParams params) throws Exception {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
|
@@ -337,6 +346,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
examCardDetail.setCreateId(sysUser.getId());
|
|
|
examCardDetail.setCreateTime(System.currentTimeMillis());
|
|
|
// 方式为上传
|
|
|
+ String htmlContent = "";
|
|
|
if (CardCreateMethodEnum.UPLOAD.equals(params.getCreateMethod())) {
|
|
|
if (params.getAttachmentId() == null) {
|
|
|
throw ExceptionResultEnum.ERROR.exception("请上传模板文件");
|
|
@@ -348,15 +358,19 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
if (!".html".equalsIgnoreCase(attachment.getType())) {
|
|
|
throw ExceptionResultEnum.ERROR.exception("只能上传后缀为.html文件");
|
|
|
}
|
|
|
- examCardDetail.setHtmlContent(teachcloudCommonService.readFileContent(attachment.getPath()));
|
|
|
+ htmlContent = teachcloudCommonService.readFileContent(attachment.getPath());
|
|
|
+ examCardDetail.setHtmlContent(htmlContent);
|
|
|
}
|
|
|
// 方式为自定义
|
|
|
else if (CardCreateMethodEnum.STANDARD.equals(params.getCreateMethod()) || CardCreateMethodEnum.FREE.equals(params.getCreateMethod())) {
|
|
|
examCardDetail.setContent(params.getContent());
|
|
|
- examCardDetail.setHtmlContent(params.getHtmlContent());
|
|
|
+ htmlContent = params.getHtmlContent();
|
|
|
+ examCardDetail.setHtmlContent(htmlContent);
|
|
|
} else {
|
|
|
throw ExceptionResultEnum.ERROR.exception("题卡创建方式异常");
|
|
|
}
|
|
|
+ List<ConvertJpgStorage> convertJpgStorageList = htmlToJpgUtil.convertHtmlToJpgByCard(examCard.getTitle(),htmlContent, PageSizeEnum.A3);
|
|
|
+ examCardDetail.setJpgAttachmentInfo(JSON.toJSONString(convertJpgStorageList));
|
|
|
examCardDetailService.save(examCardDetail);
|
|
|
}
|
|
|
// 修改
|
|
@@ -378,6 +392,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
examCardDetail = examCardDetailService.getByCardId(params.getId());
|
|
|
examCardDetail.setUpdateId(sysUser.getId());
|
|
|
examCardDetail.setUpdateTime(System.currentTimeMillis());
|
|
|
+ String htmlContent = "";
|
|
|
// 方式为上传
|
|
|
if (CardCreateMethodEnum.UPLOAD.equals(params.getCreateMethod())) {
|
|
|
if (params.getAttachmentId() == null) {
|
|
@@ -390,17 +405,21 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
|
|
|
if (!".html".equalsIgnoreCase(attachment.getType())) {
|
|
|
throw ExceptionResultEnum.ERROR.exception("只能上传后缀为.html文件");
|
|
|
}
|
|
|
- examCardDetail.setHtmlContent(teachcloudCommonService.readFileContent(attachment.getPath()));
|
|
|
+ htmlContent = teachcloudCommonService.readFileContent(attachment.getPath());
|
|
|
+ examCardDetail.setHtmlContent(htmlContent);
|
|
|
// 上传题卡,状态为提交
|
|
|
examCard.setStatus(CardStatusEnum.SUBMIT);
|
|
|
}
|
|
|
// 方式为自定义
|
|
|
else if (CardCreateMethodEnum.STANDARD.equals(params.getCreateMethod()) || CardCreateMethodEnum.FREE.equals(params.getCreateMethod())) {
|
|
|
examCardDetail.setContent(params.getContent());
|
|
|
- examCardDetail.setHtmlContent(params.getHtmlContent());
|
|
|
+ htmlContent = params.getHtmlContent();
|
|
|
+ examCardDetail.setHtmlContent(htmlContent);
|
|
|
} else {
|
|
|
throw ExceptionResultEnum.ERROR.exception("题卡创建方式异常");
|
|
|
}
|
|
|
+ List<ConvertJpgStorage> convertJpgStorageList = htmlToJpgUtil.convertHtmlToJpgByCard(examCard.getTitle(),htmlContent, PageSizeEnum.A3);
|
|
|
+ examCardDetail.setJpgAttachmentInfo(JSON.toJSONString(convertJpgStorageList));
|
|
|
examCardDetailService.updateById(examCardDetail);
|
|
|
|
|
|
//删除权限
|