diff --git a/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/entity/CustomPushEntity.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/entity/CustomPushEntity.java new file mode 100644 index 000000000..1c040b43d --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/entity/CustomPushEntity.java @@ -0,0 +1,48 @@ +package com.logpm.factorydata.mwh.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("mwh_custom_push") +@ApiModel(value = "曼好家自定义回传", description = "曼好家自定义回传") +@EqualsAndHashCode(callSuper = true) +public class CustomPushEntity extends BaseEntity { + + @ApiModelProperty(name = "订单号", notes = "") + private String orderCode; + + @ApiModelProperty(name = "节点", 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-mwh/src/main/java/com/logpm/factorydata/mwh/job/AuthPushJob.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/job/AuthPushJob.java new file mode 100644 index 000000000..95b48faa0 --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/job/AuthPushJob.java @@ -0,0 +1,62 @@ +package com.logpm.factorydata.mwh.job; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.logpm.factorydata.mwh.entity.CustomPushEntity; +import com.logpm.factorydata.mwh.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.Exchanges.NODE_DATA_PUSH, + FactoryDataConstants.Mq.RoutingKeys.MWH_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-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.java new file mode 100644 index 000000000..ddcdb3123 --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.java @@ -0,0 +1,16 @@ +package com.logpm.factorydata.mwh.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.logpm.factorydata.mwh.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-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.xml b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.xml new file mode 100644 index 000000000..e2822dc9f --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/mapper/CustomPushMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/service/CustomPushService.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/service/CustomPushService.java new file mode 100644 index 000000000..6f475c96a --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/service/CustomPushService.java @@ -0,0 +1,14 @@ +package com.logpm.factorydata.mwh.service; + +import com.logpm.factorydata.mwh.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-mwh/src/main/java/com/logpm/factorydata/mwh/service/impl/CustomPushServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/service/impl/CustomPushServiceImpl.java new file mode 100644 index 000000000..aae9e7d0f --- /dev/null +++ b/blade-service/logpm-factory-data/logpm-factory-data-mwh/src/main/java/com/logpm/factorydata/mwh/service/impl/CustomPushServiceImpl.java @@ -0,0 +1,22 @@ +package com.logpm.factorydata.mwh.service.impl; + +import com.logpm.factorydata.mwh.entity.CustomPushEntity; +import com.logpm.factorydata.mwh.mapper.CustomPushMapper; +import com.logpm.factorydata.mwh.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 { + +}