From 437faf8e56bfc30d00473e65ece48be504a57fe7 Mon Sep 17 00:00:00 2001
From: zyh <zyh@123>
Date: 星期六, 28 三月 2026 10:47:34 +0800
Subject: [PATCH] CTU预调度功能,更新为正式部署许可证,修改前端导出功能,打开Redis,数字孪生增加接口

---
 src/main/java/com/zy/common/web/WcsController.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 563d1b5..33b54ce 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -1,5 +1,8 @@
 package com.zy.common.web;
 
+import com.alibaba.excel.util.StringUtils;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.core.common.Cools;
@@ -7,22 +10,29 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.EmptyPlateOutParam;
+import com.zy.asrs.entity.rcs.RcsReturn;
 import com.zy.asrs.entity.result.FindLocNoAttributeVo;
 import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.RcsServiceImpl;
 import com.zy.common.CodeRes;
 import com.zy.common.model.LocTypeDto;
 import com.zy.common.model.StartupDto;
 import com.zy.common.service.CommonService;
+import com.zy.common.utils.RedisUtil;
 import com.zy.common.web.param.SearchLocParam;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
+
+import static com.zy.asrs.service.impl.RcsServiceImpl.sendPost;
 
 /**
  * Created by vincent on 2020/10/30
@@ -50,13 +60,23 @@
     private RowLastnoService rowLastnoService;
     @Autowired
     private WorkService workService;
+    @Autowired
+    private RedisUtil redisUtil;
+    @Value("${hik.url}")
+    private String HIK_URL;
+
+    private static final String IS_START_PRE_SCHEDULE = "schedule:check";
 
     // TODO锛氱О閲嶃�佹媿鐓т笂鎶ュ瓨鍌紝CTU鏂欑杩愯浆
 
     @PostMapping("/pakin/loc/v1")
     @ResponseBody
     public synchronized R getLocNo(@RequestBody SearchLocParam param) {
+
         log.info("鏀跺埌WCS鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param);
+
+        PreScheduling();
+
         if (Cools.isEmpty(param.getIoType())) {
             return R.error("鍏ュ嚭搴撶被鍨嬩笉鑳戒负绌�");
         }
@@ -313,4 +333,27 @@
         return dto;
     }
 
+    public void PreScheduling(){
+
+        if (redisUtil.get(IS_START_PRE_SCHEDULE)!=null && redisUtil.get(IS_START_PRE_SCHEDULE).equals("T")){
+            return;
+        }else {
+            redisUtil.set(IS_START_PRE_SCHEDULE, "T",70);
+        }
+        String url = "api/robot/controller/task/pretask";
+        String URL = HIK_URL + url;
+        JSONObject preSchedule = new JSONObject();
+        preSchedule.put("siteCode", "106");
+        preSchedule.put("nextTaskTime", "70");
+        preSchedule.put("robotType", "18,25");
+        preSchedule.put("taskCount", 3);
+
+        String response = sendPost(URL, JSONObject.toJSONString(preSchedule));
+        if (!StringUtils.isEmpty(response) && response.contains("code")){
+            log.info("棰勮皟搴︽垚鍔焮}", preSchedule);
+        } else {
+            log.info("棰勮皟搴﹀け璐}", preSchedule);
+        }
+    }
+
 }

--
Gitblit v1.9.1