refactor: TransportTaskApiImpl 改为 Feign 模式,新增 TransportTaskApi 接口和 RpcConfiguration

This commit is contained in:
2026-07-14 19:01:26 +08:00
parent f35d36ddb6
commit 254797a154
11 changed files with 67 additions and 12 deletions

View File

@@ -2,32 +2,25 @@ package cn.code.nl.module.task.api;
import cn.code.nl.framework.common.pojo.CommonResult;
import cn.code.nl.module.task.dto.TransportTaskCreateReqDTO;
import cn.code.nl.module.task.enums.ApiConstants;
import cn.code.nl.module.task.service.transporttask.TransportTaskService;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import jakarta.validation.Valid;
import static cn.code.nl.framework.common.pojo.CommonResult.success;
/**
* Task 服务 RPC 接口实现
* Task 服务 RPC 接口实现Feign 服务端)
*/
@RestController
@RequestMapping(ApiConstants.PREFIX)
@RestController // 提供 RESTful API 接口,给 Feign 调用
@Validated
public class TransportTaskApiImpl {
public class TransportTaskApiImpl implements TransportTaskApi {
@Resource
private TransportTaskService transportTaskService;
@PostMapping("/transport/create")
public CommonResult<Long> createTransportTask(@Valid @RequestBody TransportTaskCreateReqDTO reqDTO) {
@Override
public CommonResult<Long> createTransportTask(TransportTaskCreateReqDTO reqDTO) {
return success(transportTaskService.createTransportTaskByRpc(reqDTO));
}
}

View File

@@ -0,0 +1,15 @@
package cn.code.nl.module.task.framework.rpc.config;
import cn.code.nl.module.task.api.TransportTaskApi;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Configuration;
/**
* Task 服务 RPC 配置
* <p>
* 注册 Feign 客户端,使 LMS/WMS 等调用方可通过 @Resource 注入 TransportTaskApi
*/
@Configuration
@EnableFeignClients(clients = {TransportTaskApi.class})
public class RpcConfiguration {
}

View File

@@ -0,0 +1,5 @@
/**
*
* @Author: liyongde
* @Date: 2026/7/14 18:47
*/package cn.code.nl.module.task.mq.consumer;

View File

@@ -0,0 +1,39 @@
package cn.code.nl.module.task.dto;
import lombok.Data;
import java.util.Map;
/**
* 任务事件 MQ 消息体
*/
@Data
public class TaskEventMessage {
/** 事件ID */
private String eventId;
/** 事件类型TASK_FINISHED / TASK_CANCELLED */
private String eventType;
/** 任务ID */
private Long taskId;
/** 任务编码 */
private String taskCode;
/** 业务归属服务LMS / WMS */
private String ownerService;
/** 业务类型 */
private String bizType;
/** 业务侧标识 */
private String bizId;
/** 业务回调处理器编码 */
private String handleCode;
/** 扩展数据 */
private Map<String, Object> payload;
}

View File

@@ -0,0 +1,5 @@
/**
*
* @Author: liyongde
* @Date: 2026/7/14 18:47
*/package cn.code.nl.module.task.mq.message;

View File

@@ -0,0 +1,4 @@
/**
* 消息队列的消息
*/
package cn.code.nl.module.infra.mq.message;