Selaa lähdekoodia

客户详情ai处理客户意向度优化

lk 3 viikkoa sitten
vanhempi
commit
a0f688c20c

+ 17 - 3
fs-service/src/main/java/com/fs/crm/service/impl/CrmCustomerAnalyzeServiceImpl.java

@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.entity.SysDictData;
@@ -400,11 +401,24 @@ public class CrmCustomerAnalyzeServiceImpl extends ServiceImpl<CrmCustomerAnalyz
     }
 
     @Override
-    public String aiIntentionDegree(String content, Long chatId) {
+    public String aiIntentionDegree(String content, Long chatId) throws JsonProcessingException {
         Map<String, Object> requestParam = new HashMap<>();
 
-        // 获取各类数据
-        requestParam.put("history", content);
+        List<Map<String, Object>> maps = mapper.readValue(content,
+                new com.fasterxml.jackson.core.type.TypeReference<List<Map<String, Object>>>() {
+                });
+        maps.remove(0);//去除提示词
+        StringBuilder history = new StringBuilder();
+        history.append("{");
+        for (Map<String, Object> o :
+                maps) {
+            String role = (String) o.get("role");
+            String contentResult = (String) o.get("content");
+            String roleTag = "user".equals(role) ? "user" : "ai";
+            history.append(String.format("\"%s\":\"%s\",", roleTag, contentResult));
+        }
+        history.deleteCharAt(history.length() - 1).append("}");
+        requestParam.put("history", history);
 
         // 设置其他参数
         requestParam.put("tagInfos", Collections.emptyList());

+ 11 - 0
fs-service/src/main/java/com/fs/his/service/impl/FsStoreAfterSalesServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fs.his.service.impl;
 
+import java.io.IOException;
 import java.lang.reflect.Field;
 import java.math.BigDecimal;
 import java.sql.Timestamp;
@@ -33,6 +34,7 @@ import com.fs.core.config.WxPayProperties;
 import com.fs.core.utils.OrderCodeUtils;
 import com.fs.course.domain.FsCoursePlaySourceConfig;
 import com.fs.course.mapper.FsCoursePlaySourceConfigMapper;
+import com.fs.erp.utils.WeizouApiClient;
 import com.fs.his.config.FsSysConfig;
 import com.fs.his.config.StoreConfig;
 import com.fs.erp.dto.BaseResponse;
@@ -644,6 +646,15 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
                     }
                 }
             }
+            if (CloudHostUtils.hasCloudHostName("今正科技")) {
+                try {//今正订单取消调用微走
+                    HashMap<String, Object> objectObjectHashMap = new HashMap<>();
+                    objectObjectHashMap.put("extendOrderId", order.getOrderId());
+                    WeizouApiClient.cancelOrder(objectObjectHashMap);
+                } catch (IOException e) {
+                    logger.error("微走取消订单失败{}", order.getOrderId() + e.getMessage());
+                }
+            }
         } else {
             if (order.getRefundAmount().compareTo(BigDecimal.ZERO) == 0) {