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/java/com/zy/asrs/controller/LocMastController.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 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) {

--
Gitblit v1.9.1