From 0cf1c13ac668cdb689b073c3961592d8ab41316c Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 21 五月 2025 19:35:17 +0800
Subject: [PATCH] 拣料出库任务优化

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java |   26 +++++---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/LocType.java                |    6 +-
 rsf-server/src/main/java/com/vincent/rsf/server/api/controller/params/TaskInParam.java    |   19 ++++++
 rsf-server/src/main/java/com/vincent/rsf/server/api/utils/LocUtils.java                   |    1 
 rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java         |   16 +++++
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java      |   80 +++++++++++++-------------
 6 files changed, 95 insertions(+), 53 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
index f41c681..703afe3 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
@@ -65,6 +65,22 @@
 
     }
 
+    /**
+     * 鎺ユ敹WCS璋冨害锛屽洖浼犳墽琛岀姸鎬�
+     *  //TODO 1. 鎷f枡鍑哄簱锛屽啀鍏ュ簱鎵ц锛屼慨鏀圭姸鎬佷负199.浠诲姟瀹屾垚  骞惰褰曞叆搴撶珯鐐癸紙婧愮珯鐐癸級锛屾坊鍔犱换鍔″彿鍙傛暟
+     *
+     * @param param
+     * @return
+     */
+    @ApiOperation("鎺ユ敹WCS璋冨害锛屽洖浼犳墽琛岀姸鎬�")
+    @PostMapping("/exce/status")
+    public R receiveTask(@RequestBody TaskInParam param) {
+        if (Cools.isEmpty(param)) {
+            return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+
+        return R.ok();
+    }
 
 
 
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/params/TaskInParam.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/params/TaskInParam.java
index 155829f..784df15 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/params/TaskInParam.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/params/TaskInParam.java
@@ -1,14 +1,33 @@
 package com.vincent.rsf.server.api.controller.params;
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import lombok.experimental.Accessors;
 
 @Data
+@Accessors(chain = true)
+@ApiModel(value = "TaskInParam", description = "WCS璋冨害鍙傛暟")
 public class TaskInParam {
 
+    @ApiModelProperty("浣滀笟绫诲瀷")
     private Integer ioType;  //浣滀笟绫诲瀷
+
+    @ApiModelProperty("浣滀笟绔欑偣 or 鏉ユ簮绔欑偣")
     private Integer sourceStaNo; //浣滀笟绔欑偣 or 鏉ユ簮绔欑偣
+
+    @ApiModelProperty("瀹瑰櫒鏉$爜")
     private String barcode; //瀹瑰櫒鏉$爜
+
+    @ApiModelProperty("搴撲綅绫诲瀷")
     private Integer locType1; //搴撲綅绫诲瀷
+
+    @ApiModelProperty("浠诲姟缂栫爜")
+    private String taskCode;
+
+//    @ApiModelProperty("搴撲綅绫诲瀷")
+//    private String locType;
+
     private Long user;
 //    private Integer locType2; //搴撲綅绫诲瀷
 //    private Integer locType3; //搴撲綅绫诲瀷
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
index 21e35c2..325480d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
@@ -118,7 +118,6 @@
     }
 
 
-
     /**
      * 楠岃瘉璁惧绔欑偣
      */
@@ -298,10 +297,11 @@
 //            waitPakinItems.forEach(item -> {
 //                TaskItem taskItem = new TaskItem();
 //                BeanUtils.copyProperties(item, taskItem);
-////                AsnOrder order = asnOrderService.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getId, item.getAsnId()));
-////                if (Objects.isNull(order)) {
-////                    throw new CoolException("鏁版嵁閿欒: 鍗曟嵁涓嶅瓨鍦紒锛�");
-////                }
+
+    /// /                AsnOrder order = asnOrderService.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getId, item.getAsnId()));
+    /// /                if (Objects.isNull(order)) {
+    /// /                    throw new CoolException("鏁版嵁閿欒: 鍗曟嵁涓嶅瓨鍦紒锛�");
+    /// /                }
 //                taskItem.setTaskId(task.getId())
 //                        .setOrderType(OrderType.ORDER_RECEIPT.type)
 //                        .setSource(item.getId())
@@ -327,19 +327,19 @@
 //        locNo.setWorkNo(ruleCode);
 //        return locNo;
 //    }
-
     public InTaskMsgDto getLocNo(TaskInParam param) {
-        String matnr = null; String batch = null;
+        String matnr = null;
+        String batch = null;
         List<WaitPakin> waitPakins = waitPakinService.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, param.getBarcode()));
         if (Cools.isEmpty(waitPakins) && param.getIoType().equals(TaskType.TASK_TYPE_IN.type)) {
             throw new CoolException("鏈壘鍒扮粍鎵樹俊鎭紝璇风粍鎵�");
-        }else if (!Cools.isEmpty(waitPakins)) {
+        } else if (!Cools.isEmpty(waitPakins)) {
             matnr = waitPakins.get(0).getCode();
             batch = waitPakins.get(0).getCode();
         }
         List<DeviceSite> deviceSites = deviceSiteService.list(new LambdaQueryWrapper<DeviceSite>()
                 .eq(DeviceSite::getSite, param.getSourceStaNo())
-                .eq(DeviceSite::getType,param.getIoType())
+                .eq(DeviceSite::getType, param.getIoType())
         );
         if (Cools.isEmpty(deviceSites)) {
             throw new CoolException("鏈壘鍒扮珯鐐硅矾寰勪俊鎭�");
@@ -356,18 +356,18 @@
         InTaskMsgDto dto = null;
         switch (warehouseArea.getType()) {
             case "CRN": //鍫嗗灈鏈�
-                dto = getLocNoCrn(deviceBind,warehouseArea.getId(), param.getSourceStaNo(), matnr,batch, locTypeDto, 0, param.getIoType());
+                dto = getLocNoCrn(deviceBind, warehouseArea.getId(), param.getSourceStaNo(), matnr, batch, locTypeDto, 0, param.getIoType());
                 break;
             case "SXC": //鍥涘悜搴�
                 break;
             case "CTU": //ctu
-                dto = getLocNoCtu(deviceBind,warehouseArea.getId(), param.getSourceStaNo(), matnr,batch, locTypeDto, 0, param.getIoType());
+                dto = getLocNoCtu(deviceBind, warehouseArea.getId(), param.getSourceStaNo(), matnr, batch, locTypeDto, 0, param.getIoType());
                 break;
         }
         return dto;
     }
 
-    private InTaskMsgDto getLocNoCrn(DeviceBind deviceBind,Long area,Integer sourceStaNo, String matnr, String batch,LocTypeDto locTypeDto, int times,Integer ioType){
+    private InTaskMsgDto getLocNoCrn(DeviceBind deviceBind, Long area, Integer sourceStaNo, String matnr, String batch, LocTypeDto locTypeDto, int times, Integer ioType) {
         if (Cools.isEmpty(matnr)) {  //鐗╂枡鍙�
             matnr = "";
         }
@@ -404,7 +404,7 @@
             throw new CoolException("鏃犲彲鐢ㄥ爢鍨涙満");
         }
         //鍏ュ簱闈犺繎鎽嗘斁
-        if (ioType== 1 && deviceBind.getBeSimilar().equals("1") && !Cools.isEmpty(matnr)) {
+        if (ioType == 1 && deviceBind.getBeSimilar().equals("1") && !Cools.isEmpty(matnr)) {
             if (nearRow != curRow) {
                 List<LocItem> locItems = locItemService.list(new LambdaQueryWrapper<LocItem>().eq(LocItem::getMatnrCode, matnr));
                 for (LocItem locItem : locItems) {
@@ -414,12 +414,12 @@
                     }
                     String shallowLocNo = LocUtils.getShallowLoc(slaveProperties, loc1.getCode());
                     // 妫�娴嬬洰鏍囧簱浣嶆槸鍚︿负绌哄簱浣�
-                    Loc shallowLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode,shallowLocNo));
+                    Loc shallowLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, shallowLocNo));
                     if (shallowLoc != null && shallowLoc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_O.type)) {
                         if (LocUtils.locMoveCheckLocTypeComplete(shallowLoc, locTypeDto)) {
-                                loc = shallowLoc;
-                                deviceNo = shallowLoc.getDeviceNo();
-                                break;
+                            loc = shallowLoc;
+                            deviceNo = shallowLoc.getDeviceNo();
+                            break;
 
                         }
                     }
@@ -457,9 +457,9 @@
                 .eq(DeviceSite::getSite, sourceStaNo)
                 .eq(DeviceSite::getDeviceCode, deviceNo)
         );
-        if (Cools.isEmpty(deviceSite)){
+        if (Cools.isEmpty(deviceSite)) {
             deviceNo = 0;
-        }else {
+        } else {
             inTaskMsgDto.setStaNo(Integer.parseInt(deviceSite.getDeviceSite()));
         }
 
@@ -476,7 +476,7 @@
                     .eq(Loc::getRow, nearRow)
                     .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
                     .eq(Loc::getType, locTypeDto.getLocType1())
-                    .eq(Loc::getAreaId,area)
+                    .eq(Loc::getAreaId, area)
                     .orderByAsc(Loc::getLev)
                     .orderByAsc(Loc::getCol)
             );
@@ -485,12 +485,12 @@
                     continue;
                 }
                 String shallowLoc = LocUtils.getDeepLoc(slaveProperties, locMast1.getCode());
-                if ((ioType== 1 && deviceBind.getBeSimilar().equals("1"))) {
+                if ((ioType == 1 && deviceBind.getBeSimilar().equals("1"))) {
                     //鐩镐技鐗╂枡鎵撳紑锛屽垽鏂繁搴撲綅鏈夋病鏈夎揣锛屾病璐у氨鏀炬繁搴撲綅锛屾湁璐у氨涓嶆搷浣�
                     Loc locMast2 = locService.getOne(new LambdaQueryWrapper<Loc>()
                             .eq(Loc::getRow, shallowLoc)
                             .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
-                            .eq(Loc::getAreaId,area)
+                            .eq(Loc::getAreaId, area)
                     );
                     if (!Cools.isEmpty(locMast2)) {
                         loc = locMast2;
@@ -500,17 +500,17 @@
                     //鐩镐技鐗╂枡鍏抽棴锛屽垽鏂繁搴撲綅鏈夋病鏈夎揣锛屾湁璐у氨鏀炬祬搴撲綅锛屾棤璐у氨涓嶆搷浣�
                     Loc locMast2 = locService.getOne(new LambdaQueryWrapper<Loc>()
                             .eq(Loc::getCode, shallowLoc)
-                            .in(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_D.type,LocStsType.LOC_STS_TYPE_F.type)
-                            .eq(Loc::getAreaId,area)
+                            .in(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_D.type, LocStsType.LOC_STS_TYPE_F.type)
+                            .eq(Loc::getAreaId, area)
                     );
                     if (!Cools.isEmpty(locMast2)) {
                         loc = locMast1;
                         break;
-                    }else{
+                    } else {
                         locMast2 = locService.getOne(new LambdaQueryWrapper<Loc>()
                                 .eq(Loc::getCode, shallowLoc)
                                 .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
-                                .eq(Loc::getAreaId,area)
+                                .eq(Loc::getAreaId, area)
                         );
                         if (!Cools.isEmpty(locMast2)) {
                             loc = locMast2;
@@ -529,7 +529,7 @@
                         Loc locMast2 = locService.getOne(new LambdaQueryWrapper<Loc>()
                                 .eq(Loc::getCode, shallowLoc)
                                 .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
-                                .eq(Loc::getAreaId,area)
+                                .eq(Loc::getAreaId, area)
                         );
                         if (!Cools.isEmpty(locMast2)) {
                             loc = locMast2;
@@ -537,8 +537,8 @@
                         } else {
                             locMast2 = locService.getOne(new LambdaQueryWrapper<Loc>()
                                     .eq(Loc::getCode, shallowLoc)
-                                    .in(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_D.type,LocStsType.LOC_STS_TYPE_D.type)
-                                    .eq(Loc::getAreaId,area)
+                                    .in(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_D.type, LocStsType.LOC_STS_TYPE_D.type)
+                                    .eq(Loc::getAreaId, area)
                             );
                             if (!Cools.isEmpty(locMast2)) {
                                 loc = locMast1;
@@ -556,12 +556,12 @@
         }
         //鏌ヨ褰撳墠搴撲綅绫诲瀷绌哄簱浣� 灏忎簬5涓垯locmast = null
         List<Loc> locTypeLocMasts = locService.list(new LambdaQueryWrapper<Loc>()
-                .eq(Loc::getUseStatus,LocStsType.LOC_STS_TYPE_O.type)
+                .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
                 .eq(Loc::getDeviceNo, deviceNo)
                 .eq(Loc::getType, locTypeDto.getLocType1())
-                .eq(Loc::getAreaId,area)
+                .eq(Loc::getAreaId, area)
         );
-        if (null !=locTypeLocMasts && locTypeLocMasts.size()<=5){
+        if (null != locTypeLocMasts && locTypeLocMasts.size() <= 5) {
             loc = null;
         }
         // 閫掑綊鏌ヨ
@@ -569,14 +569,14 @@
             // 褰撳墠宸烽亾鏃犵┖搴撲綅鏃讹紝閫掑綊璋冩暣鑷充笅涓�宸烽亾锛屾绱㈠叏閮ㄥ贩閬撴棤鏋滃悗锛岃烦鍑洪�掑綊
             if (times < rowCount * 2) {
                 times = times + 1;
-                return getLocNoCrn(deviceBind,area,sourceStaNo,matnr,batch,locTypeDto,times, ioType);
+                return getLocNoCrn(deviceBind, area, sourceStaNo, matnr, batch, locTypeDto, times, ioType);
 
             }
             // 2.搴撲綅褰撳墠鎵�灞炲昂瀵告棤绌哄簱浣嶆椂锛岃皟鏁村昂瀵稿弬鏁帮紝鍚戜笂鍏煎妫�绱㈠簱浣�
             if (locTypeDto.getLocType1() < 3) {
                 int i = locTypeDto.getLocType1() + 1;
                 locTypeDto.setLocType1(i);
-                return getLocNoCrn(deviceBind,area,sourceStaNo,matnr,batch,locTypeDto,0, ioType);
+                return getLocNoCrn(deviceBind, area, sourceStaNo, matnr, batch, locTypeDto, 0, ioType);
             }
             throw new CoolException("娌℃湁绌哄簱浣�");
         }
@@ -590,7 +590,7 @@
         return inTaskMsgDto;
     }
 
-    private InTaskMsgDto getLocNoCtu(DeviceBind deviceBind,Long area,Integer sourceStaNo, String matnr, String batch,LocTypeDto locTypeDto, int times,Integer ioType){
+    private InTaskMsgDto getLocNoCtu(DeviceBind deviceBind, Long area, Integer sourceStaNo, String matnr, String batch, LocTypeDto locTypeDto, int times, Integer ioType) {
         if (Cools.isEmpty(matnr)) {  //鐗╂枡鍙�
             matnr = "";
         }
@@ -608,7 +608,7 @@
                 .orderByAsc(Loc::getCol)
                 .orderByAsc(Loc::getRow)
         );
-        for (Loc loc2 :loc1){
+        for (Loc loc2 : loc1) {
             if (!LocUtils.locMoveCheckLocTypeComplete(loc2, locTypeDto)) {
                 continue;
             }
@@ -621,10 +621,10 @@
                 .eq(DeviceSite::getSite, sourceStaNo)
                 .eq(DeviceSite::getDeviceCode, loc.getDeviceNo())
         );
-        if (Cools.isEmpty(deviceSite)){
+        if (Cools.isEmpty(deviceSite)) {
             deviceNo = 0;
             loc = null;
-        }else {
+        } else {
             inTaskMsgDto.setStaNo(Integer.parseInt(deviceSite.getDeviceSite()));
         }
         // 閫掑綊鏌ヨ
@@ -632,14 +632,14 @@
             // 褰撳墠宸烽亾鏃犵┖搴撲綅鏃讹紝閫掑綊璋冩暣鑷充笅涓�宸烽亾锛屾绱㈠叏閮ㄥ贩閬撴棤鏋滃悗锛岃烦鍑洪�掑綊
             if (times < 5) {
                 times = times + 1;
-                return getLocNoCtu(deviceBind,area,sourceStaNo,matnr,batch,locTypeDto,times, ioType);
+                return getLocNoCtu(deviceBind, area, sourceStaNo, matnr, batch, locTypeDto, times, ioType);
 
             }
             // 2.搴撲綅褰撳墠鎵�灞炲昂瀵告棤绌哄簱浣嶆椂锛岃皟鏁村昂瀵稿弬鏁帮紝鍚戜笂鍏煎妫�绱㈠簱浣�
             if (locTypeDto.getLocType1() < 3) {
                 int i = locTypeDto.getLocType1() + 1;
                 locTypeDto.setLocType1(i);
-                return getLocNoCtu(deviceBind,area,sourceStaNo,matnr,batch,locTypeDto,0, ioType);
+                return getLocNoCtu(deviceBind, area, sourceStaNo, matnr, batch, locTypeDto, 0, ioType);
             }
             throw new CoolException("娌℃湁绌哄簱浣�");
         }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/utils/LocUtils.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/utils/LocUtils.java
index dc5064e..0c66250 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/utils/LocUtils.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/utils/LocUtils.java
@@ -150,6 +150,7 @@
         // 濡傛灉婧愬簱浣嶆槸楂樺簱浣嶏紝鐩爣搴撲綅鏄綆搴撲綅
         return dto.getLocType1().equals(Integer.parseInt(loc.getType()));
     }
+
     public static String zerofill(String msg, Integer count) {
         if (msg.length() == count) {
             return msg;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/enums/LocType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/LocType.java
similarity index 79%
rename from rsf-server/src/main/java/com/vincent/rsf/server/system/enums/LocType.java
rename to rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/LocType.java
index d3c44b8..c5ed998 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/system/enums/LocType.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/LocType.java
@@ -1,4 +1,4 @@
-package com.vincent.rsf.server.system.enums;
+package com.vincent.rsf.server.manager.enums;
 
 /**
  * @author Ryan
@@ -19,7 +19,7 @@
         this.desc = desc;
     }
 
-    private String type;
+    public String type;
 
-    private String desc;
+    public String desc;
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
index 7f4972a..10de96f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -3,19 +3,20 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.vincent.rsf.framework.common.Cools;
+import com.vincent.rsf.server.api.controller.params.TaskInParam;
 import com.vincent.rsf.server.manager.enums.*;
 import com.vincent.rsf.framework.common.R;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.api.utils.LocUtils;
 import com.vincent.rsf.server.manager.controller.params.GenerateTaskParams;
 import com.vincent.rsf.server.manager.entity.*;
-import com.vincent.rsf.server.manager.mapper.TaskItemMapper;
 import com.vincent.rsf.server.manager.mapper.TaskMapper;
 import com.vincent.rsf.server.manager.service.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vincent.rsf.server.manager.utils.LocManageUtil;
 import com.vincent.rsf.server.system.constant.SerialRuleCode;
 import com.vincent.rsf.server.system.enums.LocStsType;
+import com.vincent.rsf.server.manager.enums.LocType;
 import com.vincent.rsf.server.system.utils.SerialRuleUtils;
 import lombok.Synchronized;
 import org.apache.commons.lang3.StringUtils;
@@ -398,7 +399,6 @@
                     complateOutStock(task);
                 } else if (task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_IN.type)) {
                     //鎷f枡鍑哄簱
-                    //
                     pickTask(task.getId());
                     //绉婚櫎鍘熷搴撳瓨
                     complateOutStock(task);
@@ -448,7 +448,7 @@
                 throw new CoolException("鏁版嵁閿欒锛屼綔涓氫腑搴撳瓨鏁版嵁涓㈠け锛侊紒");
             }
             if (locWorking.getAnfme().compareTo(taskItem.getAnfme()) >= 0) {
-               locWorking.setAnfme(Math.round((locWorking.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0);
+                locWorking.setAnfme(Math.round((locWorking.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0);
             } else {
                 continue;
             }
@@ -458,13 +458,13 @@
             items.add(locItem);
         }
 
-       if (!locItemService.saveBatch(items)) {
-           throw new CoolException("浣滀笟搴撳瓨鍥炲啓澶辫触锛侊紒");
-       }
+        if (!locItemService.saveBatch(items)) {
+            throw new CoolException("浣滀笟搴撳瓨鍥炲啓澶辫触锛侊紒");
+        }
 
-       if (!locItemWorkingService.remove(new LambdaQueryWrapper<LocItemWorking>().eq(LocItemWorking::getTaskId, task.getId()))) {
-           throw new CoolException("浣滀笟涓簱瀛樺垹闄ゅけ璐ワ紒锛�");
-       }
+        if (!locItemWorkingService.remove(new LambdaQueryWrapper<LocItemWorking>().eq(LocItemWorking::getTaskId, task.getId()))) {
+            throw new CoolException("浣滀笟涓簱瀛樺垹闄ゅけ璐ワ紒锛�");
+        }
 
     }
 
@@ -570,11 +570,17 @@
                 .setTaskType(TaskType.TASK_TYPE_PICK_IN.type)
                 .setBarcode(task.getBarcode())
                 .setTaskStatus(TaskStsType.GENERATE_IN.id);
+        //TODO 鍚庣画闇�鏍规嵁浠撳簱绫诲瀷鏌ユ壘鏂板簱浣嶏紝鍘熷搴撲綅缃┖闂茬姸鎬� {
+        // TaskInParam param = new TaskInParam();
+        //        param.setSourceStaNo(Integer.parseInt(task.getOrgSite()))
+        //                .setIoType(Integer.parseInt(TaskType.TASK_TYPE_IN.type + ""));
+        ////                .setLocType1(LocType.LOC_TYPE_LOW.type);}
+
         if (!this.updateById(task)) {
             throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐ワ紒锛�");
         }
 
-        //TODO 鍚庣画闇�鏍规嵁浠撳簱绫诲瀷鏌ユ壘鏂板簱浣嶏紝鍘熷搴撲綅缃┖闂茬姸鎬�
+
         List<LocItemWorking> workings = new ArrayList<>();
         for (LocItem item : locItems) {
             LocItemWorking working = new LocItemWorking();

--
Gitblit v1.9.1