REQ-3581: 返回幂等信息
This commit is contained in:
parent
19c3696f5d
commit
421bc0cbc4
@ -197,30 +197,25 @@ public class EssService {
|
|||||||
|
|
||||||
@BizTransactional
|
@BizTransactional
|
||||||
public void downloadContractPDF(EssContract contract, boolean retryDownload) {
|
public void downloadContractPDF(EssContract contract, boolean retryDownload) {
|
||||||
EssContract reload = essContractDao.findForUpdateOrNull(contract.getEssContractId());
|
if (StringUtils.isNotBlank(contract.getOssFileKey()) && !retryDownload) {
|
||||||
if (reload == null) {
|
log.info("合同已下载PDF, contract={}", contract);
|
||||||
log.warn("合同不存在, essContractId={}", contract.getEssContractId());
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(reload.getOssFileKey()) && !retryDownload) {
|
if (!shouldDownloadContractPDF(contract)) {
|
||||||
log.info("合同已下载PDF, contract={}", reload);
|
log.info("合同不需要下载PDF, contract={}", contract);
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (!shouldDownloadContractPDF(reload)) {
|
|
||||||
log.info("合同不需要下载PDF, contract={}", reload);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
String pdfUrl = getContractPDFUrlFromEss(reload);
|
String pdfUrl = getContractPDFUrlFromEss(contract);
|
||||||
String fileName = String.format("%s.pdf", reload.getContractName());
|
String fileName = String.format("%s.pdf", contract.getContractName());
|
||||||
String fileKey = ossService.uploadToOss(pdfUrl, fileName);
|
String fileKey = ossService.uploadToOss(pdfUrl, fileName);
|
||||||
essContractDao.setOssFileKey(reload, fileKey);
|
essContractDao.setOssFileKey(contract, fileKey);
|
||||||
essLogDao.log("uploadContractToOss", reload.getEssContractId(),
|
essLogDao.log("uploadContractToOss", contract.getEssContractId(),
|
||||||
"ossFileKey", fileKey, "forceDownload", retryDownload);
|
"ossFileKey", fileKey, "forceDownload", retryDownload);
|
||||||
log.info("上传合同到OSS成功, essContractId={}", reload.getEssContractId());
|
log.info("上传合同到OSS成功, essContractId={}", contract.getEssContractId());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.warn("上传合同到OSS失败", e);
|
log.warn("上传合同到OSS失败", e);
|
||||||
essLogDao.log(e, "uploadContractToOss", reload.getEssContractId());
|
essLogDao.log(e, "uploadContractToOss", contract.getEssContractId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,38 +0,0 @@
|
|||||||
package cn.axzo.nanopart.ess.server.mq;
|
|
||||||
|
|
||||||
import cn.axzo.framework.rocketmq.BaseListener;
|
|
||||||
import cn.axzo.framework.rocketmq.EventConsumer;
|
|
||||||
import com.alibaba.fastjson.JSON;
|
|
||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.apache.rocketmq.common.message.MessageExt;
|
|
||||||
import org.apache.rocketmq.spring.annotation.ConsumeMode;
|
|
||||||
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
|
|
||||||
import org.apache.rocketmq.spring.core.RocketMQListener;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author yanglin
|
|
||||||
*/
|
|
||||||
@Slf4j
|
|
||||||
@Component
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
@RocketMQMessageListener(
|
|
||||||
maxReconsumeTimes = 3,
|
|
||||||
consumeMode = ConsumeMode.ORDERLY,
|
|
||||||
nameServer = "${rocketmq.name-server}",
|
|
||||||
topic = "topic_nanopart_${spring.profiles.active}",
|
|
||||||
consumerGroup = "ess_download_contract_pdf_${spring.application.name}_${spring.profiles.active}"
|
|
||||||
)
|
|
||||||
public class NanopartEssListener extends BaseListener
|
|
||||||
implements RocketMQListener<MessageExt> {
|
|
||||||
|
|
||||||
private final EventConsumer eventConsumer;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onMessage(MessageExt message) {
|
|
||||||
log.info("receive mq message: {}", JSON.toJSONString(message));
|
|
||||||
super.onEvent(message, eventConsumer);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Loading…
Reference in New Issue
Block a user