Преглед изворни кода

手动模式(非订单修改)

yejian016332 пре 3 година
родитељ
комит
ea7982a192

+ 3 - 1
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/WorkpieceService.java

@@ -50,7 +50,7 @@ public interface WorkpieceService extends SuperService<TWorkpiece> {
 
     public R delete(Map map);
 
-    public String lock(Map map);
+    public R lock(Map map);
 
     /**
      * 添加子盘夹具
@@ -76,4 +76,6 @@ public interface WorkpieceService extends SuperService<TWorkpiece> {
 
 
     R executeManualTask(ManualInfo manualInfo) throws Exception;
+
+    R productLineRunMode()  throws Exception;
 }

+ 5 - 3
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/impl/TaskNodeServiceImpl.java

@@ -1575,7 +1575,6 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
         String manualId =  String.valueOf(bean.getTaskId());
         Object taskInfoObject = msgUtil.redis_get(manualId);
 
-
         if(null == taskInfoObject){
             return R.fail("任务号不存在");
         }
@@ -1584,8 +1583,11 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
         List<String> taskNodes = JSONArray.parseArray(taskInfosObject.getString("taskNodes"),String.class);
         ManualInfo manualInfo = JSONObject.parseObject(taskInfosObject.getString("taskInfo"),ManualInfo.class);
 
-        if(manualInfo.getNextTaskNodeIndex() > taskNodes.size() -1){
-            // 最后一个结点,更新库位信息
+        if(manualInfo.getNextTaskNodeIndex() == -1
+                || (manualInfo.getNextTaskNodeIndex() != -1 && manualInfo.getNextTaskNodeIndex() > taskNodes.size() -1)){
+            // 只有机器人需要记录库位信息变化,设备序工件本身在设备上无需更新库位信息
+
+
             return R.success();
         }else{
             // 继续执行后续结点

+ 27 - 15
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/impl/WorkpieceServiceImpl.java

@@ -34,6 +34,9 @@ import com.github.zuihou.common.util.StringUtil;
 import com.github.zuihou.context.BaseContextHandler;
 import com.github.zuihou.database.mybatis.conditions.Wraps;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
+import com.github.zuihou.tenant.dao.ProductionresourceMapper;
+import com.github.zuihou.tenant.dto.ProductionresourcePageDTO;
+import com.github.zuihou.tenant.entity.Productionresource;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpEntity;
@@ -89,6 +92,8 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
     private ZZoneMapper zZoneMapper;
     @Autowired
     private ZZoneProductionresourceMapper zZoneProductionresourceMapper;
+    @Autowired
+    private ProductionresourceMapper productionresourceMapper;
 
     @Autowired
     private RestTemplate restTemplate;
@@ -299,6 +304,7 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
                             childMap.put("pointId", c.getPointId());
                             childMap.put("goodsName", c.getGoodsName());
                             childMap.put("goodsId", c.getGoodsId());
+                            childMap.put("uniqueCode", c.getUniqueCode());
                             childMap.put("storgeId", c.getStorgeId());
                             childMap.put("category", c.getCategory());
                             childL.add(childMap);
@@ -343,7 +349,7 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
     }
 
     @Override
-    public String  lock(Map map) {
+    public R  lock(Map map) {
         BaseContextHandler.setTenant("0000");
         String resourceId = map.get("resourceId").toString();
         String pointId = map.get("pointId").toString();
@@ -351,14 +357,14 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
 
         List<ProductionresourcePosition> pointList = productionresourcePositionMapper.selectList(Wraps.<ProductionresourcePosition>lbQ().eq(ProductionresourcePosition::getPointId, pointId).eq(ProductionresourcePosition::getResourceId ,resourceId));
         if(CollectionUtil.isEmpty(pointList)){
-            return "";
+            return R.fail("库位不存在");
         }
         ProductionresourcePosition position = pointList.get(0);
         //获取
         List<Storge> list = storgeMapper.selectList(Wraps.<Storge>lbQ().eq(Storge::getId, position.getStorgeId()));
 
         if(CollectionUtil.isEmpty(list)){
-            return "";
+            return R.fail("库位不存在");
         }
 
         Storge storge = list.get(0);
@@ -371,7 +377,7 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
             storgeMapper.updateById(storge);
         }
 
-        return "";
+        return R.success();
 
     }
 
@@ -444,16 +450,6 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
     @Override
     public R executeManualTask(ManualInfo manualInfo) throws Exception {
 
-        // 查找当前任务所属产线,并且找出产线所需运输设备的点位及占用状态
-        String unit = manualInfo.getDeviceUnit();
-        if("capsule".equals(unit)){
-            // 舱体(智能单元)
-        }else if("framework".equals(unit)){
-            // 框体(柔性线)
-        }else if("safeguard".equals(unit)){
-            // 保障平台(质量中心)
-        }
-
         Map<String,Object> processInfo =  ManualTaskOperatorUtil.judgeFirstProcessInfo(robotTaskNodes, robotNoMoveTaskNodes,manualInfo);
         JSONObject returnDataObject = new JSONObject();
 
@@ -464,7 +460,15 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
         headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
 
         //回调参数构建
-        String jsonParam = ManualTaskOperatorUtil.getRequestParam(processInfo.get("location").toString(),manualInfo,processInfo.get("deviceUrl").toString(),processInfo.get("devicePort").toString());
+        String deviceUrl = "";
+        String devicePort = "";
+        if("execProgram".equals(manualInfo.getManualIdType())){
+            // 机加设备执行程序,直接执行机床接口
+            Productionresource productionresource = productionresourceMapper.selectOne(Wraps.<Productionresource>lbQ().eq(Productionresource::getId, manualInfo.getStartResourceId()));
+            deviceUrl = productionresource.getIp();
+            devicePort = productionresource.getPort();
+        }
+        String jsonParam = ManualTaskOperatorUtil.getRequestParam(processInfo.get("location").toString(),manualInfo,"execProgram".equals(manualInfo.getManualIdType()) ? deviceUrl: processInfo.get("deviceUrl").toString(),"execProgram".equals(manualInfo.getManualIdType()) ? devicePort: processInfo.get("devicePort").toString());
 
         HttpEntity<String> formEntity = new HttpEntity<String>(jsonParam, headers);
         //调用接口
@@ -491,4 +495,12 @@ public class WorkpieceServiceImpl extends SuperServiceImpl<WorkpieceMapper, TWor
         }
         return R.success(returnDataObject);
     }
+
+    @Override
+    public R productLineRunMode() throws Exception{
+        QueryWrapper<ZZone> zZoneWrapper = new QueryWrapper<ZZone>();
+        zZoneWrapper.eq("status",1);
+        return R.success(zZoneMapper.selectList(zZoneWrapper));
+    }
+
 }

+ 99 - 44
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/util/ManualTaskOperatorUtil.java

@@ -48,11 +48,32 @@ public class ManualTaskOperatorUtil {
         jsonParam.put("port",devicePort);
         jsonParam.put("taskId",manualInfo.getManualId());
         jsonParam.put("taskNodeId",manualInfo.getManualId());
-
         JSONObject data = new JSONObject();
-        data.put("location",location);
+        String manualType = manualInfo.getManualIdType();
+
+        if("execProgram".equals(manualType)) {
+            // 执行程序
+            data.put("remotePath",manualInfo.getExecProgram());
+        }else if("clean".equals(manualType)) {
+            // 清洗
+            data.put("workId",manualInfo.getWorkId());
+            data.put("workType",manualInfo.getExecProgram());
+        }else if("print".equals(manualType)) {
+            // 打标
+            data.put("workId",manualInfo.getWorkId());
+            data.put("labelContent",manualInfo.getLabelContent());
+        }else if("measuring".equals(manualType)) {
+            // 测量
+            data.put("remotePath",manualInfo.getWorkpieceId());
+            data.put("remotePath",manualInfo.getExecProgram());
+        }else{
+            // 机器人相关
+            data.put("location",location);
+        }
         jsonParam.put("data",data);
+
         return jsonParam.toJSONString();
+
     }
 
     /**
@@ -66,6 +87,19 @@ public class ManualTaskOperatorUtil {
         Map<String,Object> processInfo = new HashMap<String,Object>();
         String unit = manualInfo.getDeviceUnit();
         String manualType = manualInfo.getManualIdType();
+        String deviceUrl = "";
+        String devicePort = "";
+        // Plc地址
+        if("capsule".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }else if("framework".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }else if("safeguard".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }
         if("general".equals(manualType)){
             if("capsule".equals(unit)){
                 // 舱体(智能单元) 代码先写死,6个动作,后续根据resource_code表中获取
@@ -75,21 +109,16 @@ public class ManualTaskOperatorUtil {
                 int nextTaskNodeIndex = currentIndex +1;
                 if("get".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zndy;
-                    String devicePort = ZK_ip_zndy_port;
                     String location = manualInfo.getStartpointId();
                     setProcessInfo(robotNoMoveTaskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }
                 manualInfo.setNextTaskNodeIndex(nextTaskNodeIndex);
-
             }else if("framework".equals(unit)){
                 int currentIndex = 0;
                 String taskType = robotNoMoveTaskNodes.get(currentIndex);
                 int nextTaskNodeIndex = currentIndex +1;
                 if("move".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/MoveRobotPosition";
-                    String deviceUrl = ZK_ip_zndy;
-                    String devicePort = ZK_ip_zndy_port;
                     String location = manualInfo.getStartpointId();
                     setProcessInfo(robotNoMoveTaskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }
@@ -104,8 +133,6 @@ public class ManualTaskOperatorUtil {
                 int nextTaskNodeIndex = currentIndex +1;
                 if("get".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zndy;
-                    String devicePort = ZK_ip_zndy_port;
                     String location = manualInfo.getStartpointId();
                     setProcessInfo(robotTaskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }
@@ -113,10 +140,47 @@ public class ManualTaskOperatorUtil {
             }
         }else{
             // 设备相关
+            if("capsule".equals(unit)){
+                processMachineManualType(manualInfo, processInfo, manualType, deviceUrl, devicePort);
+            }else if("framework".equals(unit)){
+                processMachineManualType(manualInfo, processInfo, manualType, deviceUrl, devicePort);
+            }else if("safeguard".equals(unit)){
+                processMachineManualType(manualInfo, processInfo, manualType, deviceUrl, devicePort);
+            }
+            manualInfo.setNextTaskNodeIndex(-1);
         }
         return processInfo;
     }
 
+    /**
+     * 设备执行程序通用
+     * @param manualInfo
+     * @param processInfo
+     * @param manualType
+     * @param deviceUrl
+     * @param devicePort
+     */
+    private static void processMachineManualType(ManualInfo manualInfo, Map<String, Object> processInfo, String manualType, String deviceUrl, String devicePort) {
+        if("execProgram".equals(manualType)) {
+            String hostSyetemTaskUrl = hostSyetemUrl + "/api/StartNCProgram";
+            String location = manualInfo.getStartpointId();
+            // 查找设备ip及端口
+            setProcessInfo( new LinkedList(), processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
+        }else if("clean".equals(manualType)) {
+            String hostSyetemTaskUrl = hostSyetemUrl + "/api/StartCleanMachine";
+            String location = manualInfo.getStartpointId();
+            setProcessInfo( new LinkedList(), processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
+        }else if("print".equals(manualType)) {
+            String hostSyetemTaskUrl = hostSyetemUrl + "/api/StartLabelMachine";
+            String location = manualInfo.getStartpointId();
+            setProcessInfo( new LinkedList(), processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
+        }else if("measuring".equals(manualType)) {
+            String hostSyetemTaskUrl = hostSyetemUrl + "/api/StartCoordinateMeasuringMachine";
+            String location = manualInfo.getStartpointId();
+            setProcessInfo( new LinkedList(), processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
+        }
+    }
+
     /**
      * 处理手动模式回调任务结点信息
      * @param taskNodes
@@ -127,6 +191,21 @@ public class ManualTaskOperatorUtil {
         String unit = manualInfo.getDeviceUnit();
         String manualType = manualInfo.getManualIdType();
         Map<String,Object> processInfo = new HashMap<String,Object>();
+
+        String deviceUrl = "";
+        String devicePort = "";
+        // Plc地址
+        if("capsule".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }else if("framework".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }else if("safeguard".equals(unit)){
+            deviceUrl = ZK_ip_zndy;
+            devicePort = ZK_ip_zndy_port;
+        }
+
         if("general".equals(manualType)){
             if("capsule".equals(unit)){
                 int currentIndex = manualInfo.getNextTaskNodeIndex();
@@ -136,16 +215,12 @@ public class ManualTaskOperatorUtil {
                 // 执行第一个任务
                 if("get".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zndy;
-                    String deviceUrlPort = ZK_ip_zndy_port;
                     String location = manualInfo.getStartpointId();
-                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }else if("put".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/SendIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zndy;
-                    String deviceUrlPort = ZK_ip_zndy_port;
                     String location = manualInfo.getEndpointId();
-                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }
                 manualInfo.setNextTaskNodeIndex(nextTaskNodeIndex);
             }else if("framework".equals(unit)){
@@ -158,49 +233,35 @@ public class ManualTaskOperatorUtil {
                     // 执行第一个任务
                     if("get".equals(taskType) && currentIndex == 1){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }else if("put".equals(taskType) && currentIndex == 2){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/SendIntelligenceUnit";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }else if("move".equals(taskType) && currentIndex == 3){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/MoveRobotPosition";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }if("get".equals(taskType) && currentIndex == 4){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }else if("put".equals(taskType) && currentIndex == 5){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/SendIntelligenceUnit";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }
                     manualInfo.setNextTaskNodeIndex(nextTaskNodeIndex);
                 }else if(taskNodes.size() == 3){
                     if("get".equals(taskType)){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
                         String location = manualInfo.getStartpointId();
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }else if("put".equals(taskType)){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/SendIntelligenceUnit";
                         String location = manualInfo.getEndpointId();
-                        String deviceUrl = ZK_ip_rxx;
-                        String deviceUrlPort = ZK_ip_rxx_port;
-                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                        setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }
                 }
             }else if("safeguard".equals(unit)){
@@ -211,21 +272,15 @@ public class ManualTaskOperatorUtil {
                 // 执行第一个任务
                 if("get".equals(taskType)){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/GetIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zlzx;
-                    String deviceUrlPort = ZK_ip_zlzx_port;
                     String location = manualInfo.getStartpointId();
-                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }else if("put".equals(taskType) && currentIndex == 2){
                     String hostSyetemTaskUrl = hostSyetemUrl + "/api/SendIntelligenceUnit";
-                    String deviceUrl = ZK_ip_zlzx;
-                    String deviceUrlPort = ZK_ip_zlzx_port;
                     String location = manualInfo.getEndpointId();
-                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, deviceUrlPort);
+                    setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                 }
                 manualInfo.setNextTaskNodeIndex(nextTaskNodeIndex);
             }
-        }else{
-            // 设备相关
         }
         return processInfo;
     }

+ 6 - 8
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/operationManagementCenter/WorkpieceController.java

@@ -16,6 +16,7 @@ import com.github.zuihou.business.operationManagementCenter.service.WorkpieceSer
 import com.github.zuihou.business.productionReadyCenter.entity.MToolClamp;
 import com.github.zuihou.business.productionReadyCenter.entity.Plate;
 import com.github.zuihou.business.productionReadyCenter.entity.Tray;
+import com.github.zuihou.business.productionResourceCenter.dao.ZZoneMapper;
 import com.github.zuihou.business.productionResourceCenter.entity.ProductionresourcePosition;
 import com.github.zuihou.business.websocket.WebSocketServer;
 import com.github.zuihou.common.util.StringUtil;
@@ -199,7 +200,7 @@ public class WorkpieceController extends SuperController<WorkpieceService, Long,
 
     @ApiOperation(value = "锁定(非订单)", notes = "锁定(非订单)")
     @PostMapping("/handMode/lock")
-    public R<String>  lock(@RequestBody Map map) {
+    public R lock(@RequestBody Map map) {
         // 判断请求参数是否完整
         String pointId = map.get("pointId")==null?"":map.get("pointId").toString();
         String lockType = map.get("lockType")==null?"":map.get("lockType").toString();
@@ -207,7 +208,7 @@ public class WorkpieceController extends SuperController<WorkpieceService, Long,
         if(StringUtils.isBlank(pointId) || StringUtils.isBlank(resourceId) || StringUtils.isBlank(lockType)){
             return R.fail("请求参数不完整");
         }
-        return success(baseService.lock(map));
+        return baseService.lock(map);
     }
 
 
@@ -241,15 +242,12 @@ public class WorkpieceController extends SuperController<WorkpieceService, Long,
 
     @ApiOperation(value = "产线状态", notes = "产线状态")
     @PostMapping("/productLineRunMode")
-    public R productLineRunMode(@RequestBody ManualInfo manualInfo) {
-        log.info("开始执行手动任务,参数是{}", manualInfo.toString());
+    public R productLineRunMode() {
         try {
-            return baseService.executeManualTask(manualInfo);
+            return baseService.productLineRunMode();
         } catch (Exception e) {
             e.printStackTrace();
-            return R.fail("执行手动任务发生异常:" + e.getMessage());
-        }finally {
-            log.info("结束执行手动任务,参数是{}", manualInfo.toString());
+            return R.fail("查询产线状态发生异常:" + e.getMessage());
         }
     }
 }

+ 34 - 0
imcs-admin-boot/imcs-business-entity/src/main/java/com/github/zuihou/business/externalApi/dto/ManualInfo.java

@@ -26,14 +26,29 @@ public class ManualInfo {
      * 手动任务id
      */
     private String manualId;
+    /**
+     * 起点设备id
+     */
+    private String startResourceId;
+
     /**
      * 起点位置
      */
     private String startpointId;
+    /**
+     * 终点设备id
+     */
+    private String endResourceId;
     /**
      * 结束位置
      */
     private String endpointId;
+
+    /**
+     * 机器人设备id
+     */
+    private String robotResourceId;
+
     /**
      * 起点动作
      */
@@ -57,4 +72,23 @@ public class ManualInfo {
      */
     private int nextTaskNodeIndex;
 
+    /**
+     * 执行程序名称
+     */
+    private String execProgram;
+
+    /**
+     * 打标清洗类型
+     */
+    private String workId;
+
+    /**
+     * 打标清洗内容
+     */
+    private String labelContent;
+
+    /**
+     * 工件id
+     */
+    private String workpieceId;
 }