Commit afdc5713 by shenjunjie

Merge branch 'release' into 'master'

Release

See merge request !508
parents 0c7373dc 84fa592e
...@@ -4,6 +4,7 @@ import com.alibaba.excel.context.AnalysisContext; ...@@ -4,6 +4,7 @@ import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.event.AnalysisEventListener;
import com.zhiwei.brandkbs2.easyexcel.dto.UploadBytedanceEventDTO; import com.zhiwei.brandkbs2.easyexcel.dto.UploadBytedanceEventDTO;
import com.zhiwei.brandkbs2.pojo.BytedanceCustomEventUpdateTaskData; import com.zhiwei.brandkbs2.pojo.BytedanceCustomEventUpdateTaskData;
import org.apache.commons.collections4.CollectionUtils;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -17,14 +18,14 @@ import java.util.Objects; ...@@ -17,14 +18,14 @@ import java.util.Objects;
*/ */
public class BytedanceEventListener extends AnalysisEventListener<UploadBytedanceEventDTO> { public class BytedanceEventListener extends AnalysisEventListener<UploadBytedanceEventDTO> {
private String taskId;
private List<BytedanceCustomEventUpdateTaskData> data; private List<BytedanceCustomEventUpdateTaskData> data;
private List<Boolean> correctHead;
public BytedanceEventListener(String taskId, List<BytedanceCustomEventUpdateTaskData> data){ public BytedanceEventListener(List<BytedanceCustomEventUpdateTaskData> data, List<Boolean> correctHead){
this.taskId = taskId;
this.data = data; this.data = data;
this.correctHead = correctHead;
} }
/** /**
...@@ -40,14 +41,16 @@ public class BytedanceEventListener extends AnalysisEventListener<UploadBytedanc ...@@ -40,14 +41,16 @@ public class BytedanceEventListener extends AnalysisEventListener<UploadBytedanc
|| !"情感倾向".equals(headMap.get(9)) || !"事件标签".equals(headMap.get(10)) || !"在看".equals(headMap.get(11)) || !"情感倾向".equals(headMap.get(9)) || !"事件标签".equals(headMap.get(10)) || !"在看".equals(headMap.get(11))
|| !"阅读".equals(headMap.get(12)) || !"点赞".equals(headMap.get(13)) || !"评论".equals(headMap.get(14)) || !"阅读".equals(headMap.get(12)) || !"点赞".equals(headMap.get(13)) || !"评论".equals(headMap.get(14))
|| !"转发".equals(headMap.get(15))) { || !"转发".equals(headMap.get(15))) {
throw new IllegalArgumentException("表格格式有误-计算失败"); correctHead.add(false);
} }
} }
@Override @Override
public void invoke(UploadBytedanceEventDTO dto, AnalysisContext context) { public void invoke(UploadBytedanceEventDTO dto, AnalysisContext context) {
if (CollectionUtils.isNotEmpty(correctHead) && !correctHead.get(0)){
return;
}
BytedanceCustomEventUpdateTaskData taskData = new BytedanceCustomEventUpdateTaskData(); BytedanceCustomEventUpdateTaskData taskData = new BytedanceCustomEventUpdateTaskData();
taskData.setTaskId(taskId);
taskData.setPlatformType(dto.getPlatformType()); taskData.setPlatformType(dto.getPlatformType());
taskData.setPlatform(dto.getPlatform()); taskData.setPlatform(dto.getPlatform());
taskData.setChannel(dto.getChannel()); taskData.setChannel(dto.getChannel());
......
...@@ -14,8 +14,6 @@ import lombok.Setter; ...@@ -14,8 +14,6 @@ import lombok.Setter;
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
public class BytedanceCustomEventUpdateTaskData extends AbstractBaseMongo { public class BytedanceCustomEventUpdateTaskData extends AbstractBaseMongo {
private String taskId;
private String platformType; private String platformType;
private String platform; private String platform;
......
...@@ -369,22 +369,18 @@ public class ToolsetServiceImpl implements ToolsetService { ...@@ -369,22 +369,18 @@ public class ToolsetServiceImpl implements ToolsetService {
@Override @Override
public ResponseResult primaryEventUpdate(MultipartFile file, Boolean extraCompute) { public ResponseResult primaryEventUpdate(MultipartFile file, Boolean extraCompute) {
BytedanceCustomEventUpdateTask task = BytedanceCustomEventUpdateTask.createTaskPrimary(extraCompute);
bytedanceCustomEventUpdateTaskDao.insertOne(task);
List<BytedanceCustomEventUpdateTaskData> data = new ArrayList<>(); List<BytedanceCustomEventUpdateTaskData> data = new ArrayList<>();
try { List<Boolean> correctHead = new ArrayList<>(1);
// excel信息提取 // excel信息提取
ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>(); ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>();
readExcel.setClazz(UploadBytedanceEventDTO.class); readExcel.setClazz(UploadBytedanceEventDTO.class);
readExcel.setAnalysisEventListener(new BytedanceEventListener(task.getId(), data)); readExcel.setAnalysisEventListener(new BytedanceEventListener(data, correctHead));
EasyExcelUtil.readWithoutTryCatch(file, readExcel); EasyExcelUtil.read(file, readExcel);
}catch (Exception e){ if (CollectionUtils.isNotEmpty(correctHead) && !correctHead.get(0)){
if (Objects.equals("表格格式有误-计算失败", e.getMessage())){ return ResponseResult.failure("表格模板错误,计算失败");
return ResponseResult.failure(e.getMessage());
}
log.error("主品牌事件影响力计算表格读取出错-", e);
return ResponseResult.failure("计算失败");
} }
BytedanceCustomEventUpdateTask task = BytedanceCustomEventUpdateTask.createTaskPrimary(extraCompute);
bytedanceCustomEventUpdateTaskDao.insertOne(task);
// 更新处理进度 // 更新处理进度
resetProcessSchedule(task.getId(), data.size()); resetProcessSchedule(task.getId(), data.size());
ApplicationProjectListener.getThreadPool().execute(() -> processEventUpdate(data, task, extraCompute)); ApplicationProjectListener.getThreadPool().execute(() -> processEventUpdate(data, task, extraCompute));
...@@ -407,7 +403,7 @@ public class ToolsetServiceImpl implements ToolsetService { ...@@ -407,7 +403,7 @@ public class ToolsetServiceImpl implements ToolsetService {
// excel信息提取 // excel信息提取
ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>(); ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>();
readExcel.setClazz(UploadBytedanceEventDTO.class); readExcel.setClazz(UploadBytedanceEventDTO.class);
readExcel.setAnalysisEventListener(new BytedanceEventListener(taskId, data)); readExcel.setAnalysisEventListener(new BytedanceEventListener(data, null));
EasyExcelUtil.read(file, readExcel); EasyExcelUtil.read(file, readExcel);
// 将旧数据与新数据合并 // 将旧数据与新数据合并
List<BytedanceCustomEventUpdateTaskData> taskData = bytedanceCustomEventUpdateTaskDataDao.findList(new Query(Criteria.where("taskId").is(taskId))); List<BytedanceCustomEventUpdateTaskData> taskData = bytedanceCustomEventUpdateTaskDataDao.findList(new Query(Criteria.where("taskId").is(taskId)));
...@@ -696,6 +692,7 @@ public class ToolsetServiceImpl implements ToolsetService { ...@@ -696,6 +692,7 @@ public class ToolsetServiceImpl implements ToolsetService {
private void updateStatus(String taskId, BytedanceCustomEventUpdateTask.TaskStatus taskStatus){ private void updateStatus(String taskId, BytedanceCustomEventUpdateTask.TaskStatus taskStatus){
BytedanceCustomEventUpdateTask task = bytedanceCustomEventUpdateTaskDao.findOneById(taskId); BytedanceCustomEventUpdateTask task = bytedanceCustomEventUpdateTaskDao.findOneById(taskId);
task.setRead(true);
updateStatus(task, taskStatus, null); updateStatus(task, taskStatus, null);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment