From 4ca7e95c87431a19ac75db388ff408f0b2df9a9c Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 21 十二月 2023 15:19:58 +0800
Subject: [PATCH] Merge branch 'tzskasrs-1' of http://47.97.1.152:5880/r/zy-asrs into tzskasrs-1
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 85 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 78 insertions(+), 7 deletions(-)
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 2217aec..188d814 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,6 +1,8 @@
package com.zy.asrs.service.impl;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.BaseRes;
@@ -281,6 +283,53 @@
dtos.add(new OutLocDto(locNo, locDetlDto));
}
}
+
+ //妫�娴嬫槸鍚︿负娴呭簱浣�
+ boolean sign=false;
+ String th = "";
+ for (String locNo : locNos) {
+ if (sign) {
+ break;
+ }
+
+ List<String> groupOuterLoc = Utils.getGroupOuterLoc(locNo);
+ if (!Cools.isEmpty(groupOuterLoc)) {
+ for (String outerLoc : groupOuterLoc) {
+ if (locNos.contains(outerLoc)) {
+ continue;
+ }
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", outerLoc));
+ if (locMast != null) {
+ if (!locMast.getLocSts().equals("O") && !locMast.getLocSts().equals("R")) {
+ sign = true;
+ th = "搴撲綅鍙凤細" + locNo + " 娴呭簱浣嶆湁闈炵┖搴撲綅锛�";
+ break;
+ }
+ }
+ }
+ }
+ }
+ if (sign){
+ throw new CoolException("鍑哄簱澶辫触锛�"+th);
+ }
+
+ //**************325銆�331銆�333銆�339绔欑偣棰濆閫昏緫浠g爜**************
+ HashMap<String, Object> tmpMap = new HashMap<>();
+ if (staNo.getDevNo() == 325 || staNo.getDevNo() == 331 || staNo.getDevNo() == 333 || staNo.getDevNo() == 339) {
+ int[] data = {325,331,333,339};
+ for (String locNo : locNos) {
+ List<String> groupOuterLoc = Utils.getGroupDeepLoc(locNo);
+ if (groupOuterLoc.isEmpty()) {
+ continue;
+ }
+ int index = 0;
+ for (String loc : groupOuterLoc) {
+ tmpMap.put(loc, data[index++]);
+ }
+ }
+ }
+ //**************325銆�331銆�333銆�339绔欑偣棰濆閫昏緫浠g爜**************
+
Integer ioType = null;
List<String> excludeLocNos = dtos.stream().map(OutLocDto::getLocNo).distinct().collect(Collectors.toList());
// 鐢熸垚宸ヤ綔妗�
@@ -314,6 +363,13 @@
if (stnNo == 325 || stnNo == 331 || stnNo == 333 || stnNo == 339) {
stnNo = staDesc.getCrnStn();
sourceStaNo = staDesc.getStnNo();
+
+ //**************325銆�331銆�333銆�339绔欑偣棰濆閫昏緫浠g爜**************
+ Object autoStnNo = tmpMap.get(dto.getLocNo());//鑾峰彇绯荤粺鑷姩鍒嗛厤绔欑偣
+ if (autoStnNo != null) {
+ sourceStaNo = Integer.parseInt(autoStnNo.toString());
+ }
+ //**************325銆�331銆�333銆�339绔欑偣棰濆閫昏緫浠g爜**************
}
int lev = Utils.getLev(dto.getLocNo());
@@ -854,7 +910,7 @@
while (iterator1.hasNext()) {
LocDetlAdjustParam.LocDetlAdjust adjust = iterator1.next();
if (adjust.getCount() == 0) { continue; }
- if (locDetl.getMatnr().equals(adjust.getMatnr()) && Cools.eq(locDetl.getBatch(), adjust.getBatch())) {
+ if (locDetl.getMatnr().equals(adjust.getMatnr()) && Cools.eq(locDetl.getBatch(), adjust.getBatch()) && Cools.eq(locDetl.getSuppCode(),adjust.getSuppCode()) && Cools.eq(locDetl.getThreeCode(),adjust.getThreeCode()) && Cools.eq(locDetl.getDeadTime(),adjust.getDeadTime())) {
if (!locDetl.getAnfme().equals(adjust.getCount())) {
// todo 鐩樼偣璁板綍
// 淇敼搴撳瓨
@@ -1159,13 +1215,28 @@
}
private void generateAgvWaitpakin(WrkDetl wrkDetl){
- Order order = orderService.selectByNo(wrkDetl.getOrderNo());
- DocType docType = docTypeService.selectById(order.getDocType());
- if("浜哄伐琛ヨ揣鍗�".equals(docType.getDocName())){
- AgvWaitPakin agvWaitPakin = new AgvWaitPakin();
- BeanUtils.copyProperties(wrkDetl,agvWaitPakin);
- agvWaitPakinService.insert(agvWaitPakin);
+ String orderNo = wrkDetl.getOrderNo();
+ if(orderNo.contains("{")){
+ JSONArray orderArray = JSON.parseArray(orderNo);
+ for (Object o : orderArray){
+ JSONObject jsonobject = (JSONObject) o;
+ Order order = orderService.selectByNo(jsonobject.get("orderNo").toString());
+ DocType docType = docTypeService.selectById(order.getDocType());
+ if("浜哄伐琛ヨ揣鍗�".equals(docType.getDocName())){
+ throw new CoolException("鍚堝苟鍗曟嵁涓寘鍚汉宸ヨˉ璐у崟锛屽崟鎹负: " + jsonobject.get("orderNo"));
+ }
+ }
+
+ }else {
+ Order order = orderService.selectByNo(orderNo);
+ DocType docType = docTypeService.selectById(order.getDocType());
+ if("浜哄伐琛ヨ揣鍗�".equals(docType.getDocName())){
+ AgvWaitPakin agvWaitPakin = new AgvWaitPakin();
+ BeanUtils.copyProperties(wrkDetl,agvWaitPakin);
+ agvWaitPakinService.insert(agvWaitPakin);
+ }
}
+
}
}
--
Gitblit v1.9.1