|
@@ -1,7 +1,7 @@
|
|
|
package cn.cslg.pas.service.upLoadPatent;
|
|
|
|
|
|
import cn.cslg.pas.common.model.PersonnelVO;
|
|
|
-import cn.cslg.pas.common.model.dto.QrtzTaskAddNewDTO;
|
|
|
+import cn.cslg.pas.common.model.dto.TaskAddNewDTO;
|
|
|
import cn.cslg.pas.common.model.dto.UploadFileDTO;
|
|
|
import cn.cslg.pas.common.model.outApi.PatentStarListDto;
|
|
|
import cn.cslg.pas.common.utils.*;
|
|
@@ -9,7 +9,7 @@ import cn.cslg.pas.common.utils.SecurityUtils.LoginUtils;
|
|
|
import cn.cslg.pas.domain.Project;
|
|
|
import cn.cslg.pas.domain.SerachBiblioData;
|
|
|
import cn.cslg.pas.domain.WebLoginConfig;
|
|
|
-import cn.cslg.pas.domain.asso.AssoOsTaskQrtzTask;
|
|
|
+import cn.cslg.pas.domain.asso.TaskCondition;
|
|
|
import cn.cslg.pas.service.ProjectService;
|
|
|
import cn.cslg.pas.service.TaskService;
|
|
|
import cn.cslg.pas.service.WebLoginConfigService;
|
|
@@ -19,7 +19,6 @@ import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import java.io.IOException;
|
|
@@ -71,10 +70,10 @@ public class UploadTaskService {
|
|
|
/**
|
|
|
* 新增Epo网站导入任务
|
|
|
*
|
|
|
- * @param qrtzTaskAddNewDTO 前台参数(检索信息conditions、专题库id、下载字段configCells等)
|
|
|
+ * @param taskAddNewDTO 前台参数(检索信息conditions、专题库id、下载字段configCells等)
|
|
|
*/
|
|
|
- public AssoOsTaskQrtzTask addEpoTask(QrtzTaskAddNewDTO qrtzTaskAddNewDTO) throws IOException {
|
|
|
- Integer webId = qrtzTaskAddNewDTO.getConfigId();
|
|
|
+ public TaskCondition addEpoTask(TaskAddNewDTO taskAddNewDTO) throws IOException {
|
|
|
+ Integer webId = taskAddNewDTO.getConfigId();
|
|
|
PersonnelVO personnelVO = cacheUtils.getLoginUserPersonnel(loginUtils.getId());
|
|
|
//根据网站id获得配置
|
|
|
WebLoginConfig webLoginConfig = webLoginConfigService.getLoginConfig(webId, personnelVO.getTenantId());
|
|
@@ -84,63 +83,63 @@ public class UploadTaskService {
|
|
|
|
|
|
//检查任务合法性(检查当前检索式能否检索出专利)
|
|
|
//根据检索式conditions检索一件专利著录信息
|
|
|
- SerachBiblioData serachBiblioData = excutePatentDataEpo.getSerachBiblioData(qrtzTaskAddNewDTO.getConditions(), 1, 1);
|
|
|
+ SerachBiblioData serachBiblioData = excutePatentDataEpo.getSerachBiblioData(taskAddNewDTO.getConditions(), 1, 1);
|
|
|
if (serachBiblioData == null || serachBiblioData.getTotals() == 0) {
|
|
|
ThrowException.throwXiaoShiException("根据检索信息未检索到相关专利,请尝试更换检索信息");
|
|
|
}
|
|
|
|
|
|
//任务与任务条件关联表新增数据
|
|
|
- AssoOsTaskQrtzTask assoOsTaskQrtzTask = new AssoOsTaskQrtzTask();
|
|
|
- assoOsTaskQrtzTask
|
|
|
- .setTaskType(qrtzTaskAddNewDTO.getTaskType())
|
|
|
- .setConditions(qrtzTaskAddNewDTO.getConditions())
|
|
|
- .setCrons(qrtzTaskAddNewDTO.getCrons())
|
|
|
- .setConfigId(qrtzTaskAddNewDTO.getConfigId())
|
|
|
- .setTaskName(qrtzTaskAddNewDTO.getTaskName())
|
|
|
+ TaskCondition taskCondition = new TaskCondition();
|
|
|
+ taskCondition
|
|
|
+ .setTaskType(taskAddNewDTO.getTaskType())
|
|
|
+ .setConditions(taskAddNewDTO.getConditions())
|
|
|
+ .setCrons(taskAddNewDTO.getCrons())
|
|
|
+ .setConfigId(taskAddNewDTO.getConfigId())
|
|
|
+ .setTaskName(taskAddNewDTO.getTaskName())
|
|
|
.setTotal(serachBiblioData.getTotals());
|
|
|
- List<String> cells = qrtzTaskAddNewDTO.getConfigCells();
|
|
|
+ List<String> cells = taskAddNewDTO.getConfigCells();
|
|
|
if (cells == null) {
|
|
|
- assoOsTaskQrtzTask.setConfigCells("");
|
|
|
+ taskCondition.setConfigCells("");
|
|
|
} else {
|
|
|
- assoOsTaskQrtzTask.setConfigCells(String.join(",", cells));
|
|
|
+ taskCondition.setConfigCells(String.join(",", cells));
|
|
|
}
|
|
|
- assoOsTaskQrtzTaskService.save(assoOsTaskQrtzTask);
|
|
|
+ assoOsTaskQrtzTaskService.save(taskCondition);
|
|
|
|
|
|
//任务表新增任务
|
|
|
- Integer taskId = taskService.addTask3(qrtzTaskAddNewDTO, serachBiblioData.getTotals(), assoOsTaskQrtzTask);
|
|
|
+ Integer taskId = taskService.addTask3(taskAddNewDTO, serachBiblioData.getTotals(), taskCondition);
|
|
|
|
|
|
//任务与任务条件关联表更新数据
|
|
|
- assoOsTaskQrtzTask.setTaskId(taskId);
|
|
|
- assoOsTaskQrtzTaskService.updateById(assoOsTaskQrtzTask);
|
|
|
+ taskCondition.setTaskId(taskId);
|
|
|
+ assoOsTaskQrtzTaskService.updateById(taskCondition);
|
|
|
|
|
|
//任务存入生产者任务队列并唤醒生产者线程
|
|
|
pantentQueueService.taskQueueAddTask(Arrays.asList(taskId));
|
|
|
pantentQueueService.awakeTasktch();
|
|
|
|
|
|
- return assoOsTaskQrtzTask;
|
|
|
+ return taskCondition;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 新增专利之星导入任务
|
|
|
*
|
|
|
- * @param qrtzTaskAddNewDTO 前台参数(检索信息conditions、专题库id、下载字段configCells等)
|
|
|
+ * @param taskAddNewDTO 前台参数(检索信息conditions、专题库id、下载字段configCells等)
|
|
|
*/
|
|
|
- public AssoOsTaskQrtzTask addPatentStarTask(QrtzTaskAddNewDTO qrtzTaskAddNewDTO) throws IOException {
|
|
|
- log.info("开始处理【新增专利之星下载接口导入专利】的业务,参数为:{}", qrtzTaskAddNewDTO);
|
|
|
+ public TaskCondition addPatentStarTask(TaskAddNewDTO taskAddNewDTO) throws IOException {
|
|
|
+ log.info("开始处理【新增专利之星下载接口导入专利】的业务,参数为:{}", taskAddNewDTO);
|
|
|
|
|
|
//检查任务合法性1(判断要导入的专题库或报告是否存在)
|
|
|
- if (qrtzTaskAddNewDTO.getProjectId() != null) {
|
|
|
- Project project = projectService.getById(qrtzTaskAddNewDTO.getProjectId());
|
|
|
+ if (taskAddNewDTO.getProjectId() != null) {
|
|
|
+ Project project = projectService.getById(taskAddNewDTO.getProjectId());
|
|
|
if (project == null) {
|
|
|
ThrowException.throwXiaoShiException("该专题库已不存在,请尝试刷新页面");
|
|
|
}
|
|
|
}
|
|
|
- if (qrtzTaskAddNewDTO.getReportId() != null) {
|
|
|
+ if (taskAddNewDTO.getReportId() != null) {
|
|
|
//查询报告是否存在,若不存在则抛出异常信息 "该报告已不存在,请尝试刷新页面"
|
|
|
}
|
|
|
|
|
|
//检查任务合法性2(根据网站配置id和登陆人所属租户id,看是否有网站导入任务的权限)
|
|
|
- Integer webId = qrtzTaskAddNewDTO.getConfigId();
|
|
|
+ Integer webId = taskAddNewDTO.getConfigId();
|
|
|
PersonnelVO personnelVO = cacheUtils.getLoginUserPersonnel(loginUtils.getId()); //获取登陆人信息
|
|
|
WebLoginConfig webLoginConfig = webLoginConfigService.getLoginConfig(webId, personnelVO.getTenantId()); //根据网站id获得配置
|
|
|
if (webLoginConfig == null) {
|
|
@@ -149,12 +148,12 @@ public class UploadTaskService {
|
|
|
|
|
|
//检查任务合法性3(根据检索式信息调用一般检索接口,看是否能检索出专利)
|
|
|
PatentStarListDto patentStarListDto = new PatentStarListDto()
|
|
|
- .setCurrentQuery(qrtzTaskAddNewDTO.getConditions())
|
|
|
- .setOrderBy(qrtzTaskAddNewDTO.getOrderBy())
|
|
|
- .setOrderByType(qrtzTaskAddNewDTO.getOrderByType())
|
|
|
+ .setCurrentQuery(taskAddNewDTO.getConditions())
|
|
|
+ .setOrderBy(taskAddNewDTO.getOrderBy())
|
|
|
+ .setOrderByType(taskAddNewDTO.getOrderByType())
|
|
|
.setPageNum(1)
|
|
|
.setRowCount(10)
|
|
|
- .setDBType(qrtzTaskAddNewDTO.getDBType());
|
|
|
+ .setDBType(taskAddNewDTO.getDBType());
|
|
|
Map<String, Object> resultMap = patentStarApiService.patentStarSearchApi(patentStarListDto);
|
|
|
if (resultMap == null || (Integer) resultMap.get("total") == 0) {
|
|
|
ThrowException.throwXiaoShiException("未检索到相关专利,请尝试更改检索式或检索条件信息");
|
|
@@ -162,63 +161,63 @@ public class UploadTaskService {
|
|
|
|
|
|
//获取专利总数量
|
|
|
Integer total;
|
|
|
- if (qrtzTaskAddNewDTO.getEndNumber() != 0) {
|
|
|
- total = qrtzTaskAddNewDTO.getEndNumber() - qrtzTaskAddNewDTO.getStartNumber() + 1;
|
|
|
- if (qrtzTaskAddNewDTO.getIsDeletePatentNos() != null) {
|
|
|
- total = total - qrtzTaskAddNewDTO.getIsDeletePatentNos().size();
|
|
|
+ if (taskAddNewDTO.getEndNumber() != 0) {
|
|
|
+ total = taskAddNewDTO.getEndNumber() - taskAddNewDTO.getStartNumber() + 1;
|
|
|
+ if (taskAddNewDTO.getIsDeletePatentNos() != null) {
|
|
|
+ total = total - taskAddNewDTO.getIsDeletePatentNos().size();
|
|
|
}
|
|
|
- if (qrtzTaskAddNewDTO.getIsAddPatentNos() != null) {
|
|
|
- total = total + qrtzTaskAddNewDTO.getIsAddPatentNos().size();
|
|
|
+ if (taskAddNewDTO.getIsAddPatentNos() != null) {
|
|
|
+ total = total + taskAddNewDTO.getIsAddPatentNos().size();
|
|
|
}
|
|
|
} else {
|
|
|
- total = qrtzTaskAddNewDTO.getIsAddPatentNos().size();
|
|
|
+ total = taskAddNewDTO.getIsAddPatentNos().size();
|
|
|
}
|
|
|
|
|
|
//新增任务与任务条件关联表("asso_osTask_qrtzTask")数据
|
|
|
- AssoOsTaskQrtzTask assoOsTaskQrtzTask = new AssoOsTaskQrtzTask();
|
|
|
- assoOsTaskQrtzTask
|
|
|
- .setTaskName(qrtzTaskAddNewDTO.getTaskName())
|
|
|
- .setTaskType(qrtzTaskAddNewDTO.getTaskType())
|
|
|
- .setTaskType2(qrtzTaskAddNewDTO.getTaskType2())
|
|
|
- .setConditions(qrtzTaskAddNewDTO.getConditions())
|
|
|
- .setCrons(qrtzTaskAddNewDTO.getCrons())
|
|
|
- .setConfigId(qrtzTaskAddNewDTO.getConfigId())
|
|
|
- .setTaskName(qrtzTaskAddNewDTO.getTaskName())
|
|
|
+ TaskCondition taskCondition = new TaskCondition();
|
|
|
+ taskCondition
|
|
|
+ .setTaskName(taskAddNewDTO.getTaskName())
|
|
|
+ .setTaskType(taskAddNewDTO.getTaskType())
|
|
|
+ .setTaskType2(taskAddNewDTO.getTaskType2())
|
|
|
+ .setConditions(taskAddNewDTO.getConditions())
|
|
|
+ .setCrons(taskAddNewDTO.getCrons())
|
|
|
+ .setConfigId(taskAddNewDTO.getConfigId())
|
|
|
+ .setTaskName(taskAddNewDTO.getTaskName())
|
|
|
.setTotal(total)
|
|
|
- .setOrderBy(qrtzTaskAddNewDTO.getOrderBy())
|
|
|
- .setOrderByType(qrtzTaskAddNewDTO.getOrderByType())
|
|
|
- .setDBType(qrtzTaskAddNewDTO.getDBType())
|
|
|
- .setStartNumber(qrtzTaskAddNewDTO.getStartNumber())
|
|
|
- .setEndNumber(qrtzTaskAddNewDTO.getEndNumber());
|
|
|
- if (qrtzTaskAddNewDTO.getIsAddPatentNos() != null && qrtzTaskAddNewDTO.getIsAddPatentNos().size() > 0) {
|
|
|
- assoOsTaskQrtzTask.setIsAddPatentNos(StringUtils.join(qrtzTaskAddNewDTO.getIsAddPatentNos(), ","));
|
|
|
+ .setOrderBy(taskAddNewDTO.getOrderBy())
|
|
|
+ .setOrderByType(taskAddNewDTO.getOrderByType())
|
|
|
+ .setDBType(taskAddNewDTO.getDBType())
|
|
|
+ .setStartNumber(taskAddNewDTO.getStartNumber())
|
|
|
+ .setEndNumber(taskAddNewDTO.getEndNumber());
|
|
|
+ if (taskAddNewDTO.getIsAddPatentNos() != null && taskAddNewDTO.getIsAddPatentNos().size() > 0) {
|
|
|
+ taskCondition.setIsAddPatentNos(StringUtils.join(taskAddNewDTO.getIsAddPatentNos(), ","));
|
|
|
}
|
|
|
- if (qrtzTaskAddNewDTO.getIsDeletePatentNos() != null && qrtzTaskAddNewDTO.getIsDeletePatentNos().size() > 0) {
|
|
|
- assoOsTaskQrtzTask.setIsDeletePatentNos(StringUtils.join(qrtzTaskAddNewDTO.getIsDeletePatentNos(), ","));
|
|
|
+ if (taskAddNewDTO.getIsDeletePatentNos() != null && taskAddNewDTO.getIsDeletePatentNos().size() > 0) {
|
|
|
+ taskCondition.setIsDeletePatentNos(StringUtils.join(taskAddNewDTO.getIsDeletePatentNos(), ","));
|
|
|
}
|
|
|
- List<String> cells = qrtzTaskAddNewDTO.getConfigCells();
|
|
|
+ List<String> cells = taskAddNewDTO.getConfigCells();
|
|
|
if (cells == null) {
|
|
|
- assoOsTaskQrtzTask.setConfigCells("");
|
|
|
+ taskCondition.setConfigCells("");
|
|
|
} else {
|
|
|
- assoOsTaskQrtzTask.setConfigCells(String.join(",", cells));
|
|
|
+ taskCondition.setConfigCells(String.join(",", cells));
|
|
|
}
|
|
|
log.info("任务与任务条件关联表(asso_osTask_qrtzTask)新增数据");
|
|
|
- assoOsTaskQrtzTaskService.save(assoOsTaskQrtzTask);
|
|
|
+ assoOsTaskQrtzTaskService.save(taskCondition);
|
|
|
|
|
|
//任务表新增任务
|
|
|
- Integer taskId = taskService.addTask3(qrtzTaskAddNewDTO, total, assoOsTaskQrtzTask);
|
|
|
+ Integer taskId = taskService.addTask3(taskAddNewDTO, total, taskCondition);
|
|
|
|
|
|
//任务与任务条件关联表(asso_osTask_qrtzTask)更新数据(普通任务)
|
|
|
- if (qrtzTaskAddNewDTO.getTaskType().equals(0)) {
|
|
|
- assoOsTaskQrtzTask.setTaskId(taskId);
|
|
|
- assoOsTaskQrtzTaskService.updateById(assoOsTaskQrtzTask);
|
|
|
+ if (taskAddNewDTO.getTaskType().equals(0)) {
|
|
|
+ taskCondition.setTaskId(taskId);
|
|
|
+ assoOsTaskQrtzTaskService.updateById(taskCondition);
|
|
|
}
|
|
|
|
|
|
//任务存入生产者任务队列并唤醒生产者线程
|
|
|
pantentQueueService.taskQueueAddTask(Arrays.asList(taskId));
|
|
|
pantentQueueService.awakeTasktch();
|
|
|
|
|
|
- return assoOsTaskQrtzTask;
|
|
|
+ return taskCondition;
|
|
|
}
|
|
|
|
|
|
}
|