From b6c0ffd5380fb4c9b7324298bade1bc0210b565d Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期日, 05 十月 2025 10:32:08 +0800
Subject: [PATCH] 联调

---
 src/main/java/com/zy/asrs/controller/WorkController.java |  178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 169 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java
index 3379c7b..ba728eb 100644
--- a/src/main/java/com/zy/asrs/controller/WorkController.java
+++ b/src/main/java/com/zy/asrs/controller/WorkController.java
@@ -1,12 +1,10 @@
 package com.zy.asrs.controller;
 
 import com.core.annotations.ManagerAuth;
+import com.core.common.Cools;
 import com.core.common.R;
 import com.zy.asrs.entity.WaitPakin;
-import com.zy.asrs.entity.param.EmptyPlateOutParam;
-import com.zy.asrs.entity.param.FullStoreParam;
-import com.zy.asrs.entity.param.LocDetlAdjustParam;
-import com.zy.asrs.entity.param.StockOutParam;
+import com.zy.asrs.entity.param.*;
 import com.zy.asrs.service.BasDevpService;
 import com.zy.asrs.service.WorkService;
 import com.zy.common.model.StartupDto;
@@ -17,10 +15,7 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 宸ヤ綔娴佹帴鍙f帶鍒跺櫒
@@ -92,6 +87,67 @@
         return R.ok("鍑哄簱鍚姩鎴愬姛");
     }
 
+//    @RequestMapping("/plate/out/start")
+//    @ManagerAuth(memo = "鍑哄簱浣滀笟")
+//    public R fullStoreTakeStart(@RequestBody StockOutFloorParam param) {
+//        if (param.getFloor() != null) {
+//            List<Integer> siteIdList = new ArrayList<>();
+//
+//            // 绗竴姝ワ細鏍规嵁妤煎眰閫夋嫨绔欑偣闆嗗悎
+//            switch (param.getFloor()) {
+//                case 1: // 涓�妤硷紙涓滃尯锛�
+//                    siteIdList = Arrays.asList(121, 124, 125, 126);
+//                    break;
+//                case 2: // 浜屾ゼ锛堜笢鍖猴級
+//                    siteIdList = Arrays.asList(221, 224, 226, 229);
+//                    break;
+//                case 3: // 鍥涙ゼ锛堜笢鍖猴級
+//                    siteIdList = Arrays.asList(411, 412, 413, 414);
+//                    break;
+//                case 4: // 涓�妤硷紙瑗垮尯锛�
+//                    siteIdList = Arrays.asList(103); // 鍙湁涓�涓珯鐐�
+//                    break;
+//                case 5: // 浜屾ゼ锛堣タ鍖猴級
+//                    siteIdList = Arrays.asList(201, 204, 206, 209);
+//                    break;
+//                case 6: // 鍥涙ゼ锛堣タ鍖猴級
+//                    siteIdList = Arrays.asList(401, 402, 403, 404);
+//                    break;
+//                default:
+//                    break;
+//            }
+//
+//            // 绗簩姝ワ細鏍规嵁 locNo 鐨勬帓鍙凤紝缁欐瘡涓� locDetl 璁剧疆 siteId
+//            if (param.getLocDetls() != null) {
+//                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
+//                    String locNo = locDetl.getLocNo(); // 濡傦細0312001
+//                    if (locNo != null && locNo.length() >= 2) {
+//                        String rowStr = locNo.substring(0, 2); // 鍓嶄袱浣嶄负鎺掑彿
+//                        int row = Integer.parseInt(rowStr);
+//
+//                        Integer siteId = null;
+//
+//                        // 绔欑偣鍒嗗竷瑙勫垯
+//                        if (row == 1 || row == 2) {
+//                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
+//                        } else if (row == 3 || row == 4) {
+//                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
+//                        } else if (row == 5 || row == 6) {
+//                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
+//                        } else if (row == 7 || row == 8) {
+//                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
+//                        }
+//
+//                        // 璁剧疆 siteId
+//                        locDetl.setSiteId(siteId);
+//                    }
+//                }
+//            }
+//        }
+//        workService.startupFullTakeStore(param, getUserId());
+//        return R.ok("鍑哄簱鍚姩鎴愬姛");
+//    }
+
     @RequestMapping("/empty/plate/in/start")
     @ManagerAuth(memo = "绌烘澘鍏ュ簱")
     public R emptyPlateInStart(@RequestParam Integer sourceStaNo) {
@@ -108,9 +164,71 @@
     @RequestMapping("/locCheck/out/start")
     @ManagerAuth(memo = "鐩樼偣鍑哄簱")
     public R locCheckOutStart(@RequestBody StockOutParam param) {
+
         workService.locCheckOut(param, getUserId());
         return R.ok("鍑哄簱鍚姩鎴愬姛");
     }
+
+//    @RequestMapping("/locCheck/out/start")
+//    @ManagerAuth(memo = "鐩樼偣鍑哄簱")
+//    public R locCheckOutStart(@RequestBody StockOutFloorParam param) {
+//        if (param.getFloor() != null) {
+//            List<Integer> siteIdList = new ArrayList<>();
+//
+//            // 绗竴姝ワ細鏍规嵁妤煎眰閫夋嫨绔欑偣闆嗗悎
+//            switch (param.getFloor()) {
+//                case 1: // 涓�妤硷紙涓滃尯锛�
+//                    siteIdList = Arrays.asList(121, 124, 125, 126);
+//                    break;
+//                case 2: // 浜屾ゼ锛堜笢鍖猴級
+//                    siteIdList = Arrays.asList(221, 224, 226, 229);
+//                    break;
+//                case 3: // 鍥涙ゼ锛堜笢鍖猴級
+//                    siteIdList = Arrays.asList(411, 412, 413, 414);
+//                    break;
+//                case 4: // 涓�妤硷紙瑗垮尯锛�
+//                    siteIdList = Arrays.asList(103); // 鍙湁涓�涓珯鐐�
+//                    break;
+//                case 5: // 浜屾ゼ锛堣タ鍖猴級
+//                    siteIdList = Arrays.asList(201, 204, 206, 209);
+//                    break;
+//                case 6: // 鍥涙ゼ锛堣タ鍖猴級
+//                    siteIdList = Arrays.asList(401, 402, 403, 404);
+//                    break;
+//                default:
+//                    break;
+//            }
+//
+//            // 绗簩姝ワ細鏍规嵁 locNo 鐨勬帓鍙凤紝缁欐瘡涓� locDetl 璁剧疆 siteId
+//            if (param.getLocDetls() != null) {
+//                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
+//                    String locNo = locDetl.getLocNo(); // 濡傦細0312001
+//                    if (locNo != null && locNo.length() >= 2) {
+//                        String rowStr = locNo.substring(0, 2); // 鍓嶄袱浣嶄负鎺掑彿
+//                        int row = Integer.parseInt(rowStr);
+//
+//                        Integer siteId = null;
+//
+//                        // 绔欑偣鍒嗗竷瑙勫垯
+//                        if (row == 1 || row == 2) {
+//                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
+//                        } else if (row == 3 || row == 4) {
+//                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
+//                        } else if (row == 5 || row == 6) {
+//                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
+//                        } else if (row == 7 || row == 8) {
+//                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
+//                        }
+//
+//                        // 璁剧疆 siteId
+//                        locDetl.setSiteId(siteId);
+//                    }
+//                }
+//            }
+//        }
+//        workService.locCheckOut(param, getUserId());
+//        return R.ok("鍑哄簱鍚姩鎴愬姛");
+//    }
 
     @RequestMapping("/loc/move/start")
     @ManagerAuth(memo = "搴撲綅绉昏浆")
@@ -118,6 +236,19 @@
                           @RequestParam String targetLocNo) {
         workService.locMove(sourceLocNo, targetLocNo, getUserId());
         return R.ok("绉诲簱鍚姩鎴愬姛");
+    }
+
+    @RequestMapping("/mat/turn/over/out/start")
+    @ManagerAuth(memo = "鍝佸彿绉讳氦")
+    public R turnMatLocDetl(@RequestBody EmptyPlateOutParam param) {
+        if (Cools.isEmpty(param) || Cools.isEmpty(param.getLocDetls(),param.getMatId()) || Cools.isEmpty(param.getLocDetls().get(0)) || Cools.isEmpty(param.getLocDetls().get(0).getMatnr())){
+            return R.error("鍙傛暟涓虹┖");
+        }
+        if (param.getLocDetls().size()>1){
+            return R.error("璇峰崟鏉℃暟鎹慨鏀癸紝璋ㄦ厧鎿嶄綔锛�");
+        }
+        workService.turnMatLocDetl(param, getUserId());
+        return R.ok("鍝佸彿绉讳氦鎴愬姛");
     }
 
     @RequestMapping("/locDdetl/adjust/start")
@@ -148,7 +279,36 @@
     @ManagerAuth(memo = "鐢熸垚浠诲姟")
     public R createWaitPainWrkMastStart(@RequestBody List<WaitPakin> list) {
         StartupDto startupDto = workService.createWaitPainWrkMastStart(list, getUserId());
-        return R.ok("娣诲姞浠诲姟鎴愬姛锛屼换鍔″彿锛�" + startupDto.getWorkNo() + ";鐩爣搴撲綅锛�" + startupDto.getLocNo());
+        return R.ok("浠诲姟鍙凤細" + startupDto.getWorkNo() + ";鐩爣搴撲綅锛�" + startupDto.getLocNo());
     }
 
+    @RequestMapping("/deal/preHave/start")
+    @ManagerAuth(memo = "鍏堝叆鍝佸鐞�")
+    public R dealPreHave(@RequestParam Integer wrkNo) {
+        String locNo = workService.dealPreHaveStart(wrkNo, getUserId());
+        return R.ok("浠诲姟閲嶆柊鍏ュ簱锛岀洰鏍囧簱浣嶏細" + locNo);
+    }
+
+    //骞舵澘鍑哄簱鍑哄簱绔欑偣
+    @RequestMapping("/available/takeClamp/site")
+    @ManagerAuth()
+    public R availableTakeClampSite(){
+        List<Map<String, Object>> result = new ArrayList<>();
+        List<Integer> outSite = basDevpService.getAvailableOutSite(104);
+        for (Integer siteId : outSite) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("siteId", siteId);
+            map.put("desc", siteId + "锛堝苟鏉垮嚭搴撳彛锛�");
+            result.add(map);
+        }
+        return R.ok().add(result);
+    }
+
+    //骞舵澘鍑哄簱
+    @RequestMapping("/locClamp/out/start")
+    @ManagerAuth(memo = "骞舵澘鍑哄簱")
+    public R locClampOutStart(@RequestBody StockOutParam param) {
+        workService.locClampOut(param, getUserId());
+        return R.ok("鍑哄簱鍚姩鎴愬姛");
+    }
 }

--
Gitblit v1.9.1