Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 37910285
由
zshaohui
编写于
2025-04-25 13:37:40 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.是最后一盘的优先出库
1 个父辈
5314df7b
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
53 行增加
和
2 行删除
src/main/java/com/neotel/smfcore/core/device/handler/impl/XLRBoxHandler.java
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
src/main/java/com/neotel/smfcore/custom/Jkem21481/controller/JkemController.java
src/main/java/com/neotel/smfcore/core/device/handler/impl/XLRBoxHandler.java
查看文件 @
3791028
...
@@ -276,6 +276,31 @@ public class XLRBoxHandler extends BaseDeviceHandler {
...
@@ -276,6 +276,31 @@ public class XLRBoxHandler extends BaseDeviceHandler {
}
}
//是治具的优先出
//是治具的优先出
DataLog
finalTask
=
null
;
for
(
DataLog
task
:
dataLogList
)
{
if
(
cid
.
equals
(
task
.
getCid
())
&&
task
.
isCheckOutTask
()
&&
task
.
isWait
())
{
String
posName
=
task
.
getPosName
();
if
(!
Strings
.
isNullOrEmpty
(
posName
))
{
//有库位号
Boolean
hasReel
=
task
.
getAppendData
(
"hasReel"
);
if
(
hasReel
==
null
)
{
hasReel
=
true
;
}
if
(!
hasReel
)
{
//单盘优先出库
if
(
finalTask
==
null
||
task
.
getCreateDate
().
before
(
finalTask
.
getCreateDate
()))
{
finalTask
=
task
;
}
}
}
}
}
if
(
finalTask
!=
null
)
{
log
.
info
(
"分配优先最后一盘物料的出库任务"
+
finalTask
.
getBarcode
()
+
"["
+
finalTask
.
getPosName
()
+
"]到 "
+
cid
);
return
finalTask
;
}
//是治具的优先出
DataLog
boxTask
=
null
;
DataLog
boxTask
=
null
;
for
(
DataLog
task
:
dataLogList
)
{
for
(
DataLog
task
:
dataLogList
)
{
if
(
cid
.
equals
(
task
.
getCid
())
&&
task
.
isCheckOutTask
()
&&
task
.
isWait
())
{
if
(
cid
.
equals
(
task
.
getCid
())
&&
task
.
isCheckOutTask
()
&&
task
.
isWait
())
{
...
@@ -313,7 +338,12 @@ public class XLRBoxHandler extends BaseDeviceHandler {
...
@@ -313,7 +338,12 @@ public class XLRBoxHandler extends BaseDeviceHandler {
if
(
isBox
==
null
)
{
if
(
isBox
==
null
)
{
isBox
=
false
;
isBox
=
false
;
}
}
if
(
StringUtils
.
isNotEmpty
(
export
)
&&
!
isBox
)
{
//判断是否去ng口的
Boolean
hasReel
=
dataLog
.
getAppendData
(
"hasReel"
);
if
(
hasReel
==
null
){
hasReel
=
true
;
}
if
(
StringUtils
.
isNotEmpty
(
export
)
&&
!
isBox
&&
hasReel
)
{
boxTaskListToExecute
.
add
(
dataLog
);
boxTaskListToExecute
.
add
(
dataLog
);
}
}
}
}
...
...
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
查看文件 @
3791028
...
@@ -1036,6 +1036,14 @@ public class LiteOrderCache {
...
@@ -1036,6 +1036,14 @@ public class LiteOrderCache {
+
"]是否为料盒["
+
barcode
.
isBox
()
+
"]是否为料盒["
+
barcode
.
isBox
()
);
);
//再用相同条件查一次工单出库,判断是否为最后一盘
boolean
hasReel
=
true
;
excludePosIds
.
add
(
pos
.
getId
());
StoragePos
finallyPos
=
storagePosManager
.
findPartNumberInStorages
(
availableStorageIds
,
partNumber
,
excludePosIds
,
checkoutType
);
if
(
finallyPos
==
null
)
{
hasReel
=
false
;
}
DataLog
task
=
newTask
(
pos
);
DataLog
task
=
newTask
(
pos
);
task
.
setSourceId
(
cacheOrder
.
getId
());
task
.
setSourceId
(
cacheOrder
.
getId
());
task
.
setSourceName
(
cacheOrder
.
getOrderNo
());
task
.
setSourceName
(
cacheOrder
.
getOrderNo
());
...
@@ -1052,6 +1060,7 @@ public class LiteOrderCache {
...
@@ -1052,6 +1060,7 @@ public class LiteOrderCache {
if
(
barcode
.
isBox
())
{
if
(
barcode
.
isBox
())
{
task
.
updateAppendData
(
"isBox"
,
true
);
task
.
updateAppendData
(
"isBox"
,
true
);
}
}
task
.
updateAppendData
(
"hasReel"
,
hasReel
);
//先更新出料口,再更新任务
//先更新出料口,再更新任务
if
(!
barcode
.
isBox
())
{
if
(!
barcode
.
isBox
())
{
log
.
info
(
barcode
.
getBarcode
()+
"为非料盒信息,需要更改出料口信息"
);
log
.
info
(
barcode
.
getBarcode
()+
"为非料盒信息,需要更改出料口信息"
);
...
...
src/main/java/com/neotel/smfcore/custom/Jkem21481/controller/JkemController.java
查看文件 @
3791028
...
@@ -411,6 +411,11 @@ public class JkemController {
...
@@ -411,6 +411,11 @@ public class JkemController {
//如果sourceName和subSourceId都不为空时,则返回目标位置
//如果sourceName和subSourceId都不为空时,则返回目标位置
String
sourceName
=
dataLog
.
getSourceName
();
String
sourceName
=
dataLog
.
getSourceName
();
String
sourceId
=
dataLog
.
getSourceId
();
String
sourceId
=
dataLog
.
getSourceId
();
//判断是否去ng口的
Boolean
hasReel
=
dataLog
.
getAppendData
(
"hasReel"
);
if
(
hasReel
==
null
){
hasReel
=
true
;
}
if
(
StringUtils
.
isNotBlank
(
sourceId
)
&&
StringUtils
.
isNotBlank
(
sourceName
))
{
if
(
StringUtils
.
isNotBlank
(
sourceId
)
&&
StringUtils
.
isNotBlank
(
sourceName
))
{
String
exportStr
=
dataLog
.
getExport
();
String
exportStr
=
dataLog
.
getExport
();
if
(
StringUtils
.
isNotBlank
(
exportStr
))
{
if
(
StringUtils
.
isNotBlank
(
exportStr
))
{
...
@@ -418,7 +423,11 @@ public class JkemController {
...
@@ -418,7 +423,11 @@ public class JkemController {
Boolean
isBox
=
dataLog
.
getAppendData
(
"isBox"
);
Boolean
isBox
=
dataLog
.
getAppendData
(
"isBox"
);
if
(
isBox
==
null
){
if
(
isBox
==
null
){
resultMap
.
put
(
"export"
,
exportStr
);
if
(
hasReel
)
{
resultMap
.
put
(
"export"
,
exportStr
);
}
else
{
resultMap
.
put
(
"export"
,
"ng"
);
}
}
else
{
}
else
{
resultMap
.
put
(
"export"
,
"ng"
);
resultMap
.
put
(
"export"
,
"ng"
);
}
}
...
@@ -437,6 +446,9 @@ public class JkemController {
...
@@ -437,6 +446,9 @@ public class JkemController {
}
else
{
}
else
{
resultMap
.
put
(
"type"
,
0
);
resultMap
.
put
(
"type"
,
0
);
}
}
if
(!
hasReel
){
resultMap
.
put
(
"type"
,
2
);
}
}
}
}
}
}
}
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论