bug修改

cert
anthonywj 2 years ago
parent 86d333fa4e
commit f585234d5d

@ -2,6 +2,7 @@ package com.glxp.api.controller.trace;
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.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
@ -9,7 +10,9 @@ 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.controller.BaseController; import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.UdiEntity; import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.sup.UserCompanyEntity;
import com.glxp.api.entity.trace.TraceOrderEntity; import com.glxp.api.entity.trace.TraceOrderEntity;
import com.glxp.api.entity.trace.TraceProductDetailEntity;
import com.glxp.api.entity.trace.TraceTaskNoticeEntity; import com.glxp.api.entity.trace.TraceTaskNoticeEntity;
import com.glxp.api.req.trace.TraceOrderDetailRequest; import com.glxp.api.req.trace.TraceOrderDetailRequest;
import com.glxp.api.req.trace.TraceOrderRequest; import com.glxp.api.req.trace.TraceOrderRequest;
@ -18,8 +21,11 @@ import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.trace.TraceOrderResponse; import com.glxp.api.res.trace.TraceOrderResponse;
import com.glxp.api.res.trace.TraceRecordResponse; import com.glxp.api.res.trace.TraceRecordResponse;
import com.glxp.api.service.sup.UserCompanyService;
import com.glxp.api.service.trace.TraceOrderService; import com.glxp.api.service.trace.TraceOrderService;
import com.glxp.api.service.trace.TraceProductDetailService;
import com.glxp.api.service.trace.TraceTaskNoticeService; import com.glxp.api.service.trace.TraceTaskNoticeService;
import com.glxp.api.service.trace.UdiTraceService;
import com.glxp.api.util.udi.FilterUdiUtils; import com.glxp.api.util.udi.FilterUdiUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -80,6 +86,12 @@ public class TraceOrderController extends BaseController {
@Resource @Resource
TraceTaskNoticeService traceTaskNoticeService; TraceTaskNoticeService traceTaskNoticeService;
@Resource
UserCompanyService userCompanyService;
@Resource
UdiTraceService udiTraceService;
@Resource
TraceProductDetailService traceProductDetailService;
//客户端单据信息上传接口 //客户端单据信息上传接口
@ApiOperation(value = "客户端单据信息上传接口", response = BaseResponse.class) @ApiOperation(value = "客户端单据信息上传接口", response = BaseResponse.class)
@ -100,7 +112,26 @@ public class TraceOrderController extends BaseController {
taskNoticeEntity.setStatus(3); taskNoticeEntity.setStatus(3);
taskNoticeEntity.setUpdateTime(new Date()); taskNoticeEntity.setUpdateTime(new Date());
traceTaskNoticeService.updateById(taskNoticeEntity); traceTaskNoticeService.updateById(taskNoticeEntity);
System.out.println("成功");
// 推送下一家企业
UserCompanyEntity userCompanyEntity = userCompanyService.getById(traceOrderEntity.getCompanyIdFk());
if (StrUtil.isNotEmpty(traceOrderEntity.getToCorpCreditNum()) &&
!traceOrderEntity.getToCorpCreditNum().equals(userCompanyEntity.getCreditNum())) {
UserCompanyEntity toUserCompanyEntity = userCompanyService.getOne(new QueryWrapper<UserCompanyEntity>().eq("creditNum", traceOrderEntity.getToCorpCreditNum()), false);
TraceTaskNoticeEntity nextNotity = traceTaskNoticeService.findTask(2, traceOrderEntity.getTraceProductIdFk(), toUserCompanyEntity.getId());
if (nextNotity == null) {
TraceProductDetailEntity traceProductDetailEntity = traceProductDetailService.getById(traceOrderEntity.getTraceProductIdFk());
nextNotity = udiTraceService.createTraceNotice(2, traceProductDetailEntity, toUserCompanyEntity.getId());
udiTraceService.pushDelayExpireTask(nextNotity);
udiTraceService.pushMq(nextNotity, toUserCompanyEntity.getId());
} else if (nextNotity.getStatus() == 4) {
//任务超时未处理,重新推送消息
udiTraceService.pushMq(nextNotity, toUserCompanyEntity.getId());
}
}
return ResultVOUtils.success("成功"); return ResultVOUtils.success("成功");
} }

@ -13,9 +13,11 @@ import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.trace.TraceManuOrderEntity; import com.glxp.api.entity.trace.TraceManuOrderEntity;
import com.glxp.api.entity.trace.TraceOrderEntity; import com.glxp.api.entity.trace.TraceOrderEntity;
import com.glxp.api.entity.trace.TraceRecordLogEntity; import com.glxp.api.entity.trace.TraceRecordLogEntity;
import com.glxp.api.req.trace.TraceManuOrderRequest;
import com.glxp.api.req.trace.TraceOrderDetailRequest; import com.glxp.api.req.trace.TraceOrderDetailRequest;
import com.glxp.api.req.trace.TraceRecordRequest; import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.trace.TraceManuOrderResponse;
import com.glxp.api.res.trace.TraceOrderResponse; import com.glxp.api.res.trace.TraceOrderResponse;
import com.glxp.api.res.trace.TraceRecordResponse; import com.glxp.api.res.trace.TraceRecordResponse;
import com.glxp.api.res.trace.TraceSearchReponse; import com.glxp.api.res.trace.TraceSearchReponse;
@ -78,7 +80,10 @@ public class TraceRecordController extends BaseController {
TraceOrderDetailRequest traceOrderDetailRequest = new TraceOrderDetailRequest(); TraceOrderDetailRequest traceOrderDetailRequest = new TraceOrderDetailRequest();
traceOrderDetailRequest.setTraceProductIdFk(traceRecordLogEntity.getTraceProductIdFk()); traceOrderDetailRequest.setTraceProductIdFk(traceRecordLogEntity.getTraceProductIdFk());
List<TraceOrderResponse> traceOrderEntities = traceOrderService.filterJoin(traceOrderDetailRequest); List<TraceOrderResponse> traceOrderEntities = traceOrderService.filterJoin(traceOrderDetailRequest);
List<TraceManuOrderEntity> traceManuOrderEntities = traceManuOrderService.list(new QueryWrapper<TraceManuOrderEntity>().eq("traceProductIdFk", traceRecordLogEntity.getTraceProductIdFk()));
TraceManuOrderRequest traceManuOrderRequest = new TraceManuOrderRequest();
traceManuOrderRequest.setTraceProductIdFk(traceRecordLogEntity.getTraceProductIdFk());
List<TraceManuOrderResponse> traceManuOrderEntities = traceManuOrderService.filterTraces(traceManuOrderRequest);
TraceSearchReponse traceSearchReponse = new TraceSearchReponse(); TraceSearchReponse traceSearchReponse = new TraceSearchReponse();
traceSearchReponse.setTraceOrderEntities(traceOrderEntities); traceSearchReponse.setTraceOrderEntities(traceOrderEntities);
traceSearchReponse.setTraceManuOrderEntities(traceManuOrderEntities); traceSearchReponse.setTraceManuOrderEntities(traceManuOrderEntities);

@ -102,4 +102,6 @@ public class TraceManuOrderRequest extends ListPageRequest {
*/ */
@ApiModelProperty(value = "所属企业") @ApiModelProperty(value = "所属企业")
private String companyName; private String companyName;
private Long traceProductIdFk;
} }

@ -130,6 +130,6 @@ public class TraceOrderUploadRequest {
*/ */
@ApiModelProperty(value = "查询记录号外键") @ApiModelProperty(value = "查询记录号外键")
private String recordCode; private String recordCode;
@ApiModelProperty(value = "患者信息")
private String toUserInfo;
} }

@ -129,4 +129,6 @@ public class TraceManuOrderResponse {
*/ */
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String remark;
private Long traceProductIdFk;
} }

@ -1,5 +1,6 @@
package com.glxp.api.res.trace; package com.glxp.api.res.trace;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -170,4 +171,10 @@ public class TraceOrderResponse {
private String zczbhhzbapzbh; private String zczbhhzbapzbh;
@ApiModelProperty(value = "查询记录号") @ApiModelProperty(value = "查询记录号")
private String recordCode; private String recordCode;
public String getToCorp() {
if (StrUtil.isEmpty(toCorp))
return toUserInfo;
return toCorp;
}
} }

@ -18,6 +18,6 @@ public class TraceSearchReponse {
@ApiModelProperty(value = "追溯查询出入库单结果") @ApiModelProperty(value = "追溯查询出入库单结果")
List<TraceOrderResponse> traceOrderEntities; List<TraceOrderResponse> traceOrderEntities;
@ApiModelProperty(value = "追溯查询生产订单结果") @ApiModelProperty(value = "追溯查询生产订单结果")
List<TraceManuOrderEntity> traceManuOrderEntities; List<TraceManuOrderResponse> traceManuOrderEntities;
} }

@ -39,7 +39,9 @@ public class RabbitPushService {
Channel channel = rabbitTemplate.getConnectionFactory().createConnection().createChannel(true); Channel channel = rabbitTemplate.getConnectionFactory().createConnection().createChannel(true);
String queueName = "fanout_" + mqTraceMessage.getCompanyId() + ""; String queueName = "fanout_" + mqTraceMessage.getCompanyId() + "";
rabbitQueueService.createQueue(queueName); rabbitQueueService.createQueue(queueName);
rabbitTemplate.convertAndSend(FANOUT_EXCHANGE, null, JsonUtils.toJsonString(mqTraceMessage)); String msg = JsonUtils.toJsonString(mqTraceMessage);
log.info(msg);
rabbitTemplate.convertAndSend(FANOUT_EXCHANGE, null, msg);
} }
@ -56,7 +58,7 @@ public class RabbitPushService {
public BaseResponse sendDeleyTask(MqTaskDelayMessage mqTaskDelayMessage, Integer delayTime) { public BaseResponse sendDeleyTask(MqTaskDelayMessage mqTaskDelayMessage, Integer delayTime) {
rabbitTemplate.convertAndSend(TopicRabbitConfig.TRACE_DELAY_EXCHANGE, TopicRabbitConfig.delaytrace, mqTaskDelayMessage, message -> { rabbitTemplate.convertAndSend(TopicRabbitConfig.TRACE_DELAY_EXCHANGE, TopicRabbitConfig.delaytrace, mqTaskDelayMessage, message -> {
MessageProperties messageProperties = message.getMessageProperties(); MessageProperties messageProperties = message.getMessageProperties();
messageProperties.setDelay(delayTime * 60); messageProperties.setDelay(delayTime * 1);
return message; return message;
}); });
return ResultVOUtils.success("发送成功"); return ResultVOUtils.success("发送成功");

@ -28,7 +28,6 @@ public class TraceManuOrderService extends ServiceImpl<TraceManuOrderMapper, Tra
int offset = (traceManuOrderRequest.getPage() - 1) * traceManuOrderRequest.getLimit(); int offset = (traceManuOrderRequest.getPage() - 1) * traceManuOrderRequest.getLimit();
PageHelper.offsetPage(offset, traceManuOrderRequest.getLimit()); PageHelper.offsetPage(offset, traceManuOrderRequest.getLimit());
} }
//System.out.println("11111"+traceManuOrderRequest.getRecordCode());
return traceManuOrderMapper.filterTraces(traceManuOrderRequest); return traceManuOrderMapper.filterTraces(traceManuOrderRequest);
} }

@ -161,15 +161,15 @@ public class UdiTraceService {
} }
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.trim()));
TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(1, traceProductDetailEntity.getId(), userCompanyEntity.getId()); TraceTaskNoticeEntity taskNoticeEntity = traceTaskNoticeService.findTask(2, traceProductDetailEntity.getId(), userCompanyEntity.getId());
if (taskNoticeEntity == null) { if (taskNoticeEntity == null) {
taskNoticeEntity = createTraceNotice(1, traceProductDetailEntity, companyId); taskNoticeEntity = createTraceNotice(2, traceProductDetailEntity, userCompanyEntity.getId());
pushDelayExpireTask(taskNoticeEntity); pushDelayExpireTask(taskNoticeEntity);
pushMq(taskNoticeEntity, companyId); pushMq(taskNoticeEntity, userCompanyEntity.getId());
} else if (taskNoticeEntity.getStatus() == 4) { } else if (taskNoticeEntity.getStatus() == 4) {
//任务超时未处理,重新推送消息 //任务超时未处理,重新推送消息
pushMq(taskNoticeEntity, companyId); pushMq(taskNoticeEntity, userCompanyEntity.getId());
} }
} }
} }

@ -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

@ -1,21 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.trace.TraceManuOrderMapper"> <mapper namespace="com.glxp.api.dao.trace.TraceManuOrderMapper">
<select id="filterTraces" parameterType="com.glxp.api.req.trace.TraceManuOrderRequest" <select id="filterTraces" parameterType="com.glxp.api.req.trace.TraceManuOrderRequest"
resultType="com.glxp.api.res.trace.TraceManuOrderResponse"> resultType="com.glxp.api.res.trace.TraceManuOrderResponse">
SELECT * select trace_manu_order.*, uc.companyName
FROM trace_manu_order
<where>
<if test="recordCode != '' and recordCode != null">
and recordCode = #{recordCode}
</if>
</where>
</select>
<select id="filterTraces1" parameterType="com.glxp.api.req.trace.TraceManuOrderRequest"
resultType="com.glxp.api.res.trace.TraceManuOrderResponse">
select *
from trace_manu_order from trace_manu_order
left join user_company uc on trace_manu_order.companyIdFk = uc.id
<where> <where>
<if test="id != '' and id != null"> <if test="id != '' and id != null">
and id = #{id} and id = #{id}
@ -53,6 +43,9 @@
<if test="manufactory != '' and manufactory != null"> <if test="manufactory != '' and manufactory != null">
and `manufactory` = #{manufactory} and `manufactory` = #{manufactory}
</if> </if>
<if test="traceProductIdFk != '' and traceProductIdFk != null">
and `traceProductIdFk` = #{traceProductIdFk}
</if>
</where> </where>
ORDER BY id DESC ORDER BY id DESC
</select> </select>

Loading…
Cancel
Save