From 6b26945259c0a3edbcabeb9a887e5165ca071586 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Thu, 24 Oct 2024 21:44:29 +0800 Subject: [PATCH] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E9=87=91?= =?UTF-8?q?=E7=89=8C=E5=B7=A5=E5=8E=82=E6=89=8B=E5=8A=A8=E5=9B=9E=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 增加金牌工厂能通过节点日志手动回传数据给工厂 --- .../jinpai/controller/OrderController.java | 3 +- .../jinpai/entity/CustomPushEntity.java | 48 ++++++++++++++ .../factorydata/jinpai/job/AuthPushJob.java | 62 +++++++++++++++++++ .../jinpai/mapper/CustomPushMapper.java | 16 +++++ .../jinpai/mapper/CustomPushMapper.xml | 5 ++ .../jinpai/mq/NodeDataPushListener.java | 2 +- .../jinpai/service/CustomPushService.java | 14 +++++ .../service/impl/CustomPushServiceImpl.java | 22 +++++++ 8 files changed, 170 insertions(+), 2 deletions(-) create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/entity/CustomPushEntity.java create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/job/AuthPushJob.java create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.java create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.xml create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/CustomPushService.java create mode 100644 blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/CustomPushServiceImpl.java diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/controller/OrderController.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/controller/OrderController.java index b5faf3da5..976d13b0a 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/controller/OrderController.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/controller/OrderController.java @@ -1,7 +1,6 @@ package com.logpm.factorydata.jinpai.controller; import cn.hutool.core.collection.CollUtil; -import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.logpm.factorydata.jinpai.service.DeliveryNoteService; @@ -37,6 +36,8 @@ public class OrderController { private final DeliveryNoteService service; + + @ResponseBody @PostMapping @ApiOperationSupport(order = 1) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/entity/CustomPushEntity.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/entity/CustomPushEntity.java new file mode 100644 index 000000000..6973fcdf7 --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/entity/CustomPushEntity.java @@ -0,0 +1,48 @@ +package com.logpm.factorydata.jinpai.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.core.mp.base.BaseEntity; + +/** + * 金牌自定义回传 实体类 + * + * @author zhaoqiaobo + * @create 2024-04-26 + */ +@Data +@TableName("jp_custom_push") +@ApiModel(value = "金牌自定义回传", description = "金牌自定义回传") +@EqualsAndHashCode(callSuper = true) +public class CustomPushEntity extends BaseEntity { + + @ApiModelProperty(name = "订单号", notes = "") + private String orderCode; + + @ApiModelProperty(name = "节点 到站:1030100 入库:105040", notes = "") + private String nodeCode; + + @ApiModelProperty(name = "包件码", notes = "") + private String packageCode; + + @ApiModelProperty(name = "状态 1已发送 0未发送", notes = "") + private Integer sendStatus; + + @ApiModelProperty(name = "内容", notes = "") + private String content; + + @ApiModelProperty(name = "预留1", notes = "") + private String reserve1; + @ApiModelProperty(name = "预留2", notes = "") + private String reserve2; + @ApiModelProperty(name = "预留3", notes = "") + private String reserve3; + @ApiModelProperty(name = "预留4", notes = "") + private String reserve4; + @ApiModelProperty(name = "预留5", notes = "") + private String reserve5; + +} diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/job/AuthPushJob.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/job/AuthPushJob.java new file mode 100644 index 000000000..f67c2fb5b --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/job/AuthPushJob.java @@ -0,0 +1,62 @@ +package com.logpm.factorydata.jinpai.job; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.logpm.factorydata.jinpai.entity.CustomPushEntity; +import com.logpm.factorydata.jinpai.service.CustomPushService; +import com.xxl.job.core.biz.model.ReturnT; +import com.xxl.job.core.handler.annotation.XxlJob; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.factorydata.FactoryDataConstants; +import org.springblade.common.enums.BooleanZeroOneEnums; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * 自动回推金牌工厂 + * + * @author zhaoqiaobo + * @create 2024-04-02 + */ +@AllArgsConstructor +@Component +@Slf4j +public class AuthPushJob { + + private final CustomPushService customPushService; + private final RabbitTemplate rabbitTemplate; + + /** + * 自定义回传工厂节点作业数据 + * + * @param param + * @return + * @throws Exception + */ + @XxlJob("customPushFactoryData") + public ReturnT customPushFactoryData(String param) throws Exception { + // 查出数据,回推工厂 + List list = customPushService.list(Wrappers.lambdaQuery() + .select(CustomPushEntity::getId, CustomPushEntity::getContent) + .eq(CustomPushEntity::getSendStatus, 0) + .orderByAsc(CustomPushEntity::getNodeCode) + .last("limit 1")); + if (CollUtil.isNotEmpty(list)) { + CustomPushEntity customPushEntity = list.get(0); + if (StrUtil.isNotEmpty(customPushEntity.getContent())) { + rabbitTemplate.convertAndSend(FactoryDataConstants.Mq.RoutingKeys.JP_NODE_DATA_PUSH, + FactoryDataConstants.Mq.RoutingKeys.JP_NODE_DATA_PUSH, customPushEntity.getContent()); + CustomPushEntity updateEntity = new CustomPushEntity(); + updateEntity.setId(customPushEntity.getId()); + updateEntity.setSendStatus(BooleanZeroOneEnums.YES.getCode()); + customPushService.updateById(updateEntity); + } + } + return ReturnT.SUCCESS; + } + +} diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.java new file mode 100644 index 000000000..0bf3eddbf --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.java @@ -0,0 +1,16 @@ +package com.logpm.factorydata.jinpai.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.logpm.factorydata.jinpai.entity.CustomPushEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 金牌自定义回传 mapper + * + * @author zqb + * @since 2024-03-26 + */ +@Mapper +public interface CustomPushMapper extends BaseMapper { + +} diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.xml b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.xml new file mode 100644 index 000000000..c0592b1db --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mapper/CustomPushMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java index 9cfcded52..38819cdd5 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java @@ -125,7 +125,7 @@ public class NodeDataPushListener { Map pushEntityMap = new HashMap<>(); if (CollUtil.isNotEmpty(pushEntities)) { pushEntityMap = pushEntities.stream().filter(pushEntity -> { - return StrUtil.equals(pushEntity.getNode(),FactoryNodeEnums.END_WAREHOUSE_UNLOADING.getCode().toString()); + return StrUtil.equals(pushEntity.getNode(),FactoryNodeEnums.FINAL_NET_ARRIVE_CAR.getCode().toString()); }).collect(Collectors.toMap(FactoryNodePushEntity::getOrderCode, v -> v)); } JSONObject mainJson = JSONUtil.parseObj(main); diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/CustomPushService.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/CustomPushService.java new file mode 100644 index 000000000..10a5a4939 --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/CustomPushService.java @@ -0,0 +1,14 @@ +package com.logpm.factorydata.jinpai.service; + +import com.logpm.factorydata.jinpai.entity.CustomPushEntity; +import org.springblade.core.mp.base.BaseService; + +/** + * 金牌自定义回传 服务类 + * + * @Author zqb + * @Date 2024/4/26 + **/ +public interface CustomPushService extends BaseService { + +} diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/CustomPushServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/CustomPushServiceImpl.java new file mode 100644 index 000000000..64dcd9b5a --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/CustomPushServiceImpl.java @@ -0,0 +1,22 @@ +package com.logpm.factorydata.jinpai.service.impl; + +import com.logpm.factorydata.jinpai.entity.CustomPushEntity; +import com.logpm.factorydata.jinpai.mapper.CustomPushMapper; +import com.logpm.factorydata.jinpai.service.CustomPushService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.stereotype.Service; + +/** + * 金牌自定义回传 业务实现类 + * + * @Author zqb + * @Date 2024/4/26 + **/ +@Slf4j +@Service +@AllArgsConstructor +public class CustomPushServiceImpl extends BaseServiceImpl implements CustomPushService { + +}