feat(material-task): 补全刷新采集任务逻辑
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
package mjkf.xinke.main.service;
|
||||
package mjkf.xinke.main.common.api;
|
||||
|
||||
import com.jgy.xxs.core.http.exp.NcHttpException;
|
||||
import mjkf.xinke.main.constant.HttpErrorResponseEnum;
|
@@ -1,48 +1,14 @@
|
||||
package mjkf.xinke.main.common.api;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.jgy.xxs.core.http.resp.NcHttpResponse;
|
||||
import okhttp3.MultipartBody;
|
||||
import okhttp3.ResponseBody;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
public interface DataToolApi {
|
||||
|
||||
@GET("/data/by-task")
|
||||
Call<NcHttpResponse<List<JsonObject>>> listDataByTask(
|
||||
@Query("type") Integer type, @Query("id") String id,
|
||||
@Query("limit") Integer limit, @Query("page") Integer page
|
||||
);
|
||||
|
||||
// @POST("/split/remote-sensing-image/single/sync")
|
||||
// Call<ResponseBody> splitRemoteSensingImageSingleSync(@Body PointRangeMsg jsonObject);
|
||||
|
||||
@POST("/split/remote-sensing-image/multi/sync")
|
||||
Call<ResponseBody> splitRemoteSensingImageMultiSync(@Body JSONArray points);
|
||||
|
||||
@Multipart
|
||||
@POST("/tools/parse-point-range/kml")
|
||||
Call<JSONObject> toolsParsePointRangeKml(@Part() MultipartBody.Part files);
|
||||
|
||||
@Multipart
|
||||
@POST("/tools/convert")
|
||||
Call<ResponseBody> convert(@Part() MultipartBody.Part files, @Query("to_crs") String toCRS, @Query("format") String format);
|
||||
|
||||
@POST("/tools/create-shape/fe-data")
|
||||
Call<ResponseBody> createShapeByFeData(@Body JSONObject feData);
|
||||
|
||||
@Multipart
|
||||
@POST("/landuse/import-data/async")
|
||||
Call<JSONObject> importLanduseDataAsync(
|
||||
@Part() MultipartBody.Part files, @Query("cm") Double cm, @Query("project_id") Long projectId,
|
||||
@Query("project_no") String projectNo, @Query("project_name") String projectName,
|
||||
@Query("creator_id") String creatorId, @Query("creator_name") String creatorName,
|
||||
@Query("building_tolerance") Double buildingTolerance
|
||||
@GET("/data/task/{task_id}/refresh")
|
||||
Call<NcHttpResponse<JsonObject>> refreshTask(
|
||||
@Path(value = "task_id") String task_id
|
||||
);
|
||||
}
|
||||
|
@@ -1,14 +1,12 @@
|
||||
package mjkf.xinke.main.service;
|
||||
package mjkf.xinke.main.common.api;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import com.jgy.xxs.core.http.resp.NcHttpResponse;
|
||||
import mjkf.xinke.main.common.api.DataToolApi;
|
||||
import mjkf.xinke.main.common.property.ApiHostProperty;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class DataToolService implements ApiService<DataToolApi> {
|
||||
@@ -22,11 +20,10 @@ public class DataToolService implements ApiService<DataToolApi> {
|
||||
this.api = this.initApi(apiHostProperty.getDataTool());
|
||||
}
|
||||
|
||||
public NcHttpResponse<List<JsonObject>> listDataByTask (Integer type, String id, Integer limit, Integer page) throws Exception {
|
||||
var call = this.api.listDataByTask(type, id, limit, page);
|
||||
public NcHttpResponse<JsonObject> refreshTask (String taskId) throws Exception {
|
||||
var call = this.api.refreshTask(taskId);
|
||||
var response = this.getResponse(call).body();
|
||||
return response;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -2,12 +2,16 @@ package mjkf.xinke.main.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jgy.xxs.core.http.exp.NcHttpException;
|
||||
import com.jgy.xxs.core.http.resp.HttpResponse;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.annotations.ApiParam;
|
||||
import mjkf.xinke.auth.core.util.StpLoginUserUtil;
|
||||
import mjkf.xinke.common.pojo.CommonResult;
|
||||
import mjkf.xinke.main.common.api.DataToolService;
|
||||
import mjkf.xinke.main.common.http.FuHttpResponse;
|
||||
import mjkf.xinke.main.constant.HttpErrorResponseEnum;
|
||||
import mjkf.xinke.main.constant.MaterialTaskType;
|
||||
import mjkf.xinke.main.model.db.MaterialTask;
|
||||
import mjkf.xinke.main.model.vo.MaterialTaskCreateRequest;
|
||||
import mjkf.xinke.main.service.MaterialTaskService;
|
||||
@@ -31,6 +35,9 @@ public class MaterialTaskController {
|
||||
@Resource
|
||||
MaterialTaskService materialTaskService;
|
||||
|
||||
@Resource
|
||||
DataToolService dataToolService;
|
||||
|
||||
@ApiOperation("获取采集任务列表")
|
||||
@GetMapping("/")
|
||||
public CommonResult<Page<MaterialTask>> list(
|
||||
@@ -70,6 +77,19 @@ public class MaterialTaskController {
|
||||
public HttpResponse refresh(
|
||||
@PathVariable String id
|
||||
) throws Exception {
|
||||
var result = materialTaskService.getById(id);
|
||||
if (result == null) {
|
||||
throw new NcHttpException(HttpErrorResponseEnum.MATERIAL_TASK_NOT_FOUND);
|
||||
}
|
||||
|
||||
var type = result.getType();
|
||||
if (MaterialTaskType.isFromSpider(type)) {
|
||||
var resp = dataToolService.refreshTask(id);
|
||||
if (resp.getMeta().getCode() != 200) {
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
|
||||
return FuHttpResponse.Builder().dataResponse().build();
|
||||
}
|
||||
}
|
||||
|
@@ -19,4 +19,4 @@ main:
|
||||
|
||||
api:
|
||||
host:
|
||||
data-tool: http://localhost:50000
|
||||
data-tool: http://localhost:7778
|
@@ -19,4 +19,4 @@ main:
|
||||
|
||||
api:
|
||||
host:
|
||||
data-tool: http://192.168.1.3:50000
|
||||
data-tool: http://192.168.1.3:7778
|
Reference in New Issue
Block a user