|
@@ -4,17 +4,21 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.example.xiaoshiweixinback.business.common.base.Records;
|
|
import com.example.xiaoshiweixinback.business.common.base.Records;
|
|
|
|
+import com.example.xiaoshiweixinback.business.exception.XiaoShiException;
|
|
import com.example.xiaoshiweixinback.business.utils.FormatUtil;
|
|
import com.example.xiaoshiweixinback.business.utils.FormatUtil;
|
|
import com.example.xiaoshiweixinback.domain.Monitor;
|
|
import com.example.xiaoshiweixinback.domain.Monitor;
|
|
import com.example.xiaoshiweixinback.domain.MonitorRecord;
|
|
import com.example.xiaoshiweixinback.domain.MonitorRecord;
|
|
import com.example.xiaoshiweixinback.domain.PatentUpdateRecord;
|
|
import com.example.xiaoshiweixinback.domain.PatentUpdateRecord;
|
|
import com.example.xiaoshiweixinback.domain.Product;
|
|
import com.example.xiaoshiweixinback.domain.Product;
|
|
import com.example.xiaoshiweixinback.domain.es.Patent;
|
|
import com.example.xiaoshiweixinback.domain.es.Patent;
|
|
|
|
+import com.example.xiaoshiweixinback.entity.dto.GetPatentByRecordDTO;
|
|
|
|
+import com.example.xiaoshiweixinback.entity.dto.esPicture.EsPatentVectorDTO;
|
|
import com.example.xiaoshiweixinback.entity.dto.patent.PatentColumnDTO;
|
|
import com.example.xiaoshiweixinback.entity.dto.patent.PatentColumnDTO;
|
|
import com.example.xiaoshiweixinback.entity.dto.patent.PatentDTO;
|
|
import com.example.xiaoshiweixinback.entity.dto.patent.PatentDTO;
|
|
import com.example.xiaoshiweixinback.entity.patent.QueryRequest;
|
|
import com.example.xiaoshiweixinback.entity.patent.QueryRequest;
|
|
import com.example.xiaoshiweixinback.entity.patent.StringRequest;
|
|
import com.example.xiaoshiweixinback.entity.patent.StringRequest;
|
|
import com.example.xiaoshiweixinback.mapper.MonitorRecordMapper;
|
|
import com.example.xiaoshiweixinback.mapper.MonitorRecordMapper;
|
|
|
|
+import com.example.xiaoshiweixinback.service.importPatent.EsDenseVectorService;
|
|
import com.example.xiaoshiweixinback.service.importPatent.EsPatentService;
|
|
import com.example.xiaoshiweixinback.service.importPatent.EsPatentService;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.scheduling.annotation.Async;
|
|
import org.springframework.scheduling.annotation.Async;
|
|
@@ -37,6 +41,8 @@ public class MonitorRecordService extends ServiceImpl<MonitorRecordMapper, Monit
|
|
private MonitorService monitorService;
|
|
private MonitorService monitorService;
|
|
@Autowired
|
|
@Autowired
|
|
private EsPatentService esPatentService;
|
|
private EsPatentService esPatentService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private EsDenseVectorService esDenseVectorService;
|
|
|
|
|
|
public Records getMonitorRecords(Integer monitorId) {
|
|
public Records getMonitorRecords(Integer monitorId) {
|
|
Monitor monitor = monitorService.getById(monitorId);
|
|
Monitor monitor = monitorService.getById(monitorId);
|
|
@@ -69,19 +75,18 @@ public class MonitorRecordService extends ServiceImpl<MonitorRecordMapper, Monit
|
|
Integer productId = product.getId();
|
|
Integer productId = product.getId();
|
|
MonitorRecord monitorRecord = this.getLastMonitorRecord(product.getId());
|
|
MonitorRecord monitorRecord = this.getLastMonitorRecord(product.getId());
|
|
Date startTime = new Date();
|
|
Date startTime = new Date();
|
|
- Date endTime = new Date();
|
|
|
|
|
|
+ Date endTime = null;
|
|
|
|
|
|
if (monitorRecord != null) {
|
|
if (monitorRecord != null) {
|
|
startTime = monitorRecord.getEndDate();
|
|
startTime = monitorRecord.getEndDate();
|
|
- }
|
|
|
|
- else {
|
|
|
|
- LambdaQueryWrapper<Monitor> queryWrapper =new LambdaQueryWrapper<>();
|
|
|
|
- queryWrapper.eq(Monitor::getProductId,product.getId());
|
|
|
|
- Monitor monitor= monitorService.getOne(queryWrapper,false);
|
|
|
|
- if(monitor==null){
|
|
|
|
|
|
+ } else {
|
|
|
|
+ LambdaQueryWrapper<Monitor> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
+ queryWrapper.eq(Monitor::getProductId, product.getId());
|
|
|
|
+ Monitor monitor = monitorService.getOne(queryWrapper, false);
|
|
|
|
+ if (monitor == null) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- startTime =monitor.getCreateTime();
|
|
|
|
|
|
+ startTime = monitor.getCreateTime();
|
|
}
|
|
}
|
|
|
|
|
|
String condition = product.getSearchCondition();
|
|
String condition = product.getSearchCondition();
|
|
@@ -96,9 +101,8 @@ public class MonitorRecordService extends ServiceImpl<MonitorRecordMapper, Monit
|
|
if (patent.getPublicDate() != null) {
|
|
if (patent.getPublicDate() != null) {
|
|
endTime = patent.getPublicDate();
|
|
endTime = patent.getPublicDate();
|
|
} else if (patent.getGrantDate() != null) {
|
|
} else if (patent.getGrantDate() != null) {
|
|
- endTime=patent.getGrantDate();
|
|
|
|
- }
|
|
|
|
- else {
|
|
|
|
|
|
+ endTime = patent.getGrantDate();
|
|
|
|
+ } else {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -109,8 +113,9 @@ public class MonitorRecordService extends ServiceImpl<MonitorRecordMapper, Monit
|
|
StringRequest stringRequest = new StringRequest();
|
|
StringRequest stringRequest = new StringRequest();
|
|
stringRequest.setSearchQuery(newCondition);
|
|
stringRequest.setSearchQuery(newCondition);
|
|
try {
|
|
try {
|
|
- if(endTime==null||startTime.compareTo(endTime)>=0)
|
|
|
|
- {continue;}
|
|
|
|
|
|
+ if (endTime == null || startTime.compareTo(endTime) >= 0) {
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
PatentDTO patentDTO = esPatentService.esSearch(stringRequest);
|
|
PatentDTO patentDTO = esPatentService.esSearch(stringRequest);
|
|
Long total = patentDTO.getTotal();
|
|
Long total = patentDTO.getTotal();
|
|
if (total != null && total > 0) {
|
|
if (total != null && total > 0) {
|
|
@@ -130,7 +135,32 @@ public class MonitorRecordService extends ServiceImpl<MonitorRecordMapper, Monit
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+ public Records getPatentByRecord(GetPatentByRecordDTO getPatentByRecordDTO) {
|
|
|
|
+ Integer recordId =getPatentByRecordDTO.getRecordId();
|
|
|
|
+ Long num =getPatentByRecordDTO.getPageNum();
|
|
|
|
+ Long size =getPatentByRecordDTO.getPageSize();
|
|
|
|
+ MonitorRecord monitorRecord = this.getById(recordId);
|
|
|
|
+ Date startTime = monitorRecord.getStartDate();
|
|
|
|
+ Date endTime = monitorRecord.getEndDate();
|
|
|
|
+ String searchCondition = monitorRecord.getSearchCondition();
|
|
|
|
+ searchCondition = searchCondition + " AND (PD=" +
|
|
|
|
+ FormatUtil.getTimeStringYYMMdd(startTime) + "~"
|
|
|
|
+ + FormatUtil.getTimeStringYYMMdd(endTime) + " OR " + "GD="
|
|
|
|
+ + FormatUtil.getTimeStringYYMMdd(startTime) + "~"
|
|
|
|
+ + FormatUtil.getTimeStringYYMMdd(endTime) + ")";
|
|
|
|
+ StringRequest stringRequest = new StringRequest();
|
|
|
|
+ stringRequest.setSearchQuery(searchCondition);
|
|
|
|
+ stringRequest.setSize(size);
|
|
|
|
+ stringRequest.setCurrent(num);
|
|
|
|
+ Records records =new Records();
|
|
|
|
+ try {
|
|
|
|
+ records = esPatentService.selectPatent(stringRequest);
|
|
|
|
+
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ throw new XiaoShiException("");
|
|
|
|
+ }
|
|
|
|
+ return records;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|