|
@@ -663,24 +663,56 @@ public class PatentNewServiceImpl extends BaseMybatisDao<PatentNewMapper> imple
|
|
|
* 超过时间重置到第二年
|
|
* 超过时间重置到第二年
|
|
|
*/
|
|
*/
|
|
|
@Override
|
|
@Override
|
|
|
- public void pushResetPatentNew(List<String> list) {
|
|
|
|
|
|
|
+ public void pushResetPatentNew(List<String> list) throws InterruptedException {
|
|
|
|
|
+ List<PatentNewLog> logs = new ArrayList<>();
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
for (String ids : list) {
|
|
for (String ids : list) {
|
|
|
PatentNew pn=patentNewMapper.selectByPrimaryKey(Integer.valueOf(ids));
|
|
PatentNew pn=patentNewMapper.selectByPrimaryKey(Integer.valueOf(ids));
|
|
|
int year=pn.getYears()+1;
|
|
int year=pn.getYears()+1;
|
|
|
PatentPaymentDetails ppd=patentPaymentDetailsMapper.selectByPidAndYear(pn.getId(),year);
|
|
PatentPaymentDetails ppd=patentPaymentDetailsMapper.selectByPidAndYear(pn.getId(),year);
|
|
|
|
|
+ //未找到下一年则计算看是否存在
|
|
|
if (ppd==null) {
|
|
if (ppd==null) {
|
|
|
sumYears(pn);
|
|
sumYears(pn);
|
|
|
ppd=patentPaymentDetailsMapper.selectByPidAndYear(pn.getId(),year);
|
|
ppd=patentPaymentDetailsMapper.selectByPidAndYear(pn.getId(),year);
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
PatentNew n=new PatentNew();
|
|
PatentNew n=new PatentNew();
|
|
|
n.setId(pn.getId());
|
|
n.setId(pn.getId());
|
|
|
n.setStatus(0);
|
|
n.setStatus(0);
|
|
|
n.setSalesmanRemind(0);
|
|
n.setSalesmanRemind(0);
|
|
|
- n.setYears(ppd.getYears());
|
|
|
|
|
- n.setEndDate(ppd.getEndDate());
|
|
|
|
|
- n.setPatentAmount(sumAmout(pn.getType(),pn.getTid(),pn.getYears()));
|
|
|
|
|
|
|
+ //还是未找到,判断为不存在一下年,判断提醒已完成
|
|
|
|
|
+ if(ppd==null){
|
|
|
|
|
+ n.setStatus(6);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ n.setYears(ppd.getYears());
|
|
|
|
|
+ n.setEndDate(ppd.getEndDate());
|
|
|
|
|
+ n.setPatentAmount(sumAmout(pn.getType(),pn.getTid(),pn.getYears()));
|
|
|
|
|
+ PatentNewLog log=new PatentNewLog();
|
|
|
|
|
+ log.setContent("超过时间重置状态并计算下一年");
|
|
|
|
|
+ log.setCreateTime(new Date());
|
|
|
|
|
+ log.setPid(Integer.valueOf(ids));
|
|
|
|
|
+ logs.add(log);
|
|
|
|
|
+ }
|
|
|
patentNewMapper.updateByPrimaryKeySelective(n);
|
|
patentNewMapper.updateByPrimaryKeySelective(n);
|
|
|
}
|
|
}
|
|
|
|
|
+ pushPatentLog(logs);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private void pushPatentLog(List<PatentNewLog> logList) throws InterruptedException {
|
|
|
|
|
+ if (!logList.isEmpty()) {
|
|
|
|
|
+ List<PatentNewLog> logList2 = new ArrayList<>();
|
|
|
|
|
+ for (int i = 0; i < logList.size(); i++) {
|
|
|
|
|
+ logList2.add(logList.get(i));
|
|
|
|
|
+ if (50 == logList2.size() || i == logList.size() - 1) {
|
|
|
|
|
+ if (logList2.size() > 0) insertLogBatch(logList2);
|
|
|
|
|
+ Thread.sleep(2000);
|
|
|
|
|
+ logList2.clear();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|