From eadb3c4c77dd9008030ec029c4c55727084253ed Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期二, 18 七月 2023 16:14:44 +0800
Subject: [PATCH] agv 入库接口调整

---
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java |   76 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 76 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index 297e554..cb4be34 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -1,11 +1,25 @@
 package com.zy.asrs.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.AgvWrkMast;
+import com.zy.asrs.entity.param.AgvTaskCreateParam;
+import com.zy.asrs.entity.param.AgvTaskParam;
+import com.zy.asrs.entity.param.AgvTaskkDescribeParam;
 import com.zy.asrs.mapper.AgvWrkMastMapper;
 import com.zy.asrs.service.AgvWrkMastService;
+import com.zy.common.utils.HttpHandler;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 @Service
 public class AgvWrkMastServiceImp extends ServiceImpl<AgvWrkMastMapper, AgvWrkMast> implements AgvWrkMastService {
@@ -18,4 +32,66 @@
         agvWrkMast.setWrkSts(wrkSts);
         this.updateById(agvWrkMast);
     }
+
+    public Map<String,List<Map<String,String>>> startWrk(List<AgvWrkMast> agvWrkMastList) throws IOException {
+
+        AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam();
+        agvTaskCreateParam.setTaskType("putaway");
+
+        //璋冪敤瀹瑰櫒鍏ュ満鏃舵墍闇�瑕佸弬鏁�
+        Map<String,List<Map<String,String>>> containerMoveParam = new HashMap<>();
+        List<Map<String,String>> positionCodeMapList = new ArrayList<>();
+        containerMoveParam.put("containerMoveIns",positionCodeMapList);
+
+        List<AgvTaskParam> agvTaskParamList = agvWrkMastList.stream().map(agvWrkMast -> {
+            AgvTaskParam agvTaskParam = new AgvTaskParam();
+            AgvTaskkDescribeParam agvTaskkDescribeParam = new AgvTaskkDescribeParam();
+            agvTaskParam.setTaskDescribe(agvTaskkDescribeParam);
+            //AgvTaskParam
+            agvTaskParam.setTaskCode(agvWrkMast.getWrkNo().toString());
+            agvTaskParam.setTaskPriority(agvWrkMast.getIoPri().intValue());
+
+            //寰�瀹瑰櫒鍏ュ満鍙傛暟涓斁鍏ユ簮绔欑偣浣嶇疆
+            Map<String,String> positionCodeMap = new HashMap<>();
+            positionCodeMap.put("positionCode",agvWrkMast.getSourceLocNo());
+            positionCodeMapList.add(positionCodeMap);
+
+            //AgvTaskkDescribeParam
+            agvTaskkDescribeParam.setFromLocationCode(agvWrkMast.getSourceLocNo());
+            agvTaskkDescribeParam.setToLocationCode(agvWrkMast.getLocNo());
+            agvTaskkDescribeParam.setContainerCode(agvWrkMast.getBarcode());
+            return agvTaskParam;
+        }).collect(Collectors.toList());
+
+        agvTaskCreateParam.setTasks(agvTaskParamList);
+
+        String response = new HttpHandler.Builder()
+                .setUri("localhost:8080")
+                .setPath("test/task/create")
+                .setJson(JSONObject.toJSONString(agvTaskCreateParam))
+                .build()
+                .doPost();
+
+        JSONObject jsonObject = JSON.parseObject(response);
+        //save log api
+        int code = (int) jsonObject.get("code");
+        if(code != 0){
+            throw new CoolException("璋冪敤AGV鎺ュ彛澶辫触");
+        }
+
+        return containerMoveParam;
+    }
+
+    public int containerMove(Map<String, List<Map<String, String>>> containerMoveParam) throws IOException {
+        String response = new HttpHandler.Builder()
+                .setUri("localhost:8080")
+                .setPath("test/container/moveIn")
+                .setJson(JSONObject.toJSONString(containerMoveParam))
+                .build()
+                .doPost();
+
+        JSONObject jsonObject = JSON.parseObject(response);
+        return (int) jsonObject.get("code");
+    }
+
 }

--
Gitblit v1.9.1