提交推送任务

This commit is contained in:
Guava
2023-06-26 10:33:16 +08:00
parent 0cb53e3c8a
commit d07e3807ee
5 changed files with 20 additions and 26 deletions

View File

@@ -17,8 +17,8 @@ public interface ICasesRecommendPushRecordService {
/**
* 修改
* @param casesRecommendPushRecord
* @param pushStatus
* @return
*/
boolean update(CasesRecommendPushRecord casesRecommendPushRecord);
boolean updatePushRecordStatus(String id,Integer pushStatus);
}

View File

@@ -20,6 +20,6 @@ public interface ICasesRecommendService {
* @param casesRecommend
* @return
*/
boolean update(CasesRecommend casesRecommend);
public boolean updateProcessStatus(String id, Integer pushProgress);
}

View File

@@ -1,12 +1,14 @@
package com.xboe.module.cases.service.impl;
import com.xboe.core.orm.FieldFilters;
import com.xboe.core.orm.UpdateBuilder;
import com.xboe.module.cases.dao.CasesRecommendPushRecordDao;
import com.xboe.module.cases.entity.CasesRecommendPushRecord;
import com.xboe.module.cases.service.ICasesRecommendPushRecordService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
@@ -22,7 +24,9 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
@Override
public boolean update(CasesRecommendPushRecord casesRecommendPushRecord) {
return casesRecommendPushRecordDao.getGenericDao().update(casesRecommendPushRecord) != null;
public boolean updatePushRecordStatus(String id, Integer pushStatus) {
return casesRecommendPushRecordDao.updateMultiFieldById(id, UpdateBuilder.create("pushStatus", pushStatus), UpdateBuilder.create("pushTime", new Date())) > 0;
}
}

View File

@@ -1,6 +1,7 @@
package com.xboe.module.cases.service.impl;
import com.xboe.core.orm.FieldFilters;
import com.xboe.core.orm.UpdateBuilder;
import com.xboe.module.cases.dao.CasesRecommendDao;
import com.xboe.module.cases.entity.CasesRecommend;
import com.xboe.module.cases.service.ICasesRecommendService;
@@ -24,7 +25,7 @@ public class CasesRecommendServiceImpl implements ICasesRecommendService {
@Override
public boolean update(CasesRecommend casesRecommend) {
return casesRecommendDao.getGenericDao().update(casesRecommend) != null;
public boolean updateProcessStatus(String id, Integer pushProgress) {
return casesRecommendDao.updateMultiFieldById(id, UpdateBuilder.create("pushProgress", pushProgress)) > 0;
}
}

View File

@@ -15,7 +15,6 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@@ -58,42 +57,32 @@ public class CasesRecommendPushSchedule {
List<CasesRecommendPushRecord> casesRecommendPushRecords = casesRecommendPushRecordService.queryPushRecordByPushStatus(pushStatusList);
if (CollectionUtils.isEmpty(casesRecommendPushRecords)) {
//修改为推送完成 --- 无数据 无需推送
CasesRecommend tempUpdate = new CasesRecommend();
tempUpdate.setId(casesRecommend.getId());
tempUpdate.setPushProgress(CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
casesRecommendService.update(tempUpdate);
casesRecommendService.updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
continue;
}
//修改为推送中
CasesRecommend tempUpdate = new CasesRecommend();
tempUpdate.setId(casesRecommend.getId());
tempUpdate.setPushProgress(CasesPushStatusEnum.PUSH_ING.getStatus());
casesRecommendService.update(tempUpdate);
casesRecommendService.updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_ING.getStatus());
for (CasesRecommendPushRecord casesRecommendPushRecord : casesRecommendPushRecords) {
CasesRecommendPushRecord pushRecordTemp = new CasesRecommendPushRecord();
pushRecordTemp.setId(casesRecommendPushRecord.getId());
pushRecordTemp.setPushTime(new Date());
Integer pushStatus;
try {
eventDataSender.send("案例推荐", "recommendCases", "案例推荐【" + casesRecommendPushRecord.getCaseTitle() + "",
casesRecommendPushRecord.getCaseId(), "99", casesRecommendPushRecord.getCaseTitle(),
casesRecommendPushRecord.getSysCreateAid(), casesRecommendPushRecord.getSysCreateBy(), "");
pushRecordTemp.setPushStatus(CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
pushStatus = CasesPushStatusEnum.PUSH_SUCCESS.getStatus();
} catch (Exception e) {
log.error("推荐案例失败", e);
pushRecordTemp.setPushStatus(CasesPushStatusEnum.PUSH_FAIL.getStatus());
pushStatus = CasesPushStatusEnum.PUSH_FAIL.getStatus();
}
casesRecommendPushRecordService.update(pushRecordTemp);
casesRecommendPushRecordService.updatePushRecordStatus(casesRecommendPushRecord.getId(), pushStatus);
}
//修改为推送完成 --- 无数据 无需推送
CasesRecommend finishTemp = new CasesRecommend();
finishTemp.setId(casesRecommend.getId());
finishTemp.setPushProgress(CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
casesRecommendService.update(finishTemp);
casesRecommendService.updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
log.info("启动案例推荐定时任务----结束");
}
}