Commit 0c7373dc by shenjunjie

Merge branch 'release' into 'master'

Release

See merge request !506
parents f653820b 080f2ce1
......@@ -77,8 +77,7 @@ public class AppToolsetController {
@LogRecord(description = "工具库-本品事件影响力更新")
public ResponseResult primaryEventUpdate(@RequestParam MultipartFile file,
@RequestParam Boolean extraCompute){
toolsetService.primaryEventUpdate(file, extraCompute);
return ResponseResult.success();
return toolsetService.primaryEventUpdate(file, extraCompute);
}
@ApiOperation("工具库-事件影响力更新-竞品更新")
......
......@@ -6,6 +6,7 @@ import com.zhiwei.brandkbs2.easyexcel.dto.UploadBytedanceEventDTO;
import com.zhiwei.brandkbs2.pojo.BytedanceCustomEventUpdateTaskData;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
......@@ -26,6 +27,23 @@ public class BytedanceEventListener extends AnalysisEventListener<UploadBytedanc
this.data = data;
}
/**
* 表头格式校验
* @param headMap
* @param context
*/
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
if (!"序号".equals(headMap.get(0)) || !"平台类型".equals(headMap.get(1)) || !"发布平台".equals(headMap.get(2))
|| !"渠道".equals(headMap.get(3)) || !"时间".equals(headMap.get(4)) || !"标题".equals(headMap.get(5))
|| !"文本".equals(headMap.get(6)) || !"地址".equals(headMap.get(7)) || !"命中词".equals(headMap.get(8))
|| !"情感倾向".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(15))) {
throw new IllegalArgumentException("表格格式有误-计算失败");
}
}
@Override
public void invoke(UploadBytedanceEventDTO dto, AnalysisContext context) {
BytedanceCustomEventUpdateTaskData taskData = new BytedanceCustomEventUpdateTaskData();
......
......@@ -76,7 +76,7 @@ public interface ToolsetService {
* @param file excel文件
* @param extraCompute 是否计算实时传播力与传播影响力
*/
void primaryEventUpdate(MultipartFile file, Boolean extraCompute);
ResponseResult primaryEventUpdate(MultipartFile file, Boolean extraCompute);
/**
* 竞品事件影响力计算
......
......@@ -368,19 +368,27 @@ public class ToolsetServiceImpl implements ToolsetService {
}
@Override
public void 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<>();
// excel信息提取
ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>();
readExcel.setClazz(UploadBytedanceEventDTO.class);
readExcel.setAnalysisEventListener(new BytedanceEventListener(task.getId(), data));
EasyExcelUtil.read(file, readExcel);
try {
// excel信息提取
ReadExcelDTO<UploadBytedanceEventDTO> readExcel = new ReadExcelDTO<>();
readExcel.setClazz(UploadBytedanceEventDTO.class);
readExcel.setAnalysisEventListener(new BytedanceEventListener(task.getId(), data));
EasyExcelUtil.readWithoutTryCatch(file, readExcel);
}catch (Exception e){
if (Objects.equals("表格格式有误-计算失败", e.getMessage())){
return ResponseResult.failure(e.getMessage());
}
log.error("主品牌事件影响力计算表格读取出错-", e);
return ResponseResult.failure("计算失败");
}
// 更新处理进度
resetProcessSchedule(task.getId(), data.size());
ApplicationProjectListener.getThreadPool().execute(() -> processEventUpdate(data, task, extraCompute));
return ResponseResult.success();
}
@Override
......
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