取消qgis子包,service提到顶层,trigger添加type参数
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
package com.gis.xian.controller;
|
||||
|
||||
import com.gis.xian.service.qgis.base.IFeignService;
|
||||
import com.gis.xian.service.IFeignService;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* QGIS 专题图触发接口
|
||||
* 统一入口,只接收 simulationId,调用 Python 端处理
|
||||
* 专题图触发接口
|
||||
* 统一入口,接收 simulationId 和 type,调用 Python 端处理
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@@ -18,8 +18,8 @@ public class QgisController {
|
||||
private IFeignService feignService;
|
||||
|
||||
@PostMapping("/qgis/trigger")
|
||||
public void trigger(@RequestParam String simulationId) {
|
||||
log.info("收到专题图触发请求: simulationId={}", simulationId);
|
||||
feignService.trigger(simulationId);
|
||||
public void trigger(@RequestParam String simulationId, @RequestParam String type) {
|
||||
log.info("收到专题图触发请求: simulationId={}, type={}", simulationId, type);
|
||||
feignService.trigger(simulationId, type);
|
||||
}
|
||||
}
|
||||
|
||||
+4
-3
@@ -1,7 +1,7 @@
|
||||
package com.gis.xian.service.qgis.base;
|
||||
package com.gis.xian.service;
|
||||
|
||||
/**
|
||||
* 统一专题图触发接口
|
||||
* 专题图触发接口
|
||||
* 只负责调用 Python 端,不返回结果
|
||||
*/
|
||||
public interface IFeignService {
|
||||
@@ -9,6 +9,7 @@ public interface IFeignService {
|
||||
/**
|
||||
* 触发专题图生成
|
||||
* @param simulationId 模拟ID
|
||||
* @param type 灾害类型(earthquake / rain)
|
||||
*/
|
||||
void trigger(String simulationId);
|
||||
void trigger(String simulationId, String type);
|
||||
}
|
||||
+6
-6
@@ -1,6 +1,6 @@
|
||||
package com.gis.xian.service.qgis.base.impl;
|
||||
package com.gis.xian.service.impl;
|
||||
|
||||
import com.gis.xian.service.qgis.base.IFeignService;
|
||||
import com.gis.xian.service.IFeignService;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -11,7 +11,7 @@ import org.springframework.web.client.RestClient;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 统一专题图触发服务
|
||||
* 专题图触发服务
|
||||
* 只负责调用 Python QGIS 服务,不处理计算和存库
|
||||
*/
|
||||
@Slf4j
|
||||
@@ -25,20 +25,20 @@ public class FeignServiceImpl implements IFeignService {
|
||||
private String qgisUrl;
|
||||
|
||||
@Override
|
||||
public void trigger(String simulationId) {
|
||||
public void trigger(String simulationId, String type) {
|
||||
if (simulationId == null || simulationId.isBlank()) {
|
||||
log.error("触发参数为空,simulationId={}", simulationId);
|
||||
return;
|
||||
}
|
||||
|
||||
log.info("触发专题图生成: simulationId={}", simulationId);
|
||||
log.info("触发专题图生成: simulationId={}, type={}", simulationId, type);
|
||||
|
||||
try {
|
||||
RestClient client = restClientBuilder.build();
|
||||
String result = client.post()
|
||||
.uri(qgisUrl)
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
.body(Map.of("simulationId", simulationId))
|
||||
.body(Map.of("simulationId", simulationId, "type", type))
|
||||
.retrieve()
|
||||
.body(String.class);
|
||||
log.info("Python 端响应: {}", result);
|
||||
Reference in New Issue
Block a user