Ver código fonte

工单调用参数调整

wangmiaomiao 8 meses atrás
pai
commit
13df0b23a7

+ 42 - 7
slibra-admin/src/main/java/com/slibra/web/controller/business/GRPCController.java

@@ -498,11 +498,11 @@ public class GRPCController extends BaseController {
         if(1 == module){
             if(StringUtils.isBlank(timeBegin) && StringUtils.isBlank(timeEnd)){//按天生成工单
                 //获取前一天的日期
-                Date beforeYesterday = DateUtils.plusDate(-1, reportDate);
+               Date beforeYesterday = DateUtils.plusDate(-1, reportDate);
                 //先用日期获取当天和前一天的数据,如果获取不到,则提示错误信息
                 String date = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, reportDate);
-                String dateBefore = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeYesterday);
                 chatReq.setShowVal(GONGDAN_TITLE.replace("#{0}", date));//处理展示的标题
+                /*String dateBefore = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeYesterday);
                 String currentDate = DateUtils.parseDateToStr(DateUtils.YYYYMMDD_TS, reportDate);
                 String earlyDate = DateUtils.parseDateToStr(DateUtils.YYYYMMDD_TS, beforeYesterday);
                 List<TXinyiDaily> tXinyiDailiesNow = this.xinyiDailyMapper.selectTXinyiDailyList(TXinyiDaily.builder().testDate(currentDate).build());
@@ -520,10 +520,12 @@ public class GRPCController extends BaseController {
                 }
                 //如果查询到了 拼装数据
                 //2024年6月25日19:11:49  prompt优化
-                chatReq.setQuestion(this.buildGDQuestionNew(date, dateBefore, tXinyiDailiesNow.get(0), tXinyiDailiesBefore.get(0)));
+                chatReq.setQuestion(this.buildGDQuestionNew(date, dateBefore, tXinyiDailiesNow.get(0), tXinyiDailiesBefore.get(0)));*/
+                //2024年7月29日11:38:53 工单改版,由大模型处理数据
+                chatReq.setQuestion(this.buildGDNormalQuestion(DateUtils.parseDateToStr(DateUtils.YYYYMMDD_TS, reportDate)));
             }else{//自定义工单
                 chatReq.setShowVal(GONGDAN_TITLE_CUSTOM.replace("#{0}", timeBegin).replace("#{1}", timeEnd));//处理展示的标题
-                WorkOrderReq workOrderReq = new WorkOrderReq();
+                /*WorkOrderReq workOrderReq = new WorkOrderReq();
                 BeanUtils.copyProperties(chatReq, workOrderReq);
                 //拿到数据
                 List<WorkOrderRes> workOrderRes = frontService.customWorkOrder(workOrderReq);
@@ -540,10 +542,11 @@ public class GRPCController extends BaseController {
                         throw new RuntimeException(e);
                     }
                     return;
-                }
-                chatReq.setQuestion(question);
+                }*/
+                //2024年7月29日11:47:05 调整:图表以及大模型的数据都由大模型处理,这里拼接他需要的格式
+                chatReq.setQuestion(this.buildGDCustomQuestion(timeBegin, timeEnd, chatReq.getWhichWay()));
                 //2024年6月20日16:48:08  如果是自定义工单,需要处理图表 放到remark中
-                chatReq.setRemark(JSON.toJSONString(frontService.customWorkOrderHandleByData(workOrderReq, workOrderRes), JSONWriter.Feature.WriteNulls));
+//                chatReq.setRemark(JSON.toJSONString(frontService.customWorkOrderHandleByData(workOrderReq, workOrderRes), JSONWriter.Feature.WriteNulls));
             }
             isStrong = 1;
             toolsFlag = false;
@@ -643,6 +646,38 @@ public class GRPCController extends BaseController {
 //        return AjaxResult.success("ok");
     }
 
+    private String buildGDCustomQuestion(String timeBegin, String timeEnd, int whichWay) {
+        //存放的JSON
+        HashMap<String, Object> map = new HashMap<>();
+        map.put(TIMEBEGIN, timeBegin);
+        map.put(TIMEEND, timeEnd);
+        map.put(MODULE, MODULE_CONTENT_CUSTOM);
+        map.put(TYPE, CUSTOM_WORK_ORDER);
+        //拼装的SQL
+        HashMap<String, Object> sqlMap = new HashMap<>();
+        StringBuilder sb = new StringBuilder();
+        if(whichWay == 0){//日报
+            sqlMap.put(REPORT, sb.append(TOOLS_WORK_ORDER_SQL_DAILY).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEBEGIN).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_AND).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEEND).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_END).toString());
+            sb = new StringBuilder();
+        }else{//工业库
+            sqlMap.put(ONLINE, sb.append(TOOLS_WORK_ORDER_SQL_INDUSTRY).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEBEGIN).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_AND).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEEND).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_END).toString());
+            sb = new StringBuilder();
+        }
+        sqlMap.put(ROBOT, sb.append(TOOLS_WORK_ORDER_SQL_ROBOT).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEBEGIN).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_AND).append(TOOLS_WORK_ORDER_SQL_DIAN_BEGIN).append(TIMEEND).append(TOOLS_WORK_ORDER_SQL_DIAN_END).append(TOOLS_WORK_ORDER_SQL_END).toString());
+        map.put(DATA, sqlMap);
+        return JSON.toJSONString(map);
+    }
+
+    private String buildGDNormalQuestion(String date) {
+        //存放的JSON
+        HashMap<String, Object> map = new HashMap<>();
+        map.put(TIMEBEGIN, date);
+        map.put(TIMEEND, date);
+        map.put(MODULE, MODULE_CONTENT_NORMAL);
+        map.put(TYPE, NORMAL_WORK_ORDER);
+        return JSON.toJSONString(map);
+    }
+
     private String buildBigModelReqForChat(String sessionId, List<String> historyDates, String ipAddr, int isStrong, Double topP, Double temperature, String tools, boolean useRag) {
         ChatRequest chatRequest = new ChatRequest();
         chatRequest.setSessionId(sessionId);

+ 5 - 1
slibra-common/src/main/java/com/slibra/common/constant/MyConstants.java

@@ -84,7 +84,11 @@ public class MyConstants {
     public static final String MODULE = "module";
     public static final String TYPE = "type";
     public static final String DATA = "data";
-    public static final String MODULE_CONTENT = "用户自定义工单查询";
+    public static final String MODULE_CONTENT_CUSTOM = "用户自定义工单查询";
+    public static final String MODULE_CONTENT_NORMAL = "普通工单查询";
+
+    public static final int NORMAL_WORK_ORDER = 1;
+    public static final int CUSTOM_WORK_ORDER = 2;
     public static final String ONLINE = "online";
     public static final String REPORT = "report";
     public static final String ROBOT = "robot";

+ 1 - 1
slibra-system/src/main/java/com/slibra/business/req/ChatRequest.java

@@ -65,7 +65,7 @@ public class ChatRequest {
         HashMap<String, Object> map = new HashMap<>();
         map.put(TIMEBEGIN, timeBegin);
         map.put(TIMEEND, timeEnd);
-        map.put(MODULE, MODULE_CONTENT);
+        map.put(MODULE, MODULE_CONTENT_CUSTOM);
         map.put(TYPE, 2);
         //拼装的SQL
         HashMap<String, Object> sqlMap = new HashMap<>();