Selaa lähdekoodia

返回结构调整 方便前端解析

wangmiaomiao 10 kuukautta sitten
vanhempi
commit
da1aa8e593

+ 2 - 1
slibra-admin/src/main/java/com/slibra/web/controller/business/FrontController.java

@@ -336,12 +336,13 @@ public class FrontController extends BaseController {
     /**
      * 自定义工单接口 获取数据接口
      * @return
+     * 2024年6月19日14:45:51 返回结构再处理下,方便前端解析
      */
     @PostMapping("/bigModel/custom/workOrder")
     public AjaxResult customWorkOrder(@RequestBody WorkOrderReq workOrderReq)
     {
         log.info("进入了 自定义工单接口 获取数据接口 接口");
-        return AjaxResult.success(frontService.customWorkOrder(workOrderReq));
+        return AjaxResult.success(frontService.customWorkOrderHandle(workOrderReq));
     }
 
 

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

@@ -158,7 +158,7 @@ public class GRPCController extends BaseController {
                 }else{//其他 要么错误 要么alert 要么出的报告
 //                    sb.append(responseStr);
                     if(StringUtils.isBlank(message)){
-                        log.error("×××××××××××××××××××××××××××为空的数据暂时不返回×××××××××××××××××××××××××××");
+                        log.info("×××××××××××××××××××××××××××为空的数据暂时不返回×××××××××××××××××××××××××××");
                     }else {
                         resultData.add(responseStr);
                         outputStream.write(responseStr.getBytes());
@@ -287,7 +287,7 @@ public class GRPCController extends BaseController {
         Date reportDate = chatReq.getReportDate();//如果传过值来了 代表的是工单类型的问答
         String timeBegin = chatReq.getTimeBegin();
         String timeEnd = chatReq.getTimeEnd();
-        if((Objects.isNull(reportDate) || StringUtils.isBlank(timeBegin) && StringUtils.isBlank(timeEnd)) && module == 1){//工单 必须要输入日期
+        if((Objects.isNull(reportDate) && StringUtils.isBlank(timeBegin) && StringUtils.isBlank(timeEnd)) && module == 1){//工单 必须要输入日期
             //智能工单需要传入一个时间的参数
             try {
                 outputStream = response.getOutputStream();

+ 3 - 0
slibra-system/src/main/java/com/slibra/business/service/IFrontService.java

@@ -1,5 +1,6 @@
 package com.slibra.business.service;
 
+import com.alibaba.fastjson2.JSONObject;
 import com.slibra.business.domain.TXinyiChatRecord;
 import com.slibra.business.domain.TXinyiRecommendQa;
 import com.slibra.business.domain.TXinyiWarningRecord;
@@ -41,4 +42,6 @@ public interface IFrontService
     XinyiDailyFeeSimple recentlyOneFeeInfo();
 
     List<WorkOrderRes> customWorkOrder(WorkOrderReq workOrderReq);
+
+    JSONObject customWorkOrderHandle(WorkOrderReq workOrderReq);
 }

+ 80 - 5
slibra-system/src/main/java/com/slibra/business/service/impl/FrontServiceImpl.java

@@ -1,9 +1,6 @@
 package com.slibra.business.service.impl;
 
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.http.HttpRequest;
-import com.alibaba.fastjson2.JSON;
-import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
 import com.slibra.business.domain.*;
 import com.slibra.business.mapper.*;
 import com.slibra.business.req.ChatReq;
@@ -28,7 +25,6 @@ import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
-import java.util.concurrent.atomic.AtomicReference;
 
 import static com.slibra.common.constant.MyConstants.FORECAST_WARNING_TEMPLATE;
 import static com.slibra.common.constant.MyConstants.WARNING_TEMPLATE;
@@ -199,6 +195,85 @@ public class FrontServiceImpl implements IFrontService {
         return result;
     }
 
+    @Override
+    public JSONObject customWorkOrderHandle(WorkOrderReq workOrderReq) {
+        List<WorkOrderRes> workOrderRes = this.customWorkOrder(workOrderReq);
+        JSONObject jsonObject = new JSONObject();
+        List<JSONObject> jsGroup = new ArrayList<>();
+        List<JSONObject> csGroup = new ArrayList<>();
+        List<JSONObject> hyGroup = new ArrayList<>();
+        //处理成前端响应的结构
+        if(!CollectionUtils.isEmpty(workOrderRes)){
+            for (WorkOrderRes workOrderRe : workOrderRes) {
+                //处理进水
+                if(workOrderReq.getJsSlq() || workOrderReq.getJsCod() || workOrderReq.getJsTn()
+                        || workOrderReq.getJsTp() || workOrderReq.getJsNh3() || workOrderReq.getJsSs()){
+                    JSONObject jsonObjectJS = new JSONObject();
+                    jsonObjectJS.put("time", workOrderRe.getTime());
+                    if(workOrderReq.getJsSlq())
+                        jsonObjectJS.put("jsSlq", workOrderRe.getJsSlq());
+                    if(workOrderReq.getJsCod())
+                        jsonObjectJS.put("jsCod", workOrderRe.getJsCod());
+                    if(workOrderReq.getJsTn())
+                        jsonObjectJS.put("jsTn", workOrderRe.getJsTn());
+                    if(workOrderReq.getJsTp())
+                        jsonObjectJS.put("jsTp", workOrderRe.getJsTp());
+                    if(workOrderReq.getJsNh3())
+                        jsonObjectJS.put("jsNh3", workOrderRe.getJsNh3());
+                    if(workOrderReq.getJsSs())
+                        jsonObjectJS.put("jsSs", workOrderRe.getJsSs());
+                    jsGroup.add(jsonObjectJS);
+                }
+
+                //处理出水
+                if(workOrderReq.getCsSlqc() || workOrderReq.getCsCod() || workOrderReq.getCsTn()
+                        || workOrderReq.getCsTp() || workOrderReq.getCsNh3() || workOrderReq.getCsSs()){
+                    JSONObject jsonObjectCS = new JSONObject();
+                    jsonObjectCS.put("time", workOrderRe.getTime());
+                    if(workOrderReq.getJsSlq())
+                        jsonObjectCS.put("csSlqc", workOrderRe.getCsSlqc());
+                    if(workOrderReq.getJsCod())
+                        jsonObjectCS.put("csCod", workOrderRe.getCsCod());
+                    if(workOrderReq.getJsTn())
+                        jsonObjectCS.put("csTn", workOrderRe.getCsTn());
+                    if(workOrderReq.getJsTp())
+                        jsonObjectCS.put("csTp", workOrderRe.getCsTp());
+                    if(workOrderReq.getJsNh3())
+                        jsonObjectCS.put("csNh3", workOrderRe.getCsNh3());
+                    if(workOrderReq.getJsSs())
+                        jsonObjectCS.put("csSs", workOrderRe.getCsSs());
+                    csGroup.add(jsonObjectCS);
+                }
+
+                //处理化验
+                if(workOrderReq.getNo3Hlj1Jqr() || workOrderReq.getNo3Hlj2Jqr() || workOrderReq.getNh31Jqr()
+                        || workOrderReq.getNh32Jqr() || workOrderReq.getNo3Qyc1Jqr() || workOrderReq.getNo3Qyc2Jqr() || workOrderReq.getTpRccJqr()){
+                    JSONObject jsonObjectHY = new JSONObject();
+                    jsonObjectHY.put("time", workOrderRe.getTime());
+                    if(workOrderReq.getNo3Hlj1Jqr())
+                        jsonObjectHY.put("no3Hlj1Jqr", workOrderRe.getNo3Hlj1Jqr());
+                    if(workOrderReq.getNo3Hlj2Jqr())
+                        jsonObjectHY.put("no3Hlj2Jqr", workOrderRe.getNo3Hlj2Jqr());
+                    if(workOrderReq.getNh31Jqr())
+                        jsonObjectHY.put("nh31Jqr", workOrderRe.getNh31Jqr());
+                    if(workOrderReq.getNh32Jqr())
+                        jsonObjectHY.put("nh32Jqr", workOrderRe.getNh32Jqr());
+                    if(workOrderReq.getNo3Qyc1Jqr())
+                        jsonObjectHY.put("no3Qyc1Jqr", workOrderRe.getNo3Qyc1Jqr());
+                    if(workOrderReq.getNo3Qyc2Jqr())
+                        jsonObjectHY.put("no3Qyc2Jqr", workOrderRe.getNo3Qyc2Jqr());
+                    if(workOrderReq.getTpRccJqr())
+                        jsonObjectHY.put("tpRccJqr", workOrderRe.getTpRccJqr());
+                    hyGroup.add(jsonObjectHY);
+                }
+            }
+        }
+        jsonObject.put("jsGroup", jsGroup);
+        jsonObject.put("csGroup", csGroup);
+        jsonObject.put("hyGroup", hyGroup);
+        return jsonObject;
+    }
+
     private void buildIndustryData(TXinyiIndustry industry, WorkOrderRes workOrderRes, WorkOrderReq workOrderReq) {
         if(workOrderReq.getJsSlq())
             workOrderRes.setJsSlq(industry.getJsSlq());