|
@@ -5,21 +5,25 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.qmth.boot.api.exception.ApiException;
|
|
|
import com.qmth.teachcloud.common.contant.SpringContextHolder;
|
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
+import com.qmth.teachcloud.common.entity.SysConfig;
|
|
|
import com.qmth.teachcloud.common.entity.TBTask;
|
|
|
import com.qmth.teachcloud.common.enums.TaskResultEnum;
|
|
|
import com.qmth.teachcloud.common.enums.TaskStatusEnum;
|
|
|
import com.qmth.teachcloud.common.enums.TaskTypeEnum;
|
|
|
import com.qmth.teachcloud.common.enums.UploadFileEnum;
|
|
|
+import com.qmth.teachcloud.common.service.SysConfigService;
|
|
|
import com.qmth.teachcloud.common.service.TBTaskService;
|
|
|
import com.qmth.teachcloud.common.util.FileStoreUtil;
|
|
|
import com.qmth.teachcloud.common.util.Result;
|
|
|
import com.qmth.teachcloud.common.util.ResultUtil;
|
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
|
import org.apache.commons.io.FileUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.scheduling.annotation.Async;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.io.*;
|
|
|
import java.nio.charset.StandardCharsets;
|
|
|
import java.text.MessageFormat;
|
|
@@ -37,6 +41,7 @@ import java.util.StringJoiner;
|
|
|
* @Date: 2021/3/29
|
|
|
*/
|
|
|
public abstract class AsyncImportTaskTemplete {
|
|
|
+
|
|
|
private final static Logger log = LoggerFactory.getLogger(AsyncImportTaskTemplete.class);
|
|
|
|
|
|
public static final String BEGIN_TITLE = "->开始准备处理导入的";
|
|
@@ -105,11 +110,20 @@ public abstract class AsyncImportTaskTemplete {
|
|
|
jsonObject.put(SystemConstant.PATH, stringJoiner.toString());
|
|
|
}
|
|
|
String path = (String) jsonObject.get(SystemConstant.PATH);
|
|
|
- path = path.replaceAll("\\\\","/");
|
|
|
+ path = path.replaceAll("\\\\", "/");
|
|
|
String type = (String) jsonObject.get(SystemConstant.TYPE);
|
|
|
|
|
|
+ String charset = SystemConstant.CHARSET_GB2312;
|
|
|
+ SysConfigService sysConfigService = SpringContextHolder.getBean(SysConfigService.class);
|
|
|
+ if (sysConfigService != null) {
|
|
|
+ SysConfig sysConfig = sysConfigService.getByKey("sys.txt.charset");
|
|
|
+ if (sysConfig != null && StringUtils.isNotBlank(sysConfig.getConfigValue())) {
|
|
|
+ charset = sysConfig.getConfigValue();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
out = new ByteArrayOutputStream();
|
|
|
- out.write(tbTask.getSummary().getBytes("gb2312"));
|
|
|
+ out.write(tbTask.getSummary().getBytes(charset));
|
|
|
byte[] bookByteAry = out.toByteArray();
|
|
|
inputStream = new ByteArrayInputStream(bookByteAry);
|
|
|
StringJoiner stringJoiner = new StringJoiner("");
|
|
@@ -143,8 +157,8 @@ public abstract class AsyncImportTaskTemplete {
|
|
|
stringJoinerSummary.add(MessageFormat.format("{0}{1}{2}{3}", DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN), EXCEPTION_CREATE_TXT_TITLE, EXCEPTION_DATA, e.getMessage()));
|
|
|
|
|
|
String summary = stringJoinerSummary.toString();
|
|
|
- if (summary.length() >= 65535){
|
|
|
- summary = "Data too long : " + summary.substring(0,100) + "......" + summary.substring(summary.length() - 100);
|
|
|
+ if (summary.length() >= 65535) {
|
|
|
+ summary = "Data too long : " + summary.substring(0, 100) + "......" + summary.substring(summary.length() - 100);
|
|
|
}
|
|
|
|
|
|
tbTask.setSummary(summary);
|