From 81c1b4bb4c88980ad56c77abdc31a5e15e1143a8 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期一, 05 一月 2026 15:07:02 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/locMast/locMast.html                  |    1 
 src/main/java/com/zy/asrs/controller/LocMastController.java |   63 +++++++++++++++++++++++++++++++
 src/main/webapp/static/js/locMast/locMast.js                |   16 ++++++++
 src/main/resources/application.yml                          |    1 
 4 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocMastController.java b/src/main/java/com/zy/asrs/controller/LocMastController.java
index 5a9fba3..d4eb6be 100644
--- a/src/main/java/com/zy/asrs/controller/LocMastController.java
+++ b/src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -13,12 +14,16 @@
 import com.zy.asrs.entity.LocDetl;
 import com.zy.asrs.entity.LocMast;
 import com.zy.asrs.entity.param.LocMastInitParam;
+import com.zy.asrs.mapper.RowLastnoMapper;
 import com.zy.asrs.service.LocDetlService;
 import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.utils.Utils;
 import com.zy.common.entity.Parameter;
 import com.zy.common.model.Shelves;
+import com.zy.common.utils.HttpHandler;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.*;
@@ -26,10 +31,17 @@
 @RestController
 public class LocMastController extends BaseController {
 
+    @Value("${wcs.address.URL}")
+    private String addrs;
+    @Value("${wcs.address.getAllLocInformation}")
+    private String getAllLocInformation;
+
     @Autowired
     private LocMastService locMastService;
     @Autowired
     private LocDetlService locDetlService;
+    @Autowired
+    private RowLastnoMapper rowLastnoMapper;
 
     @RequestMapping(value = "/locMast/init/pwd")
     public R locMastInitPwd(@RequestParam(required = false) String pwd) {
@@ -39,6 +51,57 @@
         return R.ok().add(Parameter.get().getLocMastInitPwd().equals(pwd));
     }
 
+    @RequestMapping(value = "/locMast/init/syncWcs")
+    public R syncWcs(@RequestParam(required = false) String pwd) {
+        List<LocMast> list = new ArrayList<>();
+        for (int i = 1; i <= 1000; i++) {
+            try {
+                HashMap<String, Object> map = new HashMap<>();
+                map.put("row", i);
+
+                String response = new HttpHandler.Builder()
+                        .setUri(addrs)
+                        .setPath(getAllLocInformation)
+                        .setJson(JSON.toJSONString(map))
+                        .build()
+                        .doPost();
+                JSONObject jsonObject = JSON.parseObject(response);
+                if (jsonObject.get("code").equals(200)){
+                    JSONArray data = jsonObject.getJSONArray("data");
+                    if (data.isEmpty()) {
+                        break;
+                    }
+
+                    for (Object obj : data) {
+                        JSONObject locJson = JSON.parseObject(JSON.toJSONString(obj));
+
+                        Integer row = locJson.getInteger("row");
+                        Integer bay = locJson.getInteger("bay");
+                        Integer lev = locJson.getInteger("lev");
+                        String locNo = Utils.getLocNo(row, bay, lev);
+
+                        LocMast locMast = new LocMast();
+                        locMast.setLocNo(locNo);
+                        locMast.setLocSts("O");
+                        locMast.setRow1(row);
+                        locMast.setBay1(bay);
+                        locMast.setLev1(lev);
+                        locMast.setAppeTime(new Date());
+                        locMast.setModiTime(new Date());
+
+                        list.add(locMast);
+                    }
+                }
+            }catch (Exception e){
+                return R.error();
+            }
+        }
+
+        locMastService.delete(new EntityWrapper<>());
+        locMastService.insertBatch(list);
+        return R.ok();
+    }
+
     @PostMapping(value = "/group/empty/stock")
     @ManagerAuth(memo = "鑾峰彇鍚岀粍璐ф灦鐨勭┖搴撲綅")
     public R getGroupEmptyStock(@RequestParam(required = false) String sourceLocNo) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index acc7c09..748f63e 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -89,6 +89,7 @@
     createOutTask: openapi/createOutTask
     createLocMoveTask: openapi/createLocMoveTask
     devicesStatus: openapi/devicesStatus
+    getAllLocInformation: openapi/getAllLocInformation
 
 led:
   ip: 192.168.1.198
diff --git a/src/main/webapp/static/js/locMast/locMast.js b/src/main/webapp/static/js/locMast/locMast.js
index 9197a35..405b7d0 100644
--- a/src/main/webapp/static/js/locMast/locMast.js
+++ b/src/main/webapp/static/js/locMast/locMast.js
@@ -231,6 +231,22 @@
                     })
                 });
                 break;
+            case "sync":
+                $.ajax({
+                    url: baseUrl + "/locMast/init/syncWcs",
+                    headers: {'token': localStorage.getItem('token')},
+                    method: 'GET',
+                    success: function (res) {
+                        if (res.code === 200){
+                            layer.msg(res.msg)
+                        } else if (res.code === 403){
+                            parent.location.href = "/";
+                        }else {
+                            layer.msg(res.msg)
+                        }
+                    }
+                })
+                break;
         }
     });
 
diff --git a/src/main/webapp/views/locMast/locMast.html b/src/main/webapp/views/locMast/locMast.html
index 9a4e6e4..0de11ef 100644
--- a/src/main/webapp/views/locMast/locMast.html
+++ b/src/main/webapp/views/locMast/locMast.html
@@ -81,6 +81,7 @@
         <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
         <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
         <button class="layui-btn layui-btn-primary" id="btn-init" lay-event="init">鍒濆鍖�</button>
+        <button class="layui-btn layui-btn-primary" id="btn-sync" lay-event="sync">鍚屾WCS搴撲綅</button>
         <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
     </div>
 </script>

--
Gitblit v1.9.1