From 535f6c82435e868a360cc97b0f875874b41df7af Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 05 六月 2021 10:45:22 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/WorkService.java             |    2 +-
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java    |   17 ++++++++++++++---
 src/main/java/com/zy/asrs/controller/WorkController.java       |    7 +++++++
 src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java |   30 +++++++++++++++++++-----------
 4 files changed, 41 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java
index 34d71da..ff968e0 100644
--- a/src/main/java/com/zy/asrs/controller/WorkController.java
+++ b/src/main/java/com/zy/asrs/controller/WorkController.java
@@ -65,6 +65,13 @@
             map.put("desc", siteId + "锛堟嫞鏂欏嚭搴撳彛锛�");
             result.add(map);
         }
+        List<Integer> agvAvailableInSite = basDevpService.getAgvAvailableInSite();
+        for (Integer siteId : agvAvailableInSite) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("siteId", siteId);
+            map.put("desc", siteId + "锛堝皬杞﹀伐浣滃尯锛�");
+            result.add(map);
+        }
         return R.ok().add(result);
     }
 
diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java
index 992d5ab..443c68e 100644
--- a/src/main/java/com/zy/asrs/service/WorkService.java
+++ b/src/main/java/com/zy/asrs/service/WorkService.java
@@ -25,7 +25,7 @@
      * @param locDetls 寰呭嚭搴撶墿鏂�
      * @param ioType 鍏ュ嚭搴撶被鍨�
      */
-    void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId);
+    void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, Integer ioType, Long userId, Integer agvSite);
 
     /**
      * 绌烘澘鍏ュ簱
diff --git a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
index df975a3..9816f12 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.service.impl;
 
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.Cools;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.BasDevp;
 import com.zy.asrs.mapper.BasDevpMapper;
@@ -54,18 +55,25 @@
             throw new CoolException(devpNo+"绔欑偣涓嶅瓨鍦�");
         }
         if (put) {
-            if(station.getAutoing()==null || !station.getAutoing().equals("Y")) {
-                throw new CoolException(devpNo+"绔欑偣涓嶆槸鑷姩鐘舵��");
+            // 灏忚溅宸ヤ綔鍖�
+            if (!Cools.isEmpty(station.getFronting()) && station.getFronting().equals("Y")) {
+
+            // 甯歌绔欑偣
+            } else {
+                if(station.getAutoing()==null || !station.getAutoing().equals("Y")) {
+                    throw new CoolException(devpNo+"绔欑偣涓嶆槸鑷姩鐘舵��");
+                }
+                if(station.getLoading()==null || !station.getLoading().equals("Y")) {
+                    throw new CoolException(devpNo+"绔欑偣鏃犵墿");
+                }
+                if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) {
+                    throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�");
+                }
+                if(wrkMastService.getWorkingMast(devpNo)>0){
+                    throw new CoolException(devpNo+"绔欑偣涓嶈兘鍚屾椂鐢熸垚涓ょ瑪鍏ュ簱宸ヤ綔妗�");
+                }
             }
-            if(station.getLoading()==null || !station.getLoading().equals("Y")) {
-                throw new CoolException(devpNo+"绔欑偣鏃犵墿");
-            }
-            if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) {
-                throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�");
-            }
-            if(wrkMastService.getWorkingMast(devpNo)>0){
-                throw new CoolException(devpNo+"绔欑偣涓嶈兘鍚屾椂鐢熸垚涓ょ瑪鍏ュ簱宸ヤ綔妗�");
-            }
+
         }
         return station;
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index bbe5cd4..ecc5f75 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -185,6 +185,11 @@
     public void startupFullTakeStore(StockOutParam param, Long userId) {
         // 鐩爣绔欑偣鐘舵�佹娴�
         BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+        int agvSite = 0;
+        if (!Cools.isEmpty(staNo.getFronting()) && staNo.getFronting().equals("Y")) {
+            agvSite = staNo.getDevNo();
+            staNo = basDevpService.checkSiteStatus(201);
+        }
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -198,7 +203,7 @@
         }
         if (!locDetlDtos.isEmpty()) {
             // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
-            stockOut(staNo, locDetlDtos, null, userId);
+            stockOut(staNo, locDetlDtos, null, userId, agvSite);
         } else {
             throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
         }
@@ -206,7 +211,7 @@
 
     @Override
     @Transactional
-    public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId) {
+    public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, Integer ioType, Long userId, Integer agvSite) {
         // 鍚堝苟鍚岀被椤�
         Set<String> locNos = new HashSet<>();
         locDetlDtos.forEach(dto -> locNos.add(dto.getLocDetl().getLocNo()));
@@ -259,6 +264,7 @@
             wrkMast.setExitMk("N"); // 閫�鍑�
             wrkMast.setEmptyMk("N"); // 绌烘澘
             wrkMast.setLinkMis("N");
+            wrkMast.setCtnKind(agvSite); // 鍑哄簱涓嬬殑灏忚溅宸ヤ綔鍖虹珯濂�
             wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁
             wrkMast.setAppeTime(new Date());
             wrkMast.setModiUser(userId);
@@ -427,6 +433,11 @@
     public void locCheckOut(StockOutParam param, Long userId) {
         // 鐩爣绔欑偣鐘舵�佹娴�
         BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+        int agvSite = 0;
+        if (!Cools.isEmpty(staNo.getFronting()) && staNo.getFronting().equals("Y")) {
+            agvSite = staNo.getDevNo();
+            staNo = basDevpService.checkSiteStatus(201);
+        }
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -445,7 +456,7 @@
         }
         if (!locDetlDtos.isEmpty()) {
             // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
-            stockOut(staNo, locDetlDtos, 107, userId);
+            stockOut(staNo, locDetlDtos, 107, userId, agvSite);
         } else {
             throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
         }

--
Gitblit v1.9.1