|
@@ -87,52 +87,93 @@ public class FastApiServiceImpl implements FastApiService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
- @Override
|
|
|
|
|
- public AiTaggingResponseVo feedback(AiTaggingFeedbackRequestDto request) {
|
|
|
|
|
- StringBuilder urlBuilder = new StringBuilder(fastApiConfig.getUrl()).append(FEEDBACK_PATH);
|
|
|
|
|
-
|
|
|
|
|
- // 构造 GET 请求参数
|
|
|
|
|
- boolean hasParams = false;
|
|
|
|
|
|
|
+// @Override
|
|
|
|
|
+// public AiTaggingResponseVo feedback(AiTaggingFeedbackRequestDto request) {
|
|
|
|
|
+// StringBuilder urlBuilder = new StringBuilder(fastApiConfig.getUrl()).append(FEEDBACK_PATH);
|
|
|
|
|
+//
|
|
|
|
|
+// // 构造 GET 请求参数
|
|
|
|
|
+// boolean hasParams = false;
|
|
|
|
|
+//
|
|
|
|
|
+// if (request.getUserId() != null && !request.getUserId().isEmpty()) {
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("user_id=").append(encodeParam(request.getUserId()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// if (request.getUserNm() != null && !request.getUserNm().isEmpty()) {
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("user_nm=").append(encodeParam(request.getUserNm()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// // feedback 是必填参数
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("feedback=").append(encodeParam(request.getFeedback()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+//
|
|
|
|
|
+// if (request.getContractNo() != null && !request.getContractNo().isEmpty()) {
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("contract_no=").append(encodeParam(request.getContractNo()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// if (request.getUserOrg() != null && !request.getUserOrg().isEmpty()) {
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("user_org=").append(encodeParam(request.getUserOrg()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// if (request.getUserEndpoint() != null && !request.getUserEndpoint().isEmpty()) {
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("user_endpoint=").append(encodeParam(request.getUserEndpoint()));
|
|
|
|
|
+// hasParams = true;
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// // business_attr 是必填参数
|
|
|
|
|
+// urlBuilder.append(hasParams ? "&" : "?").append("business_attr=").append(encodeParam(request.getBusinessAttr()));
|
|
|
|
|
+//
|
|
|
|
|
+// String url = urlBuilder.toString();
|
|
|
|
|
+// log.info("调用 AI 打标反馈接口:{}", url);
|
|
|
|
|
+//
|
|
|
|
|
+// try (CloseableHttpClient httpClient = createHttpClient()) {
|
|
|
|
|
+// HttpGet httpGet = new HttpGet(url);
|
|
|
|
|
+//
|
|
|
|
|
+// try (CloseableHttpResponse response = httpClient.execute(httpGet)) {
|
|
|
|
|
+// String responseBody = EntityUtils.toString(response.getEntity(), "UTF-8");
|
|
|
|
|
+// log.info("AI 打标反馈接口响应:{}", responseBody);
|
|
|
|
|
+//
|
|
|
|
|
+// return JSON.parseObject(responseBody, AiTaggingResponseVo.class);
|
|
|
|
|
+// }
|
|
|
|
|
+// } catch (Exception e) {
|
|
|
|
|
+// log.error("调用 AI 打标反馈接口失败", e);
|
|
|
|
|
+// AiTaggingResponseVo errorResponse = new AiTaggingResponseVo();
|
|
|
|
|
+// errorResponse.setCode("500");
|
|
|
|
|
+// errorResponse.setMessage("调用 AI 打标反馈接口失败:" + e.getMessage());
|
|
|
|
|
+// return errorResponse;
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
- if (request.getUserId() != null && !request.getUserId().isEmpty()) {
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("user_id=").append(encodeParam(request.getUserId()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if (request.getUserNm() != null && !request.getUserNm().isEmpty()) {
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("user_nm=").append(encodeParam(request.getUserNm()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
- // feedback 是必填参数
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("feedback=").append(encodeParam(request.getFeedback()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
-
|
|
|
|
|
- if (request.getContractNo() != null && !request.getContractNo().isEmpty()) {
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("contract_no=").append(encodeParam(request.getContractNo()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public AiTaggingResponseVo feedback(AiTaggingFeedbackRequestDto request) {
|
|
|
|
|
+ String url = fastApiConfig.getUrl() + FEEDBACK_PATH;
|
|
|
|
|
|
|
|
- if (request.getUserOrg() != null && !request.getUserOrg().isEmpty()) {
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("user_org=").append(encodeParam(request.getUserOrg()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ log.info("调用 AI 打标反馈接口:{}", url);
|
|
|
|
|
|
|
|
- if (request.getUserEndpoint() != null && !request.getUserEndpoint().isEmpty()) {
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("user_endpoint=").append(encodeParam(request.getUserEndpoint()));
|
|
|
|
|
- hasParams = true;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ try (CloseableHttpClient httpClient = createHttpClient()) {
|
|
|
|
|
+ HttpPost httpPost = new HttpPost(url);
|
|
|
|
|
+ httpPost.setHeader("Content-Type", "application/json");
|
|
|
|
|
|
|
|
- // business_attr 是必填参数
|
|
|
|
|
- urlBuilder.append(hasParams ? "&" : "?").append("business_attr=").append(encodeParam(request.getBusinessAttr()));
|
|
|
|
|
|
|
+ // 手动构造符合 FastAPI 要求的 JSON 请求体(使用下划线格式)
|
|
|
|
|
+ com.alibaba.fastjson.JSONObject jsonBody = new com.alibaba.fastjson.JSONObject();
|
|
|
|
|
+ jsonBody.put("user_id", request.getUserId());
|
|
|
|
|
+ jsonBody.put("user_nm", request.getUserNm());
|
|
|
|
|
+ jsonBody.put("feedback", request.getFeedback());
|
|
|
|
|
+ jsonBody.put("contract_no", request.getContractNo());
|
|
|
|
|
+ jsonBody.put("user_org", request.getUserOrg());
|
|
|
|
|
+ jsonBody.put("user_endpoint", request.getUserEndpoint());
|
|
|
|
|
+ jsonBody.put("business_attr", request.getBusinessAttr());
|
|
|
|
|
|
|
|
- String url = urlBuilder.toString();
|
|
|
|
|
- log.info("调用 AI 打标反馈接口:{}", url);
|
|
|
|
|
|
|
+ String requestBody = jsonBody.toJSONString();
|
|
|
|
|
+ log.info("请求体:{}", requestBody);
|
|
|
|
|
|
|
|
- try (CloseableHttpClient httpClient = createHttpClient()) {
|
|
|
|
|
- HttpGet httpGet = new HttpGet(url);
|
|
|
|
|
|
|
+ httpPost.setEntity(new StringEntity(requestBody, "UTF-8"));
|
|
|
|
|
|
|
|
- try (CloseableHttpResponse response = httpClient.execute(httpGet)) {
|
|
|
|
|
|
|
+ try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
|
|
|
String responseBody = EntityUtils.toString(response.getEntity(), "UTF-8");
|
|
String responseBody = EntityUtils.toString(response.getEntity(), "UTF-8");
|
|
|
log.info("AI 打标反馈接口响应:{}", responseBody);
|
|
log.info("AI 打标反馈接口响应:{}", responseBody);
|
|
|
|
|
|