追溯查询代码备份

cert
anthonywj 2 years ago
parent b84099dc3a
commit c93c02e6f6

@ -15,6 +15,9 @@ public class TopicRabbitConfig {
public final static String trace = "topic.trace"; public final static String trace = "topic.trace";
public final static String delaytrace = "local.trace.delay"; public final static String delaytrace = "local.trace.delay";
public final static String TRACE_TOPIC_EXCHANGE = "trace.topic.exchange";
public final static String TRACE_DELAY_EXCHANGE = "local.trace.delay.exchang";
@Bean @Bean
public Queue traceQueue() { public Queue traceQueue() {
@ -36,14 +39,14 @@ public class TopicRabbitConfig {
@Bean @Bean
TopicExchange exchange() { TopicExchange exchange() {
return new TopicExchange("topicExchange"); return new TopicExchange(TRACE_TOPIC_EXCHANGE);
} }
@Bean @Bean
public Exchange traceDelayExchange() { public Exchange traceDelayExchange() {
Map<String, Object> args = new HashMap<>(1); Map<String, Object> args = new HashMap<>(1);
args.put("x-delayed-type", "topic"); args.put("x-delayed-type", "topic");
return new CustomExchange("local.trace.delay.exchange", "x-delayed-message", true, false, args); return new CustomExchange(TRACE_DELAY_EXCHANGE, "x-delayed-message", true, false, args);
} }
@Bean @Bean

@ -1,5 +1,6 @@
package com.glxp.api.controller.trace; package com.glxp.api.controller.trace;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -13,12 +14,15 @@ import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.sup.UserCompanyEntity; import com.glxp.api.entity.sup.UserCompanyEntity;
import com.glxp.api.entity.trace.*; import com.glxp.api.entity.trace.*;
import com.glxp.api.req.basic.FilterUdiRelRequest; import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.trace.TraceManuDetailRequest;
import com.glxp.api.req.trace.TraceManuOrderUploadRequest;
import com.glxp.api.req.trace.TraceOrderUploadRequest; import com.glxp.api.req.trace.TraceOrderUploadRequest;
import com.glxp.api.req.trace.TraceRecordRequest; import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.basic.BasicUdiRelResponse; import com.glxp.api.res.basic.BasicUdiRelResponse;
import com.glxp.api.res.trace.TraceSearchReponse; import com.glxp.api.res.trace.TraceSearchReponse;
import com.glxp.api.service.basic.BasicUdiRelService; import com.glxp.api.service.basic.BasicUdiRelService;
import com.glxp.api.service.sup.UserCompanyService; import com.glxp.api.service.sup.UserCompanyService;
import com.glxp.api.service.system.SystemParamConfigService;
import com.glxp.api.service.trace.*; import com.glxp.api.service.trace.*;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.udi.FilterUdiUtils; import com.glxp.api.util.udi.FilterUdiUtils;
@ -53,11 +57,19 @@ public class UdiTraceController extends BaseController {
@Resource @Resource
TraceOrderService traceOrderService; TraceOrderService traceOrderService;
@Resource @Resource
TraceManuOrderService traceManuOrderService;
@Resource
TraceManuCodeRelService traceManuCodeRelService;
@Resource
TraceRecordService traceRecordService; TraceRecordService traceRecordService;
@Resource @Resource
UdiTraceService udiTraceService; UdiTraceService udiTraceService;
@Resource @Resource
UserCompanyService userCompanyService; UserCompanyService userCompanyService;
@Resource
SystemParamConfigService systemParamConfigService;
@Resource
RabbitPushService rabbitPushService;
/** /**
@ -163,20 +175,17 @@ public class UdiTraceController extends BaseController {
public BaseResponse sceneTrace(TraceRecordRequest traceRecordRequest) { public BaseResponse sceneTrace(TraceRecordRequest traceRecordRequest) {
TraceSearchReponse traceSearchReponse = new TraceSearchReponse(); TraceSearchReponse traceSearchReponse = new TraceSearchReponse();
TraceRecordLogEntity traceRecordLogEntity = traceRecordService.getById(traceRecordRequest.getRecordCode()); TraceRecordLogEntity traceRecordLogEntity = null;
if (traceRecordLogEntity != null) {
List<TraceOrderEntity> traceOrderEntities = traceOrderService.findByProductIdFk(traceRecordLogEntity.getTraceProductIdFk());
traceSearchReponse.setTraceRecordLogEntity(traceRecordLogEntity);
traceSearchReponse.setTraceOrderEntities(traceOrderEntities);
return ResultVOUtils.success(traceSearchReponse);
}
TraceProductDetailEntity traceProductDetailEntity = null; TraceProductDetailEntity traceProductDetailEntity = null;
BasicUdiRelResponse basicUdiRelResponse = null; BasicUdiRelResponse basicUdiRelResponse = null;
UdiEntity udiEntity = null; UdiEntity udiEntity = null;
UserCompanyEntity userCompanyEntity = null; UserCompanyEntity userCompanyEntity = null;
if (traceRecordRequest.getTraceType() == Constant.UDI_TRACE) {
if (StrUtil.isNotEmpty(traceRecordRequest.getUdiCode())) {
traceRecordRequest.setTraceType(Constant.UDI_TRACE);
}
if (traceRecordRequest.getTraceType() == Constant.UDI_TRACE) {
//1.校验UDI码格式 //1.校验UDI码格式
udiEntity = FilterUdiUtils.getUdi(traceRecordRequest.getUdiCode()); udiEntity = FilterUdiUtils.getUdi(traceRecordRequest.getUdiCode());
if (udiEntity == null) { if (udiEntity == null) {
@ -197,23 +206,14 @@ public class UdiTraceController extends BaseController {
//4.生成查询记录 //4.生成查询记录
String userId = getUserId() + ""; String userId = getUserId() + "";
if (traceRecordLogEntity == null) traceRecordLogEntity = udiTraceService.createRecordLog(userId, traceRecordRequest.getFromType(), traceRecordRequest.getTraceType());
traceRecordLogEntity = udiTraceService.createRecordLog(userId, traceRecordRequest.getFromType(), traceRecordRequest.getTraceType());
//5.创建查询详情记录,若存在相同查询记录则直接获取 //5.创建查询详情记录,若存在相同查询记录则直接获取
if (traceRecordLogEntity.getTraceProductIdFk() != null) { traceProductDetailEntity = udiTraceService.createTracerProductByUdiCode(traceRecordRequest.getUdiCode(), 2, 1, basicUdiRelResponse, udiEntity);
traceProductDetailEntity = traceProductDetailService.getById(traceRecordLogEntity.getTraceProductIdFk()); traceRecordLogEntity.setTraceProductIdFk(traceProductDetailEntity.getId());
if (traceProductDetailEntity == null) { traceRecordService.updateById(traceRecordLogEntity);
traceProductDetailEntity = udiTraceService.createTracerProductByUdiCode(traceRecordRequest.getUdiCode(), 2, 1, basicUdiRelResponse, udiEntity);
traceRecordLogEntity.setTraceProductIdFk(traceProductDetailEntity.getId());
traceRecordService.updateById(traceRecordLogEntity);
}
} else {
traceProductDetailEntity = udiTraceService.createTracerProductByUdiCode(traceRecordRequest.getUdiCode(), 2, 1, basicUdiRelResponse, udiEntity);
}
udiTraceService.createCheckTraceTask(traceProductDetailEntity, userCompanyEntity.getId()); udiTraceService.createCheckTraceTask(traceProductDetailEntity, userCompanyEntity.getId());
} else { } else {
//1:校验参数是否正确 //1:校验参数是否正确
if (StrUtil.isEmpty(traceRecordRequest.getYlqxzcrbarmc())) { if (StrUtil.isEmpty(traceRecordRequest.getYlqxzcrbarmc())) {
@ -251,8 +251,8 @@ public class UdiTraceController extends BaseController {
traceProductDetailEntity = udiTraceService.createTracerProductByBatchNo(traceRecordRequest, 2, 2, basicUdiRelResponse); traceProductDetailEntity = udiTraceService.createTracerProductByBatchNo(traceRecordRequest, 2, 2, basicUdiRelResponse);
udiTraceService.createCheckTraceTask(traceProductDetailEntity, userCompanyEntity.getId()); udiTraceService.createCheckTraceTask(traceProductDetailEntity, userCompanyEntity.getId());
} }
traceSearchReponse.setTraceRecordLogEntity(traceRecordLogEntity); List<TraceOrderEntity> traceOrderEntities = traceOrderService.findByProductIdFk(traceRecordLogEntity.getTraceProductIdFk());
return ResultVOUtils.success(traceSearchReponse); return ResultVOUtils.success(traceOrderEntities);
} }
@ -269,11 +269,22 @@ public class UdiTraceController extends BaseController {
if (bindingResult.hasErrors()) { if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.getById(traceOrderUploadRequest.getTaskId());
if (taskNoticeEntity == null) {
return ResultVOUtils.error(500, "任务已过期,或任务不存在!");
}
TraceOrderEntity traceOrderEntity = new TraceOrderEntity(); TraceOrderEntity traceOrderEntity = new TraceOrderEntity();
BeanUtils.copyProperties(traceOrderUploadRequest, traceOrderEntity); BeanUtils.copyProperties(traceOrderUploadRequest, traceOrderEntity);
traceOrderEntity.setId(IdUtil.getSnowflakeNextId()); traceOrderEntity.setId(IdUtil.getSnowflakeNextId());
traceOrderEntity.setUpdateTime(new Date()); traceOrderEntity.setUpdateTime(new Date());
traceOrderService.save(traceOrderEntity); traceOrderService.save(traceOrderEntity);
//设置任务已完成
taskNoticeEntity.setStatus(3);
traceTaskNoticeService.updateById(taskNoticeEntity);
udiTraceService.pushDelayRemoveTask(taskNoticeEntity);
return ResultVOUtils.success("上传成功"); return ResultVOUtils.success("上传成功");
} }
@ -281,21 +292,42 @@ public class UdiTraceController extends BaseController {
/** /**
* *
* *
* @param traceOrderUploadRequest * @param traceManuOrderUploadRequest
* @param bindingResult * @param bindingResult
* @return * @return
*/ */
@AuthRuleAnnotation("udi/trace/manuOrder/upload") @AuthRuleAnnotation("udi/trace/manuOrder/upload")
@PostMapping("udi/trace/manuOrder/upload") @PostMapping("udi/trace/manuOrder/upload")
public BaseResponse uploadManuOrder(@RequestBody TraceOrderUploadRequest traceOrderUploadRequest, BindingResult bindingResult) { public BaseResponse uploadManuOrder(@RequestBody TraceManuOrderUploadRequest traceManuOrderUploadRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) { if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
TraceOrderEntity traceOrderEntity = new TraceOrderEntity();
BeanUtils.copyProperties(traceOrderUploadRequest, traceOrderEntity);
traceOrderEntity.setId(IdUtil.getSnowflakeNextId()); TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.getById(traceManuOrderUploadRequest.getTaskId());
traceOrderEntity.setUpdateTime(new Date()); if (taskNoticeEntity == null) {
traceOrderService.save(traceOrderEntity); return ResultVOUtils.error(500, "任务已过期,或任务不存在!");
}
TraceManuOrderEntity traceManuOrderEntity = new TraceManuOrderEntity();
BeanUtils.copyProperties(traceManuOrderUploadRequest, traceManuOrderEntity);
traceManuOrderEntity.setId(IdUtil.getSnowflakeNextId());
traceManuOrderService.save(traceManuOrderEntity);
List<TraceManuDetailRequest> traceManuDetailRequests = traceManuOrderUploadRequest.getDetails();
if (CollUtil.isNotEmpty(traceManuDetailRequests)) {
for (TraceManuDetailRequest traceManuDetailRequest : traceManuDetailRequests) {
TraceManuCodeRelEntity traceManuCodeRelEntity = new TraceManuCodeRelEntity();
BeanUtils.copyProperties(traceManuDetailRequest, traceManuCodeRelEntity);
traceManuCodeRelEntity.setId(IdUtil.getSnowflakeNextId());
traceManuCodeRelEntity.setManuOrderIdFk(traceManuOrderEntity.getId());
traceManuOrderService.save(traceManuOrderEntity);
}
}
//设置任务已完成
taskNoticeEntity.setStatus(3);
traceTaskNoticeService.updateById(taskNoticeEntity);
udiTraceService.pushDelayRemoveTask(taskNoticeEntity);
return ResultVOUtils.success("上传成功"); return ResultVOUtils.success("上传成功");
} }

@ -1,6 +1,9 @@
package com.glxp.api.entity.trace; package com.glxp.api.entity.trace;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date; import java.util.Date;
@ -8,6 +11,7 @@ import java.util.Date;
* *
*/ */
@Data @Data
@Builder
public class MqTaskDelayMessage { public class MqTaskDelayMessage {
private Date createTime; private Date createTime;

@ -9,8 +9,8 @@ import java.util.List;
public class TraceManuOrderUploadRequest { public class TraceManuOrderUploadRequest {
@NotNull(message = "追溯记录号") @NotNull(message = "任务ID")
private String recordCode; private Long taskId;
/** /**

@ -6,6 +6,8 @@ import lombok.Data;
public class TraceOrderUploadRequest { public class TraceOrderUploadRequest {
private Long taskId;
/** /**
* *
*/ */

@ -27,6 +27,9 @@ public interface SystemParamConfigService extends IService<SystemParamConfigEnti
String selectValueByParamKey(String key); String selectValueByParamKey(String key);
Integer selectIntValueByParamKey(String key);
boolean updateById(SysParamConfigSaveRequest sysParamConfigSaveRequest); boolean updateById(SysParamConfigSaveRequest sysParamConfigSaveRequest);
boolean updateParentId(SysParamConfigSaveRequest sysParamConfigSaveRequest); boolean updateParentId(SysParamConfigSaveRequest sysParamConfigSaveRequest);

@ -19,7 +19,7 @@ import java.util.Map;
@Service @Service
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public class SystemParamConfigServiceImpl extends ServiceImpl<SystemParamConfigDao,SystemParamConfigEntity> implements SystemParamConfigService { public class SystemParamConfigServiceImpl extends ServiceImpl<SystemParamConfigDao, SystemParamConfigEntity> implements SystemParamConfigService {
@Resource @Resource
SystemParamConfigDao systemParamConfigDao; SystemParamConfigDao systemParamConfigDao;
@ -69,6 +69,16 @@ public class SystemParamConfigServiceImpl extends ServiceImpl<SystemParamConfigD
return null; return null;
} }
@Override
public Integer selectIntValueByParamKey(String key) {
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigDao.selectByParamKey(key);
if (systemParamConfigEntity != null) {
String value = systemParamConfigEntity.getParamValue();
return Integer.parseInt(value);
}
return 0;
}
@Override @Override
public boolean updateById(SysParamConfigSaveRequest sysParamConfigSaveRequest) { public boolean updateById(SysParamConfigSaveRequest sysParamConfigSaveRequest) {
sysParamConfigSaveRequest.setUpdateTime(new Date()); sysParamConfigSaveRequest.setUpdateTime(new Date());
@ -88,7 +98,6 @@ public class SystemParamConfigServiceImpl extends ServiceImpl<SystemParamConfigD
} }
@Override @Override
public Map<String, SystemParamConfigEntity> findBasicAll() { public Map<String, SystemParamConfigEntity> findBasicAll() {

@ -4,9 +4,11 @@ import cn.hutool.core.lang.UUID;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.config.rabbit.TopicRabbitConfig; import com.glxp.api.config.rabbit.TopicRabbitConfig;
import com.glxp.api.entity.trace.MqTaskDelayMessage;
import com.glxp.api.entity.trace.MqTraceMessage; import com.glxp.api.entity.trace.MqTraceMessage;
import com.glxp.api.util.DateUtil; import com.glxp.api.util.DateUtil;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.amqp.core.MessageProperties;
import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@ -23,18 +25,30 @@ public class RabbitPushService {
@Resource @Resource
private final RabbitTemplate rabbitTemplate; private final RabbitTemplate rabbitTemplate;
public BaseResponse send(MqTraceMessage mqTraceMessage) { public BaseResponse send(MqTraceMessage mqTraceMessage) {
rabbitTemplate.convertAndSend("topicExchange", TopicRabbitConfig.trace, mqTraceMessage); rabbitTemplate.convertAndSend(TopicRabbitConfig.TRACE_TOPIC_EXCHANGE, TopicRabbitConfig.trace, mqTraceMessage);
return ResultVOUtils.success("发送成功");
}
public BaseResponse sendDeleyTask(MqTaskDelayMessage mqTaskDelayMessage, Integer delayTime) {
rabbitTemplate.convertAndSend(TopicRabbitConfig.TRACE_DELAY_EXCHANGE, TopicRabbitConfig.delaytrace, mqTaskDelayMessage, message -> {
MessageProperties messageProperties = message.getMessageProperties();
messageProperties.setDelay(delayTime * 60);
return message;
});
return ResultVOUtils.success("发送成功"); return ResultVOUtils.success("发送成功");
} }
public BaseResponse sendCommon(String key) { public BaseResponse sendCommon(String key) {
String messageId = String.valueOf(UUID.randomUUID()); String messageId = String.valueOf(UUID.randomUUID());
Map<String, Object> messageMap = new HashMap<>(); Map<String, Object> messageMap = new HashMap<>();
messageMap.put("messageId", messageId); messageMap.put("messageId", messageId);
messageMap.put("messageData", key); messageMap.put("messageData", key);
messageMap.put("createTime", DateUtil.formatDate(new Date())); messageMap.put("createTime", DateUtil.formatDate(new Date()));
rabbitTemplate.convertAndSend("topicExchange", TopicRabbitConfig.common, messageMap); rabbitTemplate.convertAndSend(TopicRabbitConfig.TRACE_TOPIC_EXCHANGE, TopicRabbitConfig.common, messageMap);
return ResultVOUtils.success("发送成功"); return ResultVOUtils.success("发送成功");
} }
} }

@ -13,6 +13,7 @@ import com.glxp.api.res.basic.BasicUdiRelResponse;
import com.glxp.api.service.basic.BasicUdiProductService; import com.glxp.api.service.basic.BasicUdiProductService;
import com.glxp.api.service.basic.BasicUdiRelService; import com.glxp.api.service.basic.BasicUdiRelService;
import com.glxp.api.service.sup.UserCompanyService; import com.glxp.api.service.sup.UserCompanyService;
import com.glxp.api.service.system.SystemParamConfigService;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -44,6 +45,8 @@ public class UdiTraceService {
RabbitPushService rabbitPushService; RabbitPushService rabbitPushService;
@Resource @Resource
TraceManuOrderService traceManuOrderService; TraceManuOrderService traceManuOrderService;
@Resource
SystemParamConfigService systemParamConfigService;
//创建查询日志 //创建查询日志
public TraceRecordLogEntity createRecordLog(String userId, Integer fromType, Integer traceType) { public TraceRecordLogEntity createRecordLog(String userId, Integer fromType, Integer traceType) {
@ -126,7 +129,8 @@ public class UdiTraceService {
//生产订单关联关系 //生产订单关联关系
TraceTaskNoticeEntity manuTaskNotity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), companyId); TraceTaskNoticeEntity manuTaskNotity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), companyId);
if (manuTaskNotity == null) { if (manuTaskNotity == null) {
createTraceNotice(1, traceProductDetailEntity, companyId); manuTaskNotity = createTraceNotice(1, traceProductDetailEntity, companyId);
pushDelayExpireTask(manuTaskNotity);
pushMq(traceProductDetailEntity, companyId); pushMq(traceProductDetailEntity, companyId);
} else if (manuTaskNotity.getStatus() == 4) { } else if (manuTaskNotity.getStatus() == 4) {
//任务超时未处理,重新推送消息 //任务超时未处理,重新推送消息
@ -143,13 +147,13 @@ public class UdiTraceService {
toCorpCreditNums.add(traceOrderEntity.getToCorpCreditNum()); toCorpCreditNums.add(traceOrderEntity.getToCorpCreditNum());
} }
} }
List<String> certNums = toCorpCreditNums.stream().distinct().collect(Collectors.toList()); List<String> certNums = toCorpCreditNums.stream().distinct().collect(Collectors.toList());
for (String certNum : certNums) { for (String certNum : certNums) {
UserCompanyEntity userCompanyEntity = userCompanyService.getOne(new QueryWrapper<UserCompanyEntity>().eq("creditNum", certNum)); UserCompanyEntity userCompanyEntity = userCompanyService.getOne(new QueryWrapper<UserCompanyEntity>().eq("creditNum", certNum));
TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), userCompanyEntity.getId()); TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), userCompanyEntity.getId());
if (taskNoticeEntity == null) { if (taskNoticeEntity == null) {
createTraceNotice(1, traceProductDetailEntity, companyId); taskNoticeEntity = createTraceNotice(1, traceProductDetailEntity, companyId);
pushDelayExpireTask(taskNoticeEntity);
pushMq(traceProductDetailEntity, companyId); pushMq(traceProductDetailEntity, companyId);
} else if (taskNoticeEntity.getStatus() == 4) { } else if (taskNoticeEntity.getStatus() == 4) {
//任务超时未处理,重新推送消息 //任务超时未处理,重新推送消息
@ -185,7 +189,8 @@ public class UdiTraceService {
UserCompanyEntity userCompanyEntity = userCompanyService.getOne(new QueryWrapper<UserCompanyEntity>().eq("creditNum", certNum)); UserCompanyEntity userCompanyEntity = userCompanyService.getOne(new QueryWrapper<UserCompanyEntity>().eq("creditNum", certNum));
TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), userCompanyEntity.getId()); TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), userCompanyEntity.getId());
if (taskNoticeEntity == null) { if (taskNoticeEntity == null) {
createTraceNotice(1, traceProductDetailEntity, companyId); taskNoticeEntity = createTraceNotice(1, traceProductDetailEntity, companyId);
pushDelayExpireTask(taskNoticeEntity);
pushMq(traceProductDetailEntity, companyId); pushMq(traceProductDetailEntity, companyId);
} else if (taskNoticeEntity.getStatus() == 4) { } else if (taskNoticeEntity.getStatus() == 4) {
//任务超时未处理,重新推送消息 //任务超时未处理,重新推送消息
@ -236,7 +241,28 @@ public class UdiTraceService {
mqTraceMessage.setCerditNo(traceProductDetailEntity.getCreditNum()); mqTraceMessage.setCerditNo(traceProductDetailEntity.getCreditNum());
mqTraceMessage.setTaskId(traceProductDetailEntity.getId()); mqTraceMessage.setTaskId(traceProductDetailEntity.getId());
rabbitPushService.send(mqTraceMessage); rabbitPushService.send(mqTraceMessage);
}
public void pushDelayRemoveTask(TraceTaskNoticeEntity taskNoticeEntity) {
//设置任务自动过期
Integer taskExitTime = systemParamConfigService.selectIntValueByParamKey("task_exit");
MqTaskDelayMessage mqTaskDelayMessage = MqTaskDelayMessage
.builder().taskId(taskNoticeEntity.getId())
.createTime(new Date())
.taskStatus(taskNoticeEntity.getStatus()).build();
rabbitPushService.sendDeleyTask(mqTaskDelayMessage, taskExitTime);
}
public void pushDelayExpireTask(TraceTaskNoticeEntity taskNoticeEntity) {
//设置任务自动过期
Integer taskExitTime = systemParamConfigService.selectIntValueByParamKey("task_expire");
MqTaskDelayMessage mqTaskDelayMessage = MqTaskDelayMessage
.builder().taskId(taskNoticeEntity.getId())
.createTime(new Date())
.taskStatus(taskNoticeEntity.getStatus()).build();
rabbitPushService.sendDeleyTask(mqTaskDelayMessage, taskExitTime);
} }

@ -4,9 +4,9 @@ server:
spring: spring:
datasource: datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver driver-class-name: com.p6spy.engine.spy.P6SpyDriver
jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_cpt?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true jdbc-url: jdbc:p6spy:mysql://192.168.0.66:3364/udi_cpt?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root username: root
password: 123456 password: Glxp@6066
hikari: hikari:
connection-timeout: 60000 connection-timeout: 60000
maximum-pool-size: 20 maximum-pool-size: 20

Loading…
Cancel
Save