From 2bf65500161ae37c120d0d9af8f6d8dd7afdec75 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 16 五月 2023 14:53:14 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/locMast/locMast.html                  |    2 
 src/main/java/com/zy/asrs/controller/LocMastController.java |   16 +-
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   36 ++++--
 src/main/webapp/static/js/basDevp/basDevp.js                |    2 
 src/main/java/com/zy/asrs/entity/BasDevp.java               |   25 +++-
 src/main/resources/mapper/LocMastMapper.xml                 |   11 +
 src/main/java/com/zy/asrs/task/handler/StandingHandler.java |   11 +
 src/main/java/com/zy/common/web/WcsController.java          |    4 
 src/main/java/com/zy/asrs/task/MoveLocScheduler.java        |    3 
 src/main/java/com/zy/asrs/utils/PostMesDataUtils.java       |   10 -
 src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java  |  190 ++++++++++++++++++++++++++++++-
 src/main/java/com/zy/asrs/task/FireHeartScheduler.java      |    2 
 src/main/java/com/zy/asrs/entity/LocMast.java               |   11 +
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |    2 
 src/main/java/com/zy/common/service/CommonService.java      |   34 +++--
 15 files changed, 295 insertions(+), 64 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocMastController.java b/src/main/java/com/zy/asrs/controller/LocMastController.java
index ae31ef8..f096994 100644
--- a/src/main/java/com/zy/asrs/controller/LocMastController.java
+++ b/src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -82,7 +82,11 @@
                 wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                 wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
             } else {
-                wrapper.like(entry.getKey(), val);
+                if (entry.getKey().equals("loc_type2")){
+                    wrapper.eq(entry.getKey(), val);
+                }else {
+                    wrapper.like(entry.getKey(), val);
+                }
             }
         }
     }
@@ -197,20 +201,20 @@
                     locMast.setBay1(b); // 鍒�
                     locMast.setLev1(l); // 灞�
                     locMast.setCrnNo(crnNo); // 鍫嗗灈鏈�
-                    locMast.setLocType1(!Cools.isEmpty(param.getLocType1()) ? param.getLocType1() : 1);
-                    locMast.setLocType2(param.getLocType2());
-                    locMast.setLocType3(param.getLocType3());
+                    locMast.setLocType1((short)0);
+                    locMast.setLocType2((short)0);
+                    locMast.setLocType3((short)0);
                     locMast.setAppeUser(getUserId());
                     locMast.setAppeTime(now);
                     locMast.setModiUser(getUserId());
                     locMast.setModiTime(now);
-                    if (r==equipmentRow){
+                    if (r==equipmentRow && b<3){
                         locMast.setChannel(l+(b-2)*param.getEndLev());
                         locMast.setLocType1((short)1);
                         int i = (locMast.getChannel() - 1) / (channelMax / equipmentCount) + 1;
                         locMast.setLocType2((short)i);
                     }
-                    if (r==quietRow){
+                    if (r==quietRow && b<3){
                         locMast.setLocType1((short)2);
                     }
                     list.add(locMast);
diff --git a/src/main/java/com/zy/asrs/entity/BasDevp.java b/src/main/java/com/zy/asrs/entity/BasDevp.java
index 78ca14c..34bc6c8 100644
--- a/src/main/java/com/zy/asrs/entity/BasDevp.java
+++ b/src/main/java/com/zy/asrs/entity/BasDevp.java
@@ -228,9 +228,13 @@
             case 0:
                 return "鏈煡";
             case 1:
-                return "浣庡簱浣�";
+                return "娴嬭瘯搴撲綅";
             case 2:
-                return "楂樺簱浣�";
+                return "闈欑疆搴撲綅";
+            case 3:
+                return "娴嬭瘯鍓嶆殏瀛樺簱浣�";
+            case 4:
+                return "NG搴撲綅";
             default:
                 return String.valueOf(this.locType1);
         }
@@ -240,13 +244,22 @@
         if (null == this.locType2){ return null; }
         switch (this.locType2){
             case 0:
-                return "鏈煡";
+                return "";
             case 1:
-                return "绐勫簱浣�";
+                return "1鍙�";
             case 2:
-                return "瀹藉簱浣�";
+                return "2鍙�";
+            case 3:
+                return "3鍙�";
+            case 4:
+                return "4鍙�";
+            case 5:
+                return "5鍙�";
+            case 6:
+                return "6鍙�";
             default:
-                return String.valueOf(this.locType2);
+//                return String.valueOf(this.locType2);
+                return "";
         }
     }
 
diff --git a/src/main/java/com/zy/asrs/entity/LocMast.java b/src/main/java/com/zy/asrs/entity/LocMast.java
index c9ab2f0..3d386fd 100644
--- a/src/main/java/com/zy/asrs/entity/LocMast.java
+++ b/src/main/java/com/zy/asrs/entity/LocMast.java
@@ -90,11 +90,11 @@
     @TableField("loc_type")
     private String locType;
 
-    @ApiModelProperty(value= "楂樹綆绫诲瀷{0:鏈煡,1:浣庡簱浣�,2:楂樺簱浣峿")
+    @ApiModelProperty(value= "搴撲綅绫诲瀷锛�1锛氭祴璇曞簱浣嶃��2锛氶潤缃簱浣嶃��3锛氭祴璇曞墠鏆傚瓨搴撲负銆�4锛氭祴璇曞け璐ュ簱浣嶃��0锛氭湭鐭�")
     @TableField("loc_type1")
     private Short locType1;
 
-    @ApiModelProperty(value= "瀹界獎绫诲瀷{0:鏈煡,1:绐勫簱浣�,2:瀹藉簱浣峿")
+    @ApiModelProperty(value= "閫氶亾锛�1銆�2銆�3銆�4銆�5銆�6")
     @TableField("loc_type2")
     private Short locType2;
 
@@ -236,6 +236,10 @@
                 return "娴嬭瘯搴撲綅";
             case 2:
                 return "闈欑疆搴撲綅";
+            case 3:
+                return "娴嬭瘯鍓嶆殏瀛樺簱浣�";
+            case 4:
+                return "NG搴撲綅";
             default:
                 return String.valueOf(this.locType1);
         }
@@ -259,7 +263,8 @@
             case 6:
                 return "6鍙�";
             default:
-                return String.valueOf(this.locType2);
+//                return String.valueOf(this.locType2);
+                return "";
         }
     }
 
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 4722c0b..367f64b 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -604,7 +604,7 @@
             matNew.setTagId(tag.getId());
             matNew.setMatnr(param.getPackName());
             matNew.setMaktx(param.getPackName());
-            matNew.setDeadWarn(mat.getDeadWarn());
+            matNew.setDeadWarn(480);//8灏忔椂  480鍒嗛挓
             matNew.setCreateBy(9999L);//9999琛ㄧずerp涓嬪彂
             matNew.setCreateTime(new Date());
             matNew.setUpdateBy(9999L);//9999琛ㄧずerp涓嬪彂
diff --git a/src/main/java/com/zy/asrs/task/FireHeartScheduler.java b/src/main/java/com/zy/asrs/task/FireHeartScheduler.java
index 1efa380..8c90bac 100644
--- a/src/main/java/com/zy/asrs/task/FireHeartScheduler.java
+++ b/src/main/java/com/zy/asrs/task/FireHeartScheduler.java
@@ -20,7 +20,7 @@
     /**
      *
      */
-    @Scheduled(cron = "0/60 * * * * ? ")
+//    @Scheduled(cron = "0/60 * * * * ? ")
     private void execute() {
         if (!confirmDeep) return;
 
diff --git a/src/main/java/com/zy/asrs/task/MoveLocScheduler.java b/src/main/java/com/zy/asrs/task/MoveLocScheduler.java
index 4b3fea3..da5e068 100644
--- a/src/main/java/com/zy/asrs/task/MoveLocScheduler.java
+++ b/src/main/java/com/zy/asrs/task/MoveLocScheduler.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.task;
 
+import com.zy.asrs.service.LocMastService;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.asrs.task.handler.FireOutHandler;
 import com.zy.asrs.task.handler.MoveLocHandler;
@@ -17,6 +18,8 @@
     private boolean confirmDeep;
     @Autowired
     private MoveLocHandler moveLocHandler;
+    @Autowired
+    private LocMastService locMastService;
 
     /**
      *
diff --git a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java
index f7a0697..7ba0c1e 100644
--- a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java
@@ -2,14 +2,16 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.core.common.DateUtils;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
-import com.zy.asrs.service.LocDetlService;
-import com.zy.asrs.service.LocMastService;
-import com.zy.asrs.service.TestMastService;
-import com.zy.asrs.service.WorkService;
+import com.zy.asrs.entity.param.CombParam;
+import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.utils.PostMesDataUtils;
+import com.zy.common.model.enums.WorkNoType;
+import com.zy.common.service.CommonService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -35,18 +37,31 @@
     private TestMastService testMastService;
     @Autowired
     private WorkService workService;
+    @Autowired
+    private WrkMastService wrkMastService;
+    @Autowired
+    private CommonService commonService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
 
     @Value("${channel.equipmentRow}")
     private Integer equipmentRow;  //娴嬭瘯搴撲綅鎵�鍦ㄦ帓鍙�
     @Value("${channel.quietRow}")
     private Integer quietRow;  //闈欑疆搴撲綅鎵�鍦ㄦ帓鍙�
 
+    @Value("${mes.url}")
+    private String mesUrl;
+
+    @Value("${mes.inPath}")
+    private String inpath;
+
     @Transactional
     public ReturnT<String> start() {
+        //娴嬭瘯澶辫触锛圢G锛夌Щ搴�
         try {
             List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("loc_sts", "F")
-                    .eq("pack_status", 3)
+                    .eq("pack_status", 4)
                     .eq("row1", equipmentRow)
                     .eq("loc_type1", (short) 1)
                     .eq("fire_status",0)
@@ -61,12 +76,13 @@
                     if (!Cools.isEmpty(testMast)){
                         if (testMast.getStatus()==4){
                             //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅
-                            LocMast targetLocNo = locMastService.queryFreeLocMast(quietRow,(short)2);
+                            LocMast targetLocNo = locMastService.queryFreeLocMast(2,(short)4);
                             if (Cools.isEmpty(targetLocNo)){
-                                targetLocNo=locMastService.queryFreeLocMast(equipmentRow,(short)2);
+                                targetLocNo=locMastService.queryFreeLocMast(1,(short)4);
                             }
                             if (targetLocNo != null){
                                 workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)Integer.parseInt(testMast.getUserId()));
+                                return SUCCESS;
                             }else {
                                 log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->娌℃湁绌哄簱浣�!");
                             }
@@ -83,7 +99,167 @@
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return FAIL.setMsg(e.getMessage());
         }
+
+        //娴嬭瘯鎴愬姛 鍑哄簱銆佺Щ搴�
+        try {
+            List<LocMast> locMasts2 = locMastService.selectList(new EntityWrapper<LocMast>()
+                    .eq("loc_sts", "F")
+                    .eq("pack_status", 4)
+                    .eq("row1", equipmentRow)
+                    .eq("loc_type1", (short) 1)
+                    .eq("fire_status",0)
+            );
+            if (!Cools.isEmpty(locMasts2)){
+                for (LocMast locMast:locMasts2){
+                    TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
+                            .eq("loc_no",locMast.getLocNo())
+                            .eq("barcode",locMast.getBarcode())
+                            .eq("status",4)
+                    );
+                    if (!Cools.isEmpty(testMast)){
+                        if (testMast.getStatus()==4){
+                            //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅
+                            LocMast targetLocNo = locMastService.queryFreeLocMast(4,(short)2);
+                            if (Cools.isEmpty(targetLocNo)){
+                                targetLocNo=locMastService.queryFreeLocMast(3,(short)2);
+                            }
+                            if (targetLocNo != null){
+                                //鐢熸垚鍑哄簱浠诲姟
+                                if (outLoc(locMast)){
+                                    return SUCCESS;
+                                }
+                            }else {
+                                //3\4鎺掓弧  鍚�2鎺掔Щ搴擄紝鏌ヨ鐩爣搴撲綅
+                                targetLocNo = locMastService.queryFreeLocMast(2,(short)2);
+                                if (Cools.isEmpty(targetLocNo)){
+                                    targetLocNo=locMastService.queryFreeLocMast(1,(short)2);
+                                }
+                                if (targetLocNo != null){
+                                    workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)Integer.parseInt(testMast.getUserId()));
+                                    return SUCCESS;
+                                }else {
+                                    log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->娌℃湁绌哄簱浣�!");
+                                }
+                            }
+                        }else if (testMast.getStatus()!=4) {
+                            log.error("娴嬭瘯鐘舵�佸紓甯�,搴撲綅鍙蜂负锛�" + testMast.getLocNo());
+                        }
+                    }else {
+                        log.error("娴嬭瘯搴撲綅锛�"+locMast.getLocNo()+"鎵�灞炴祴璇曟。涓虹┖鎴栬�呬笉鐘舵�佷负4");
+                    }
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        }
+
+        //娴嬭瘯鏈夌┖搴撲綅 绉诲簱
+        try {
+            List<LocMast> locMasts3 = locMastService.selectList(new EntityWrapper<LocMast>()
+                    .eq("loc_sts", "F")
+                    .eq("pack_status", 0)
+                    .eq("loc_type1", (short) 3)
+                    .eq("fire_status",0)
+            );
+            if (!Cools.isEmpty(locMasts3)){
+                for (LocMast locMast:locMasts3){
+                    //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅
+                    LocMast targetLocNo = locMastService.queryFreeLocMast(equipmentRow,(short)1);
+                    if (targetLocNo != null){
+                        workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)9999);
+                    }else {
+//                        log.error("鍚戞祴璇曞簱浣嶇Щ搴撳け璐�--->绛夊緟绌哄簱浣�!");
+                    }
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        }
         return SUCCESS;
     }
 
+    public boolean outLoc(LocMast locMast){
+        try {
+            Date now = new Date();
+            Integer ioType = 101;   //鍏ュ嚭搴撶被鍨�
+            LocDetl locDetl=locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no",locMast.getLocNo()));
+            if (Cools.isEmpty(locDetl)){
+                log.error("搴撲綅:"+locMast.getLocNo()+"娌℃湁鏄庣粏");
+            } else if (Cools.isEmpty(locDetl.getDeadWarn())){
+                log.error("搴撲綅:"+locMast.getLocNo()+"娌℃湁闈欑疆鏃堕棿");
+            } else if (Cools.isEmpty(locMast.getModiTime())){
+                log.error("搴撲綅:"+locMast.getLocNo()+"modiTime涓虹┖");
+            } else if (Cools.isEmpty(locMast.getBarcode())){
+                log.error("搴撲綅:"+locMast.getLocNo()+"Pack鐮佷负绌�");
+            } else {
+                // 鐢熸垚宸ヤ綔鍙�
+                int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
+                // 鐢熸垚宸ヤ綔妗�
+                WrkMast wrkMast = new WrkMast();
+                wrkMast.setWrkNo(workNo);
+                wrkMast.setIoTime(now);
+                wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+                wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
+                wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+                wrkMast.setCrnNo(1);
+                wrkMast.setSourceStaNo(203); // 婧愮珯
+                wrkMast.setStaNo(205); // 鐩爣绔�  2鍙峰爢鍨涙満鍏ュ簱绔�
+                wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
+                wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+                wrkMast.setPicking("N"); // 鎷f枡
+                wrkMast.setExitMk("N"); // 閫�鍑�
+                wrkMast.setEmptyMk("N"); // 绌烘澘
+                wrkMast.setLinkMis("N");
+                wrkMast.setBarcode(locMast.getBarcode());
+                wrkMast.setAppeTime(now);
+                wrkMast.setModiTime(now);
+                if (!wrkMastService.insert(wrkMast)) {
+                    log.error("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+locMast.getLocNo());
+                    return false;
+                }
+                // 鐢熸垚宸ヤ綔妗f槑缁�
+                WrkDetl wrkDetl = new WrkDetl();
+                wrkDetl.sync(locDetl);
+                wrkDetl.setWrkNo(workNo);
+                wrkDetl.setIoTime(now);
+                wrkDetl.setAnfme(1.0); // 鏁伴噺
+                wrkDetl.setAppeTime(now);
+                wrkDetl.setModiTime(now);
+                if (!wrkDetlService.insert(wrkDetl)) {
+                    log.error("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+                    return false;
+                }
+                // 淇敼搴撲綅鐘舵��:   F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害
+                if (locMast.getLocSts().equals("F")) {
+                    locMast.setLocSts("R");
+                    locMast.setModiTime(now);
+                    locMast.setPackStatus(6); //6:闈欑疆瀹屾垚
+
+                    CombParam combParam = new CombParam();
+                    combParam.setPackNo(locMast.getBarcode());
+                    combParam.setLocNo(locMast.getLocNo());
+                    combParam.setPackSts(6);
+                    combParam.setRequestTime(DateUtils.convert(new Date()));
+                    new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam);
+
+                    if (!locMastService.updateById(locMast)) {
+                        log.error("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locMast.getLocNo());
+                        return false;
+                    }else {
+                        return true;
+                    }
+                } else {
+                    log.error(locMast.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+                }
+            }
+            return false;
+        } catch (Exception e) {
+            return false;
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/task/handler/StandingHandler.java b/src/main/java/com/zy/asrs/task/handler/StandingHandler.java
index 0cfdb7f..dee9a46 100644
--- a/src/main/java/com/zy/asrs/task/handler/StandingHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/StandingHandler.java
@@ -63,7 +63,8 @@
             List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("fire_status", 0)
                     .eq("loc_sts", "F")
-                    .eq("pack_status", 5));
+                    .eq("loc_type1",(short)2)
+                    .eq("pack_status", 6));
             Integer ioType = 101;   //鍏ュ嚭搴撶被鍨�
             //闈欑疆瀹屾垚鍑哄簱绔�104
             for(LocMast locMast : locMasts){
@@ -86,8 +87,12 @@
                     wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
                     wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
                     wrkMast.setIoPri(13D); // 浼樺厛绾э細13
-                    wrkMast.setCrnNo(1);
-                    wrkMast.setSourceStaNo(107); // 婧愮珯
+                    wrkMast.setCrnNo(locMast.getCrnNo());
+                    if (wrkMast.getCrnNo()==1){
+                        wrkMast.setSourceStaNo(203); // 婧愮珯
+                    }else {
+                        wrkMast.setSourceStaNo(210); // 婧愮珯
+                    }
                     wrkMast.setStaNo(104); // 鐩爣绔�
                     wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
                     wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index adf9caa..c78edef 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -155,22 +155,27 @@
                         locMast.setModiTime(now);
                         locMast.setFireStatus(0);
                         if (locMast.getCrnNo()==1){
-                            locMast.setPackStatus(1);
+                            if (locMast.getLocType1()==1){
+                                locMast.setPackStatus(1);
+                            }else {
+                                locMast.setPackStatus(0);
+                            }
                         }else {
-                            locMast.setPackStatus(6);
+                            locMast.setPackStatus(5);
+                            TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
+                                    .eq("barcode",locMast.getBarcode())
+                                    .eq("status",4)
+                            );
+                            testMast.setStatus(5);
+                            testMast.setModiTime(new Date());
+                            if (!testMastService.update(testMast,new EntityWrapper<TestMast>().eq("barcode",locMast.getBarcode()).eq("status",4))){
+                                throw new CoolException("鏇存敼娴嬭瘯鐘舵�佸け璐�");
+                            }
                         }
                         if (!locMastService.updateById(locMast)) {
 //                            exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                             return FAIL.setMsg("鍏ㄦ澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
-                        }else {
-                            //2.鍏ュ簱瀹屾垚
-                            CombParam combParam = new CombParam();
-                            combParam.setPackNo(locMast.getBarcode());
-                            combParam.setLocNo(locMast.getLocNo());
-                            combParam.setPackSts(2);
-                            combParam.setRequestTime(DateUtils.convert(new Date()));
-                            new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam);
                         }
                     }
                     break;
@@ -327,10 +332,17 @@
                     locMast.setIoTime(now);
                     locMast.setModiTime(now);
                     locMast.setFireStatus(0);
-                    if (locMast.getLocType1()==sourceLoc.getLocType1()){
+
+                    if (locMast.getLocType1().equals(sourceLoc.getLocType1())){
                         locMast.setPackStatus(packStatus);
+                    }else if (locMast.getLocType1().equals((short)1) && sourceLoc.getLocType1().equals((short)3)){
+                        locMast.setPackStatus(1);
                     }else {
-                        locMast.setPackStatus(5); //5:闈欑疆涓�
+                        if (locMast.getLocType1().equals((short)4)){
+                            locMast.setPackStatus(4); //4:NG
+                        }else {
+                            locMast.setPackStatus(5); //5:闈欑疆涓�
+                        }
                         if (locMast.getLocType1()==1 && sourceLoc.getLocType1()==2){
                             TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>()
                                     .eq("loc_no",sourceLoc.getLocNo())
diff --git a/src/main/java/com/zy/asrs/utils/PostMesDataUtils.java b/src/main/java/com/zy/asrs/utils/PostMesDataUtils.java
index 0b46fe5..981975b 100644
--- a/src/main/java/com/zy/asrs/utils/PostMesDataUtils.java
+++ b/src/main/java/com/zy/asrs/utils/PostMesDataUtils.java
@@ -4,6 +4,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.core.exception.CoolException;
 import com.zy.asrs.service.ApiLogService;
+import com.zy.asrs.service.impl.ApiLogServiceImpl;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.common.utils.HttpHandler;
@@ -13,15 +14,10 @@
 
 @Slf4j
 public class PostMesDataUtils extends AbstractHandler<String> {
-    @Autowired
-    private ApiLogService apiLogService;
-    @Value("${mes.start}")
-    private boolean start;  //涓婃姤寮�鍏�
+
+    private ApiLogService apiLogService = new ApiLogServiceImpl();
 
     public ReturnT<String> postMesData(String name,String URL,String mesPath, Object combParam){
-        if (!start){
-            return SUCCESS;
-        }
         if(combParam != null){
             String response = "";
             boolean success = false;
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 71ddedc..1528742 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -159,19 +159,29 @@
         rowLastno.setCurrentRow(curRow);
         rowLastnoService.updateById(rowLastno);
 
-        // 寮�濮嬫煡鎵惧簱浣� ==============================>
-        int ruleId = Integer.parseInt(Parameter.get().getFindLocRule());
-        if (whsType != 1) {
-            locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1());
-        } else if (ruleId == 1) {  //鎸夋祴璇曡澶囨帓搴忥紝浼樺厛鎺掓弧鍗曞彴璁惧
-            locMast = locMastService.queryFreeLocMast1(curRow, locTypeDto.getLocType1(), channelMax + 1);
-        } else if (ruleId == 2) {  //鎸夐�氶亾鎺掑簭锛屽潎鍖�鍒嗛厤姣忓彴璁惧
-            Short locType2 = getLocType2Small(curRow, locTypeDto.getLocType1());
-            locMast = locMastService.queryFreeLocMast2(curRow, locTypeDto.getLocType1(), locType2);
-        } else { //榛樿瑙勫垯
+        if (crnNo==1){
+            LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", "F").eq("loc_type2", (short) 3));
+            if (!Cools.isEmpty(locMast1)){
+                locMast = locMastService.queryFreeLocMast(2,(short)3);
+                if (Cools.isEmpty(locMast)){
+                    locMast = locMastService.queryFreeLocMast(1,(short)3);
+                }
+            }
+        }
 
-
-
+        if (Cools.isEmpty(locMast)){
+            // 寮�濮嬫煡鎵惧簱浣� ==============================>
+            int ruleId = Integer.parseInt(Parameter.get().getFindLocRule());
+            if (whsType != 1) {
+                locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1());
+            } else if (ruleId == 1) {  //鎸夋祴璇曡澶囨帓搴忥紝浼樺厛鎺掓弧鍗曞彴璁惧
+                locMast = locMastService.queryFreeLocMast1(curRow, locTypeDto.getLocType1(), channelMax + 1);
+            } else if (ruleId == 2) {  //鎸夐�氶亾鎺掑簭锛屽潎鍖�鍒嗛厤姣忓彴璁惧
+                Short locType2 = getLocType2Small(curRow, locTypeDto.getLocType1());
+                locMast = locMastService.queryFreeLocMast2(curRow, locTypeDto.getLocType1(), locType2);
+            } else { //榛樿瑙勫垯
+                locMast = locMastService.queryFreeLocMast(curRow, locTypeDto.getLocType1());
+            }
         }
 
         // 2.搴撲綅褰撳墠鎵�灞炲昂瀵告棤绌哄簱浣嶆椂锛岃皟鏁村昂瀵稿弬鏁帮紝鍚戜笂鍏煎妫�绱㈠簱浣�
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 96df0d0..b00ca42 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -88,11 +88,11 @@
             }
         }
         if (Cools.isEmpty(param.getLocType1())){
-            return R.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
+            param.setLocType1((short)1);
         }
 
         // 婧愮珯鐐圭姸鎬佹娴�
-        BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), true);
+        BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), false);
 //        sourceStaNo.setLocType1(param.getLocType1());
         sourceStaNo.setLocType1((short)1);
         LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index 80d26a6..9fd687c 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -46,9 +46,14 @@
         from asr_loc_mast
         where row1=#{row}
         and loc_sts='O'
-        <if test="locType1 != null">
-            and loc_type1 != 1
-        </if>
+        <choose>
+            <when test="locType1 != null">
+                and loc_type1 = #{locType1}
+            </when>
+            <otherwise>
+                and 1!=1
+            </otherwise>
+        </choose>
         order by lev1 asc,bay1 asc
     </select>
 
diff --git a/src/main/webapp/static/js/basDevp/basDevp.js b/src/main/webapp/static/js/basDevp/basDevp.js
index 535e6e7..762d366 100644
--- a/src/main/webapp/static/js/basDevp/basDevp.js
+++ b/src/main/webapp/static/js/basDevp/basDevp.js
@@ -77,7 +77,7 @@
                 }}
             ,{field: 'wrkNo', align: 'center',title: '宸ヤ綔鍙�', edit:true,  style:'color: blue;font-weight: bold'}
             // ,{field: 'wrkNo1', align: 'center',title: ''}
-            ,{field: 'locType1$', align: 'center',title: '楂樹綆'}
+            ,{field: 'locType1$', align: 'center',title: '搴撲綅绫诲瀷'}
             ,{field: 'barcode', align: 'center',title: '鏉″舰鐮�'}
             ,{field: 'inQty', align: 'center',title: '鍏ュ簱鏆傚瓨'}
             // ,{field: 'row1', align: 'center',title: ''}
diff --git a/src/main/webapp/views/locMast/locMast.html b/src/main/webapp/views/locMast/locMast.html
index 1e147cf..8e62639 100644
--- a/src/main/webapp/views/locMast/locMast.html
+++ b/src/main/webapp/views/locMast/locMast.html
@@ -65,6 +65,8 @@
                 <!--                    <option style="display: none"></option>-->
                 <option value="">璁惧鍙�</option>
                 <option value="0">闈欑疆搴撲綅</option>
+                <option value="10">NG搴撲綅</option>
+                <option value="11">娴嬭瘯鍓嶆殏瀛樺簱浣�</option>
                 <option value="1">1鍙�</option>
                 <option value="2">2鍙�</option>
                 <option value="3">3鍙�</option>

--
Gitblit v1.9.1